Несколько имен хостов и несколько привилегий? - PullRequest
1 голос
/ 22 августа 2010

Я хочу отобразить 127.0.0.1 на несколько имен вместо стандартного способа в качестве localhost. поэтому мой файл / etc / hosts в Ubuntu будет содержать следующие записи:

127.0.0.1 localhost
127.0.0.1 localhost:extra1
127.0.0.1 localhost:extra2

Теперь в MySQL я хочу иметь пользователя с именем karthick, и у него должны быть другие привилегии.

select user,host from users;

Вышеприведенное утверждение показывает

 karthick localhost:extra1;
 karthick localhost:extra2;

Мой вопрос:

Я не могу войти, используя

mysql -u karthick -h localhost:extra1 -p

В чем проблема?

Мотивация вопроса

Я хочу войти как показано ниже

логин 1:

mysql -u karthick -h localhost:extra1 -p

логин 2:

mysql -u karthick -h localhost:extra2 -p

Я хочу, чтобы логин 1 и логин 2 имели разные наборы привилегий ... Надеюсь, что это возможно

1 Ответ

0 голосов
/ 22 августа 2010

В тот момент, когда mysql получает соединение, все, что ему нужно для идентификации удаленной системы, это IP-адрес . Затем он должен выполнить «обратный просмотр DNS», чтобы преобразовать IP-адрес запрашивающей системы в имя хоста, чтобы он мог найти имя хоста в таблице авторизации. Хотя вы можете сопоставить несколько имен хостов с одним IP-адресом, как и вы, MySQL не сможет узнать, какое имя хоста было указано изначально. В этот момент все, что у него есть, это 127.0.0.1, и DNS-распознаватель вернет имя «localhost». Даже если это изменить, вы можете дать ему только одно имя, чтобы ваша схема не работала.

Однако вы можете назначить сетевому адаптеру несколько РАЗНЫХ IP-адресов. Я не знаю деталей настройки этого в Ubuntu, но это должно быть относительно легко. Затем вы можете настроить несколько имен хостов, каждый из которых имеет собственный IP-адрес, который подключается к вашей системе. В настройках mysql укажите IP-адреса вместо имен хостов в командах GRANT, чтобы не связываться с rDNS.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...