У вас проблемы с удаленным доступом к MySql. С здесь
Сначала войдите через ssh на удаленный сервер базы данных MySQL
- Шаг № 2: Включить работу в сети
После подключения вам нужно отредактировать файл конфигурации mysql my.cfg с помощью текстового редактора, например vi.
В Debian Linux файл находится по адресу /etc/mysql/my.cnf
# vi /etc/my.cnf
- Шаг № 3: После открытия файла найдите строку, которая читается как [mysqld]
Убедитесь, что пропущена строка с комментариями (или удалите строку), и добавьте следующую строку
bind-address=YOUR-SERVER-IP
Например, если IP-адрес вашего сервера MySQL 172.20.5.2, то весь блок должен выглядеть следующим образом:
[mysqld]
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
language = /usr/share/mysql/English
bind-address = 172.20.5.2
# skip-networking
....
..
....
Где
- bind-address: IP-адрес для привязки.
- пропуск сети: вообще не слушайте соединения TCP / IP. Все взаимодействие с mysqld должно осуществляться через сокеты Unix. Этот параметр настоятельно рекомендуется для систем, где разрешены только локальные запросы. Поскольку вам необходимо разрешить удаленное подключение, эту строку следует удалить из файла или перевести в состояние комментария.
- Шаг № 4 Сохраните и закройте файл.
Перезапустите службу MySQL, чтобы изменения вступили в силу
# /etc/init.d/mysql restart
Предоставить доступ к новой базе данных
Если вы хотите добавить новую базу данных с именем foo для панели пользователя и удаленного IP-адреса 162.54.10.20, вам необходимо ввести следующие команды в mysql> prompt:
mysql> CREATE DATABASE foo;
mysql> GRANT ALL ON foo.* TO bar@'162.54.10.20' IDENTIFIED BY 'PASSWORD';
Предоставить доступ к существующей базе данных
Предположим, что вы всегда устанавливаете соединение с удаленного IP-адреса 162.54.10.20 для базы данных с именем webdb для пользователя webadmin, тогда вам необходимо предоставить доступ к этому IP-адресу. В приглашении mysql> введите следующую команду для существующей базы данных:
mysql> update db set Host='162.54.10.20' where Db='webdb';
mysql> update user set Host='162.54.10.20' where user='webadmin';
Введите команду выхода для выхода из системы mysql
mysql> exit
Команда типа удаленной системы
$ mysql -u webadmin –h 172.20.5.2 –p
Вы также можете использовать telnet для подключения к порту 3306 в целях тестирования.
$ telnet 172.20.5.2 3306