У меня есть удаленная база данных MySQL, к которой я пытаюсь подключиться через мой веб-сервер.
Ошибка при попытке подключиться через mysqli
:
Connection refused 2002
Я вызвал эту команду для удаленных подключений:
grant all on db.* to '<user>'@'<hostname>' identified by '<password>';
Я надеюсь, что смогу найти более подробное описание с моего сервера MySQL в каком-нибудь файле журнала. Вопрос какой будет уместен?
Другие вопросы предполагают /var/log/mysql/error.log
, но у меня вообще нет вывода в этом файле. У меня сейчас нет брандмауэра. Возможно, мой apache config
мешает, но я не уверен, как это проверить, и я предполагаю, что если бы это было так, я бы не получил 2002 error
, а вместо этого какое-то другое сообщение об ошибке apache-flavored .
Кажется, нет ресурса, предлагающего общий рабочий процесс для отладки подобной проблемы, в том числе и для apache.
Какие журналы отладки мне нужно посмотреть?
Edit:
Вот мой apache conf:
<Directory />
Options FollowSymLinks
AllowOverride All
Require all denied
</Directory>
<Directory /usr/share>
AllowOverride All
Require all granted
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Вот код php и mysql:
//define DB variables
define("DB_HOST", "45.77.xx.xxx");
define("DB_NAME", "login");
define("DB_USER", "root");
define("DB_PASS", "Correct_Password");
$this->db_connection = new mysqli(DB_HOST, DB_USER, DB_PASS, DB_NAME);
echo mysqli_connect_error() . PHP_EOL;
echo $this->db_connection->connect_errno;
Выход:
$this->db_connection->connect_errno
установлен на 2002
и
mysqli_connect_error()
установлено на Connection refused