Назад | Перейти на главную страницу

# 1130 - Хосту localhost не разрешено подключаться к этому серверу MySQL

Я дал команду DROP USER 'root'@'localhost'; GRANT ALL PRIVILEGES ON . TO 'root'@'%';в PhpMyAdmin сразу после выполнения меня вытеснили PhpMyAdmin, у меня возникла ошибка #1130 - Host 'localhost' is not allowed to connect to this MySQL server, как решить мою проблему?

Откройте терминал.

$ mysql -u root --host=127.0.0.1 -p<yourpassword>
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 521
Server version: 5.1.38yes-debug yes

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> CREATE USER 'root'@'localhost' IDENTIFIED BY "<yourpassword>";
Query OK, 0 rows affected (0.22 sec)

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost;
Query OK, 0 rows affected (0.08 sec)

Это должно решить вашу проблему;).

mysql по-разному обрабатывает% и localhost. Вам необходимо предоставить все привилегии 'root'@'localhost' также.

На вашем сервере запустите mysql из командной строки:

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

Затем запустите эту команду в оболочке mysql:

>use mysql
>GRANT ALL ON *.* to root@'%' IDENTIFIED BY 'pass';
>FLUSH PRIVILEGES;

Приятно провести время.

Объедините ответ dlo с ответом Даррена Чемберлена. Причина этого в том, что особое значение «localhost» в MySQL заключается в том, что оно означает использование локального сокета unix (mysql.sock) вместо сокета TCP. Вот почему указание 127.0.0.1 в качестве хоста поможет вам исправить ситуацию; это означает для клиента MySQL использовать сокет TCP.