Назад | Перейти на главную страницу

У меня проблемы с подключением к экземпляру Amazon RDS с сервера EC2, я могу подключиться ВЕЗДЕ еще

Я знаю, что на сайте есть и другие подобные вопросы, но мне не удалось найти решения.

У меня настроен экземпляр RDS. Мы запускаем наш сайт на экземпляре EC2.

Я знаю MySQL работает на экземпляре EC2, потому что наш текущий MySQL база данных работает на другом сервере, отличном от RDS, и все работает нормально.

Я могу подключиться к экземпляру RDS через MySQL workbench (я одобрил свой публичный IP-адрес для подключения).

Я могу подключиться к экземпляру RDS через phpMyAdmin, который установлен на сервере EC2.

Однако я не могу подключиться к экземпляру RDS с помощью PHP / MySQLi.

DEFINE ('DB_USER', '**user**');
DEFINE ('DB_PASSWORD', '**pass**');
DEFINE ('DB_HOST', '*************.rds.amazonaws.com');



if($dbc = @mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD)){

    //DB connected, do nothing

}

else {

    echo 'Connection error';
    echo mysqli_error();
    exit();

}

Я не получаю никаких сообщений об ошибках, ничего. Он просто повторяет "Ошибка подключения".

У меня есть экземпляр EC2 и RDS, совместно использующие группу безопасности (хотя я могу редактировать только правила для входящих, а не исходящих, это странно?), И разрешен общедоступный эластичный IP-адрес EC2 в настройках безопасности RDS.

Я потерялся!

Попробуйте следующее:

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($link);
?>

Заменить localhost, mysql_user и mysql_password с вашими учетными данными.

ИЛИ

//conection:
mysqli_connect("myhost","myuser","mypassw","mybd") or die("Error " . mysqli_error($link));