Первое, что вы должны попробовать - это просто подключиться к удаленному серверу MySQL из командной строки.
$ mysql -u your_user -h remote.host.name -p
В зависимости от выходных данных определите, что вам нужно делать дальше.
Ошибка 1
ERROR 2003 (HY000): Can't connect to MySQL server on 'remote.host.name' (113)
Это означает, что порт даже не открыт для подключения к нему внешней машины, поэтому вы будетенеобходимо добавить любой порт, на котором работает MySQL, к вашему брандмауэру для приема входящих соединений.
Ошибка 2
ERROR 1045 (28000): Access denied for user 'your_user'@'your.host.name' (using password: YES)
Предполагая, что ваш логинучетные данные верны, это означает, что вам нужно предоставить разрешения изнутри MySQL.Подключаясь локально с удаленного сервера, предоставьте права доступа следующим образом:
GRANT ALL ON your_database.* TO your_user@'your.host.name' IDENTIFIED BY 'your_password';
Очевидно, замените все соответствующие вещи на то, что они должны быть.
Когда вы можете подключитьсяс помощью командной строки подключиться с помощью PHP так же просто, как использовать имя хоста, имя пользователя и пароль, которые вы использовали в команде mysql
выше.