Я пытаюсь подключиться к предложенному выгруженному серверу SQL Вот. Он говорит, что я должен подключиться, используя внутренний IP 172.16.0.51
.
Я установил nginx и PHP (php5-fpm, php5-mysql) на свой VPS. phpinfo () тоже работает. Однако когда я пытаюсь подключиться к серверу, я получаю следующую ошибку. Я попытался подключиться к серверу, используя его внешний IP-адрес, но все равно получаю ту же ошибку.
SQLSTATE[28000] [1045] Access denied for user 'myuser'@'AAA.BBB.CCC.DDD' (using password: YES)
AAA.BBB.CCC.DDD
это IP моего VPS, а не сервера. Это странно, потому что я не указывал этот IP при подключении к серверу.
Вот код PHP, который я использую.
try {
$dsn = 'mysql:host=172.16.0.51;dbname=myuser_mydatabase;charset=utf8';
$db = new PDO($dsn,'myuser','mypassword');
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
} catch (PDOException $e) {
echo 'PDO error: ' . $e->getMessage();
exit;
}
Что я здесь делаю не так?
РЕДАКТИРОВАТЬ: FYI, пользователь myuser
- это пользователь по умолчанию, которого мне дали, когда я подписался на выгруженный SQL. Я проверил, все ли гранты выданы всем базам данных. Я также создал новую базу данных и пользователя через cPanel и предоставил соответствующий доступ. Я все еще не могу заставить это работать. Я получаю ту же ошибку.
EDIT2: я добавил IP-адрес своего vps в список разрешенных хостов из cPanel, но это тоже не решило проблему.
EDIT3: пожалуйста, посмотрите мой ответ.
Ну, это неудобно. Я просто не ждал достаточно долго после добавления IP моего VPN в список разрешенных хостов. Я оставлю это здесь на всякий случай, если кому-нибудь эта информация пригодится.