Проблема подключения к порту 3306 для приложения mysql



Java-приложение, с которым я работаю, должно записывать свои результирующие данные в базу данных mysql, но всякий раз, когда я запускаю его, я получаю следующее исключение:



com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure


Со следующей причиной:



Caused by: java.net.ConnectException: Connection refused


Естественно, моим следующим шагом было тестирование порта, к которому mysql пытался подключиться (3306).



$ telnet localhost 3306 
Trying 127.0.0.1...
telnet: Unable to connect to remote host: Connection refused


Следующим моим шагом было проверить, слушает ли порт 3306 вообще.

$ netstat -an|grep 3306
tcp 0 0 69.164.214.18:3306 0.0.0.0:* LISTEN


Итак, подводя итог, порт слушает, но не принимает соединения?
Должен признаться, я я не очень много знаю об этом, но кто-нибудь знает, что здесь происходит?

888   2  

2 ответов:

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

Контрольный список:

  1. Правило брандмауэра: если ваш сервер запрещает / не разрешает порт 3306, не удается его подключить.
  2. Адрес привязки: если ваш адрес привязки 127.0.0.1 в конфигурации MySQL, вы должны изменить на 0.0.0.0 в [mysqld] на /etc / mysql / my.cnf
  3. перезапуск службы: вы должны выполнить команду "service mysql restart"

Удачи.

Comments

    Ничего не найдено.