Доступ запрещен для пользователя 'xxx'@'xxx.xxx.xxx.xxx'

Я знаю, что есть похожие вопросы, но я не нашел именно то, что я ищу. Вот что происходит, и это немного странно:

[root@xxx xxx]# mysql -u profuser -ppwd -h 192.168.1.99
ERROR 1045 (28000): Access denied for user 'profuser'@'192.168.1.99' (using password: YES)

А также 192.168.1.99 это мой собственный IP. Но когда я использую localhost или же 127.0.0.1, все нормально:

[root@xxx xxx]# mysql -u profuser -ppwd -h 127.0.0.1
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 68
Server version: 5.0.45 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> bye
[root@xxx xxx]# mysql -u profuser -ppwd -h localhost
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 69
Server version: 5.0.45 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>

Я нашел этот вопрос, но это не помогло:

mysql> select host from user where user='profuser';
+--------------+
| host         |
+--------------+
| 127.0.0.1    | 
| 192.168.1.99 | 
| localhost    | 
+--------------+

Я добавил свой IP, как советовали в другом вопросе.

2 ответа

Решение

Совпадает ли хэш пароля для нового пользователя / хоста? Измените ваше выбранное заявление: select host, password from user where user='profuser';

В любом случае, чего ты пытаешься достичь? Вы добавляете -h 192.168.1.99 флаг; это не нужно при локальном подключении (как вы обнаружили). Если вы хотите подключиться по сети, вам понадобится 'root'@'192.168.1.%' или же 'root'@'%'что-то разрешить удаленным хостам; если вы просто делаете локальные подключения, то вам не нужно -h,

При добавлении хоста вручную, используя запрос типа INSERT INTO mysql.user ..., вы должны оформить FLUSH PRIVILEGES Команда применить изменения.

Другие вопросы по тегам