Подтвердить что ты не робот

Не удается подключиться к удаленному серверу MySQL с ошибкой 61

Когда я попытался подключить удаленный сервер MySQL с помощью командной строки mysql -h <remote-ip> -u any_existing_users -p или любого другого клиента mysql, такого как phpmyadmin, это не сработало, и подсказка об ошибке была

ERROR 2003 (HY000) Can't connect to MySQL server on '<remote-ip>' (61)

Но, когда я попытался ssh <remote-ip> и локально подключил MySQL к mysql -u root -p, проблем нет.

Вот часть таблицы пользователя (SELECT User, Host FROM mysql.user;):

+------------------+----------------+
| User             | Host           |
+------------------+----------------+
| root             | %              |
| other_users      | <remote-ip>    |
| root             | localhost      |
+------------------+----------------+

Вот iptable:

Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination         
1    RH-Firewall-1-INPUT  all  --  0.0.0.0/0            0.0.0.0/0           

Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination         
1    RH-Firewall-1-INPUT  all  --  0.0.0.0/0            0.0.0.0/0           

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination         

Chain RH-Firewall-1-INPUT (2 references)
num  target     prot opt source               destination         
1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           
2    ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0           icmp type 255 
3    ACCEPT     esp  --  0.0.0.0/0            0.0.0.0/0           
4    ACCEPT     ah   --  0.0.0.0/0            0.0.0.0/0           
5    ACCEPT     udp  --  0.0.0.0/0            224.0.0.251         udp dpt:5353 
6    ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:631 
7    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:631 
8    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 
9    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22 
10   REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited 
11   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:3306 

Итак, в чем проблема?

4b9b3361

Ответ 1

Проверьте, что ваш сервер mysql прослушивает сокет с netstat:

netstat -tulpen

и найдите 3306.

Если нет или если только на localhost, проверьте my.cnf и найдите строку bind-address и измените ее на:

bind-address = 0.0.0.0

затем перезагрузите сервер и повторите попытку.

Ответ 2

Проверить статус:

netstat -tulpen

Измените конфигурацию:

nano /etc/mysql/my.cnf
# Edit:
bind-address = 0.0.0.0

Введите mysql и предоставите привилегии:

mysql -umyuser -pmypassword
# Run:
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit

Перезапустить mysql

/etc/init.d/mysql restart

Ответ 3

Если вы запустите MAMP, не забудьте разрешить доступ (панель mySQL, установите флажок "Разрешить доступ к сети MySQL" )

Ответ 4

С MySql 5.7 они изменили файлы, поэтому bind-address теперь находится:

/etc/mysql/mysql.conf.d/mysqld.cnf

вместо:

/etc/mysql/my.cnf

Ответ 5

У меня была эта проблема сразу после установки Centos 7 на сервере. Я не мог получить доступ к нему через Mysql Workbench на удаленном компьютере.

Проблема была в конфигурации брандмауэра. В конце концов, решение пришло:

sudo firewall-cmd --zone=public --permanent --add-service=mysql

И затем перезапустите брандмауэр:

sudo systemctl restart firewalld

Ответ 6

Это может быть проблема, связанная с брандмауэром или попробовать следующее:

Перейти к серверу Admin → MySQL → Настройки → проверить: разрешить сетевые подключения

Затем перезапустите MySQL

Ответ 7

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

http://dev.mysql.com/doc/refman/5.1/en/access-denied.html

Возможно ли, что на вашем сервере была неудачная конфигурация, или другая программа использует один и тот же порт? Или привязка сервера к "127.0.0.1"? Попробуйте изменить файл my.cnf.