¿Cómo saltar-nombre-resolver en Mysql8 y usar IP en su lugar?

¿Cómo saltar-nombre-resolver en Mysql8 y usar IP en su lugar?

Estoy intentando desactivar la resolución de nombres DNS ya que tengo muchos otros servidores conectados a la base de datos central. La resolución de DNS es lenta y aparentemente se puede desactivar de esta manera:

[mysqld]
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
datadir         = /var/lib/mysql
log-error       = /var/log/mysql/error.log
port=3412
max_connections=500
skip-name-resolve

Sin embargo, todavía puedo conectarme a través de localhost, lo cual no tiene sentido para mí.

mysql -h localhost -u root -p -P 3412

He investigado un pocoaquí:

Si elige utilizar skip-name-resolve, asegúrese de que sus privilegios de conexión MYSQL estén configurados para permitir IP y no hosts.

En la mayoría de los sistemas, para el servidor MySQL local necesitarás usar host=127.0.0.1 para ipv4 y host=::1 para redes ipv6, en lugar del clásico “host=localhost”.

¿Por qué todavía puedo conectarme a través de localhost si la resolución de DNS está deshabilitada?

Respuesta1

MySQL trata la conexión de localhostforma especial. En este caso, se conecta a través de un socket de dominio UNIX, no a través de TCP, y la cadena localhostaún se usa para la autenticación del usuario.

información relacionada