DNS резолвинг MySQL

DV
На сайте с 01.05.2010
Offline
644
1114

skip-name-resolve.

Читаем: http://dev.mysql.com/doc/refman/5.1/en/host-cache.html

The MySQL server maintains a host cache in memory that contains information about clients: IP address, host name, and error information. The server uses this cache for nonlocal TCP connections. It does not use the cache for TCP connections established using the loopback interface address (127.0.0.1), or for connections established using a Unix socket file, named pipe, or shared memory.

Т.е. локальные адреса идут лесом. По логике вещей, 127.0.0.1 и localhost узнаются по дефолту, "дубовой логикой".

To disable DNS host name lookups, start the server with the --skip-name-resolve option. In this case, the server uses only IP addresses and not host names to match connecting hosts to rows in the MySQL grant tables. Only accounts specified in those tables using IP addresses can be used.

Т.е. прописываем IP в полномочиях, и всё.

Ставим эксперимент. Сервер MariaDB.

Включаем skip-name-resolve.

Все юзеры имеют в полномочиях localhost.

Теперь, если мы обращаемся от имени клиента на localhost, соединение принимается.

Если же обратиться на 127.0.0.1, нихрена.

Где "дубовая логика"? Почему он не слушает 127.0.0.1, а требует имя хоста?

VDS хостинг ( http://clck.ru/0u97l ) Нет нерешаемых задач ( https://searchengines.guru/ru/forum/806725 ) | Перенос сайтов на Drupal 7 с любых CMS. ( https://searchengines.guru/ru/forum/531842/page6#comment_10504844 )
N
На сайте с 06.05.2007
Offline
419
#1

DenisVS, когда вы обращаетесь на 'localhost' соединение идет через unix-сокет и для системы проверки прав в mysql имя клиента тоже будет localhost.

А при указании 127.0.0.1, используется TCP , имя клиента будет '127.0.0.1' и поведение получается в соответствии с написанным.

Кнопка вызова админа ()
DV
На сайте с 01.05.2010
Offline
644
#2

netwind, понятно, а как объяснить, что 127.0.0.1=localhost?

hosts, я так понял, оно не читает.

N
На сайте с 06.05.2007
Offline
419
#3

DenisVS, убрать skip-name-resolve, очевидно.

либо создать две записи доступа

либо подключаться каким-то одним способом

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий