Java - проблема с подключением к онлайн-базе данных MySQL с использованием JDBC - PullRequest
6 голосов
/ 27 августа 2011

Я пытаюсь установить соединение в моем приложении Java с JDBC для доступа к моей онлайн-базе данных, чтобы я мог вставлять и запрашивать таблицы. Вот что я сейчас пытаюсь: (реальный IP / пользователь / пароль отредактирован, но они правы, так как я сделал подобное из скрипта PHP)

String url = "jdbc:mysql://984.168.199.70/my_db_name"; 
    String user = "my_username"; 
    String pass = "my_password";

Class.forName ("com.mysql.jdbc.Driver").newInstance ();
    Connection conn = (Connection) DriverManager.getConnection(url, user, pass);
    stmt = (Statement) conn.createStatement();

Но это не работает, я получаю сообщение об ошибке:

Exception in thread "main" 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.

И журнал ошибок довольно долго после этого.

Так что просто отметим: я подключился к этому серверу перед использованием сценария PHP, и я использовал JDBC для подключения и взаимодействия с моими базами данных MySQL на локальном хосте.

Спасибо за любую помощь.

Ответы [ 2 ]

2 голосов
/ 27 августа 2011

У меня тоже была эта проблема, и она всегда (в моем случае) была связана с неверным URL-адресом jdbc, например, отсутствующим / неправильным номером порта (я знаю, что ваш пример кода был отредактирован, но он не указывает порт)или неверный IP-адрес, провал, который проверяет, что MySQL работает и принимает соединения на порту и IP, который вы ожидаете.Проверьте bind-адрес в вашем my.cnf по ip-адресу в вашем jdbc url

1 голос
/ 27 августа 2011

Отвечая на мой вопрос здесь, потому что код, который я имел, был в порядке.Проблема была с моими настройками Godaddy.

Обычно, когда вы создаете базу данных MySQL с этими парнями, убедитесь, что для параметра «Разрешить прямой доступ к базе данных» установлено значение YES.Очевидно моя другая база данных не была.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...