Логотип   Простое и понятное управление
  Уникальные возможности по настройке
  Open Server скачали уже 1 020 339 раз!

Форум

Добро пожаловать, Гость!

[Java & MySQL] Communication link failure

Обсуждение проблем в работе программного комплекса
.dtramp
Сообщения: 4
C нами: 2 года 11 мес

Непрочитанное сообщение .dtramp » 20 дек 2013, 21:08

Доброго времени суток Вам Максим, и всем участникам данного форума, к сожалению столкнулся с проблемой связанной о взаимодействии Java и MySQL, дело в том что я имею свои собственные игровые ресурсы, которые базируется на платформе Java, и не посредственно все данные хрянятся в MySQL, так вот возникает ошибки вида:

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
 
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.


Проверил все конфиги, на подключение к БД, порты и т.п., пробывал запустить сервер с другой WAMP системой, заработал, но я заинетесован именно в вашем инструменте Максим, так как он имеет огромный функционал и возможности.

Так вот прошу помощи в решении моей проблемы.
С уважением, .dtramp!

Добавлено спустя 49 минут 2 секунды:
Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communicatio
ns link failure

The last packet successfully received from the server was 1а876а706 milliseconds
 ago.  The last packet sent successfully to the server was 0 milliseconds ago.
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

        at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)

        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Sou
rce)
        at java.lang.reflect.Constructor.newInstance(Unknown Source)
        at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
        at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1
117)
        at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:3603)
        at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:3492)
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4043)
        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2503)
        at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2664)
        at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2788)
        at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2738)
        at com.mysql.jdbc.StatementImpl.executeQuery(StatementImpl.java:1617)
        at com.mysql.jdbc.ConnectionImpl.isReadOnly(ConnectionImpl.java:3894)
        ... 14 more


Это был последний старт сервера.

Аватара пользователя
Максим
Сообщения: 4875
C нами: 5 лет 11 мес
Контакты:

Непрочитанное сообщение Максим » 20 дек 2013, 22:32

Погуглил - где-то в вашем софте должны быть настройки подключения к MySQL серверу (базе данных). Что-то типо такого:

String username = "user";
String password = "pass";
String url = "jdbc:mysql://www.domain.com:3306/dbName";

Убедитесь что логин и пароль там указаны правильные (те что вы создали сами, либо дефолтные mysql mysql). Так же убедитесь что правильно задано имя базы данных (здесь оно как dbName) и самое главное что домен (тут он указан как http://www.domain.com), к которому вы подключаетесь, существует в Open Server, т.е. что он есть в трей-меню.

Очень часто пользователи удаляют домен localhost после начала работы с Open Server, а в своих скриптах этот домен не меняют, отчего подключение к MySQL и не работает. Ну и само собой модуль MySQL должен быть выбран в настройках, а сам сервер должен быть запущен.

.dtramp
Сообщения: 4
C нами: 2 года 11 мес

Непрочитанное сообщение .dtramp » 21 дек 2013, 13:15

Driver = com.mysql.jdbc.Driver
URL = jdbc:mysql://localhost:3306/gs_db
Login = ******
Password = ********

Такой конфиг, спасибо за инормацию по счет localhosta, проверим. :D

.dtramp
Сообщения: 4
C нами: 2 года 11 мес

Непрочитанное сообщение .dtramp » 26 дек 2013, 21:16

Проблема актуальна, ибо все равно не цепляет сервер mysql.

Аватара пользователя
Redee
Сообщения: 218
C нами: 3 года 5 мес

Непрочитанное сообщение Redee » 26 дек 2013, 23:12

Может будет необходимо драйвера обновить, собственно вот для явы.
5.1.28 >
https://drive.google.com/file/d/0B9BpgDhs3lBySnhlUDRNSTJoSXc/edit?usp=sharing
5.1.26 >
https://drive.google.com/file/d/0B9BpgDhs3lByUXJua1BWdl9ia00/edit?usp=sharing

Если есть аккаунт на http://dev.mysql.com/downloads/
то можно качать актуальную версию отсюда http://dev.mysql.com/downloads/connector/j/

Только там целым комплектом устанавливается, если что забираем нужный файл из програм файлс\MySQL\MySQL Connector J

Проверяем в консоли >
netstat -a

Я запустил HeidiSQL + PHPStorm (во время синхронизации, он использует драйвер mysql - ява коннектор)

Изображение


Изображение


Изображение


В принципе для чистоты эксперимента нельзя чтобы порт был использован -ESTABLISHED.
Только чтобы слушался он LISTENING - это когда мы загрузили OpServ и ничто еще не подключено к коннекту MySQL на 3306 порте (то есть нету эстаблишедов).
Последний раз редактировалось Redee 26 дек 2013, 23:16, всего редактировалось 1 раз.

Аватара пользователя
Максим
Сообщения: 4875
C нами: 5 лет 11 мес
Контакты:

Непрочитанное сообщение Максим » 26 дек 2013, 23:14

.dtramp писал(а):Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communicatio
ns link failure


Проблема у вас есть, но только она к Open Server отношения не имеет. Используйте Google и ищите информацию по этой проблеме. Вот например тут говорится что вы могли забыть подключить драйвер:
Class.forName("com.mysql.jdbc.Driver").newInstance();

Аватара пользователя
Redee
Сообщения: 218
C нами: 3 года 5 мес

Непрочитанное сообщение Redee » 26 дек 2013, 23:17

Вот тоже думаю что драйвер не отрабатывает как надо.

Посмотрите еще на свою версию явы, качаем отсюда вдруг чего >
http://java.com/ru/download/manual.jsp
Полный оффлайн установщик Version 7 Update 45 >
http://javadl.sun.com/webapps/download/AutoDL?BundleId=81819

У меня версия 7.40

.dtramp
Сообщения: 4
C нами: 2 года 11 мес

Непрочитанное сообщение .dtramp » 26 дек 2013, 23:50

Проблема возникла при переезде на OpenServer, это не говорит о том, что Ваш wamp сервер плох, капаю и дальше в поисках решения проблемы.

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

Аватара пользователя
Redee
Сообщения: 218
C нами: 3 года 5 мес

Непрочитанное сообщение Redee » 27 дек 2013, 17:35

Сверте конфиги MySQL что на денвере и что на OpServe-e.
Может какой то директивы для игров. сервера не хватает / отключена / не то значение.
з.ы. Включить профилирование, если на игровом сервере это возможно и проследить по каким методам прошлось. Сверить с профайлом через опенсервер.
Можно через точку остановки обычным дебагом через PhpStorm.
з.ы.ы. Чисто мысли в слух, не знаю что еще придумать.


Вернуться в «Ошибки Open Server»

Кто сейчас на конференции

Сейчас этот форум просматривают: Bing [Bot] и 1 гость