Как подключиться к MySql на другом компьютере с Ubuntu?

Привет Как я могу подключиться к MySql с другой машины Ubuntu. Я пробовал это

mysql -h 'IP' -P 3306 -u test -ptest

Я получаю ОШИБКУ 2003 (HY000): Невозможно подключиться к серверу MySQL по "IP" (111). тогда я попробовал

 nmap -sS -O -p 3306 'IP'   and it says 3306/tcp closed mysql 

Но в машине MySql, когда я пытаюсь это с localhost, это работает

 nmap -sS -O -p 3306 localhost it says 3306/tcp open mysql 

Что мне здесь не хватает

2 ответа

Решение

Два способа проверить это:

[1] в /etc/mysql/my.cnf, если база данных настроена на прослушивание только на localhost (127.0.0.1). Ищите линию

bind-address        = 127.0.0.1

и прокомментируйте эту строку, затем перезапустите базу данных. Я думаю, что это ваша проблема, так как это по умолчанию в Ubuntu.

[2] Запустите "netstat -an | grep 3306" - он должен выдавать это, когда открыт для внешних подключений:

tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN 

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

mysql> создать пользователя 'user'@'ip_from_you_want_to_connect', идентифицированного как 'password'.

Хитрость в том, что в синтаксисе создания пользователя вы ставите после @

create user 'user' @ 'localhost' дает разрешение этому пользователю только при подключении с локального компьютера.

Если вы хотите подключиться с другого компьютера, замените localhost на IP-адрес или имя (FQDN) этого компьютера.

Вы можете узнать больше о создании пользователей здесь

Кроме того, проверьте подсказку, данную Хенком.

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