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

Не удается подключиться к виртуальному серверу mySQL, работающему в Fedora 25

Пытаюсь подключиться к моему виртуальному серверу MySQL (VirtualBox Fedora 25) на рабочей среде mySQL.

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

В сети есть масса информации об этом, но все, что я читаю, мне не подходит.

Во время установки mySQL я разрешил удаленные подключения к пользователю root.

Итак, я предоставил пользователю root все права, используя:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'my_password';

Я покраснела PRIVILEGES после также

Я добавил строчку в свой

# vi /etc/my.cnf

bind-address=0.0.0.0

Я также открыл порт

shell> iptables -A INPUT -m conntrack --ctstate NEW -m tcp -p tcp --dport 3306 -j ACCEPT
shell> iptables-save

Я набираю inet ip-адрес, который вижу в ifconfig, в рабочую среду mysql.

Я что-то не так делаю? или я пропустил шаг?

Я получаю сообщение об ошибке «не могу подключиться к базе данных mysql (10060) после долгой паузы.

IP-адрес на виртуальном сервере такой же, как и тот, который указан как «неизвестный» на странице администратора маршрутизатора подключенных устройств.

Эти команды работали!

firewall-cmd --permanent --add-service=mysql
firewall-cmd --reload

«Невозможно подключиться к базе данных mysql (10060)» означает, что это не проблема аутентификации.

Пытаться nc -v mysqlserver_ip_address 3306. Он должен сказать «Ncat: Connected to ...». Если это так, это означает, что у вас есть TCP-соединение, поэтому проблема в mysql или в рабочей среде. Если он говорит что-то еще, сетевое оборудование сломано или сервер не прослушивает этот порт.

Я подозреваю, что у вас есть брандмауэр, отбрасывающий ваши пакеты. Длинная пауза обычно указывает на отброшенные пакеты, а не на отклоненное соединение. Если вы подключаетесь к не защищенному брандмауэром, но не открытому порту, сервер довольно быстро отправит вам отказ. В подавляющем большинстве случаев, если время соединения прерывается, это происходит потому, что что-то сбрасывает пакеты на пол, а не вежливо их отклоняет (вежливость - это довольно глупо, когда имеешь дело с людьми, сканирующими порты вашего компьютера). Это то, что часто делают брандмауэры. Так что, скорее всего, дело в брандмауэре.

Вы говорите, что сбежали iptables -A ...., это поместит вашу новую строку в конец правил, что означает, что она, вероятно, не будет использоваться, потому что, вероятно, существует правило -j DROP по умолчанию, которое было в конце до того, как вы добавили это правило. Кроме того, iptables-save должен просто распечатать конфигурацию на стандартный вывод, а не сохранять конфигурацию брандмауэра в нужном месте.

Пытаться iptables -L чтобы убедиться, что заказ неправильный. Если это так, вы можете поиграть с -I. Однако более простой способ сделать это - сделать iptables-save > some_temp_file, затем отредактируйте some_temp_file, а затем запустите iptables-restore < some_temp_file.

Если брандмауэр работает так, как вы хотите, сделайте iptables-save > /etc/wherever_it_goes. На fedora / redhat / centos это будет iptables save > /etc/sysconfig/iptables.