2013-05-07 4 views
0

Я пытаюсь подключиться к серверу MYSQL, размещенному на MAMP Pro. Я пытаюсь подключиться с той же клиентской машины, используя java и VBA. VBA соединяется отлично, но Java дает мне ошибку через несколько секундVBA подключается нормально, но java не

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. 

На Java

  String userName = "user"; 
      String password = "pass"; 
      String url = "jdbc:mysql://10.0.1.1/datab"; 
      Class.forName ("com.mysql.jdbc.Driver").newInstance(); 
      conn = DriverManager.getConnection (url, userName, password); 

На VBA

Sub ConnectToDatabase() 
     Set oConn = New ADODB.Connection 
     oConn.Open "DRIVER={MySQL ODBC 3.51 Driver};" & _ 
      "SERVER=10.0.1.1;" & _ 
      "DATABASE=datab;" & _ 
      "USER=user;" & _ 
      "PASSWORD=pass;" & _ 
      "PORT=3306;" & _ 
      "Option=3" 
     End Sub 

telnet 10.0.1.1 3306 принимает соединение с клиентской машины. Мой Bind адрес является IP-сервер на my.conf

I'm using mysql-connector-java 5.1.18 
+0

Возможный дубликат: http://stackoverflow.com/questions/2983248/com-mysql-jdbc-exceptions-jdbc4-communicationsexception-communications-link-fai – jdigital

ответ

1

Попробуйте это для вас URL Java DB:

JDBC: MySQL: // локальный: 3306/datab

Вы убедитесь, что это не Работа. Изучите путь к классу и убедитесь, что драйвер MySql находится на вашем пути к классу.

Ваш код должен бросить исключение здесь:

Class.forName("com.mysql.jdbc.driver").newInstance(); 

Чтобы получить ошибку, изменить код так:

try { 
    Class.forName ("com.mysql.jdbc.Driver").newInstance(); 
    conn = DriverManager.getConnection (url, userName, password); 
} 
catch (Exception e) { 
    System.out.print(e.printStackTrace()); 
} 

Это будет печатать ошибку в консоли Eclipse, так что вы можете вырезать и вставьте его здесь.

+0

Я думаю, что порт по умолчанию 3306, но по-прежнему будет пытаться – Ank

+0

I что это не исправить, можете ли вы отправить трассировку стека на ошибку? – CBass

+0

Не работает .......................................... – Ank

Смежные вопросы