LINUX.ORG.RU

java + mysql


0

0

hi all!

Есть следующая проблема:
Не могу подключится к mysql из java программы.
Вот что выдаёт:
java.sql.SQLException: Communication failure during handshake. Is there a server running on localhost:3306?
java.lang.NullPointerException

При том, что mysql запущен, и с консоли с помощью mysql могу подключится. Mysql с дефолтными настройками.

В гугле искал. Вычитал что нужно обновить базу,
обновление до 4.1.10 не помогло.

Вот пример кода, который я использую.

public static void main(String args[]) throws Exception {
Connection con = null;
String dbUrl = "jdbc:mysql://localhost/123?user=123&password=123";
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
}catch(ClassNotFoundException e) {
e.printStackTrace();
}

try {
con = DriverManager.getConnection(dbUrl);
}catch (SQLException e) {
System.out.println(e);
}
}

В чем может быть проблема?


Глупое предположение: проверьте, что сервер работает и слушает именно порт 3306 (telnet localhost 3306). mysql AFAIK может по unix socket работать, возможно это как раз тот случай (т.е. он вообще не висит ни на каком TCP порте)

phoenix ★★★★
()
Ответ на: комментарий от phoenix

В том то и дело, что
netstat -nat
выводит что слушается 3306 порт

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

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.