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

ошибка подключения mariadb php (110)

У меня есть служба mariaDB, работающая на удаленном сервере A. У меня есть второй удаленный сервер B, на котором запущен httpd. Межсетевой экран NAT обоих серверов A и B разрешает весь трафик для порта 3306 и ICMP. Сервер B также поддерживает порт 80. На сервере mariaDB A есть пользователь 'foouser'@'[IPofServerB]' предоставлена ​​привилегия выбора; Привилегии сброшены. Кроме того, я также предоставил 'foouser'@'%' такие же разрешения.

Сервер A my.conf имеет адрес привязки, равный 0.0.0.0, и прокомментировал пропуск сети (я также пробовал прямо комментировать адрес привязки), firewalld включает правило, разрешающее TCP на порт 3306, я использовал setsebool -P httpd_can_network_connect_db 1 чтобы разрешить соединения с apache в SELinux, а iptables показывает прослушивание порта 3306. Firewalld сервера B также включает правило, разрешающее TCP на порт 3306.

Я могу пинговать A и B со своего домашнего компьютера, A с B и B с A. Я жестяная банка подключиться к серверу mariaDB A с моего домашнего компьютера, на котором запущен apache из XAMP, с foouser'@'IPofHomeComputer предоставлен точно такой же доступ. я не может подключиться к серверу mariaDB A от B. Я получаю Connection failed: Can't connect to MySQL server on '[IPofServerA]' (110).

В обоих случаях у меня есть один и тот же PHP-код, пытающийся установить соединение:

<?php
$servername = "[IPofServerA]";
$username = "foouser";
$password = "[foouserPasswd]";
$dbname = "[databaseInQuestion]";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
  die("Connection failed: " . $conn->connect_error);
}
?>