Я установил сервер MySQL на удаленную машину Ubuntu. Пользователь root
определяется в таблице mysql.user
следующим образом:
mysql> SELECT host, user, password FROM user WHERE user = 'root';
+------------------+------+-------------------------------------------+
| host | user | password |
+------------------+------+-------------------------------------------+
| localhost | root | *xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
| ip-10-48-110-188 | root | *xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
| 127.0.0.1 | root | *xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
| ::1 | root | *xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
+------------------+------+-------------------------------------------+
Я могу получить доступ с помощью пользователя root
к тому же интерфейсу командной строки удаленного компьютера, используя стандартный клиент mysql
. Теперь я хочу разрешить доступ root с каждого хоста в Интернете, поэтому я попытался добавить следующую строку (это точный дубликат первой строки из предыдущего дампа, за исключением столбца host
):
mysql> SELECT host, user, password FROM user WHERE host = '%';
+------------------+------+-------------------------------------------+
| host | user | password |
+------------------+------+-------------------------------------------+
| % | root | *xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
+------------------+------+-------------------------------------------+
Но мой клиент на моем персональном компьютере продолжает рассказывать мне (я закрыл IP-адрес сервера):
Ошибка SQL (2003): невозможно подключиться к серверу MySQL на '46.x.x.x '(10061)
Я не могу сказать, является ли это ошибкой аутентификации или сетевой ошибкой. На брандмауэре сервера я включил порт 3306/TCP для 0.0.0.0/0, и это нормально для меня...