【问题标题】:Connection to database failed:java连接数据库失败:java
【发布时间】:2017-06-12 23:49:09
【问题描述】:

我正在尝试通过 java 代码连接到数据库。

这是我的代码的 sn-p:

import java.sql.*;

public class FirstExample {
 // JDBC driver name and database URL
 static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";  
 static final String DB_URL = "jdbc:mysql://hostname:port/ourDatabasename;integratedSecurity=true;";


 //  Database credentials
 static final String USER = "myUsername";
 static final String PASS = "myPass";

 public static void main(String[] args) {
 Connection conn = null;
 Statement stmt = null;
 try{
    //STEP 2: Register JDBC driver
    Class.forName("com.mysql.jdbc.Driver");

//STEP 3: Open a connection
    System.out.println("Connecting to database...");
    conn = DriverManager.getConnection(DB_URL, USER, PASS);
.........................

最后一行conn = DriverManager.getConnection(DB_URL, USER, PASS); 程序抛出异常:

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:通信链路故障 最后一个成功发送到服务器的数据包是 0 毫秒前。驱动没有收到服务器发来的任何数据包。

我有一个 ping 这个主机名。 Telnet 到主机名和端口成功。我可以通过 Microsoft SQL Server Management Studio 使用 Windows Credentials:myUsername/myPass 登录到这个“ourDatabasename”,但无法通过这个 java 代码进行连接。我有:'mysql-connector-java-5.1.40-bin' 并将其添加到我的项目中。

我错过了什么?您对如何解决此问题有任何想法吗?

【问题讨论】:

  • 您确定没有混淆MySQLMSSQL
  • 如果您可以使用 Microsoft SQL Server Management Studio 连接到您的数据库,那么您没有使用 MySQL。您需要使用 Microsoft SQL Server JDBC 驱动程序和正确的连接字符串。
  • 你用什么端口用 Telnet 测试它?
  • 如果您使用的是 mssql 服务器,请将 JDBC_DRIVER 更改为 com.microsoft.sqlserver.jdbc.SQLServerDriver 并将 DB_URL 更改为 jdbc:sqlserver://server:port;DatabaseName=dbname

标签: java mysql jdbc


【解决方案1】:

你是否从某个地方复制了这行代码?

static final String DB_URL = "jdbc:mysql://hostname:port/ourDatabasename;integratedSecurity=true;";

当由于主机名和端口号问题而无法访问数据库时,通常会观察到此异常。您是否正确使用它们? 例如。本地主机:3306 好像当您从

传递参数时
conn = DriverManager.getConnection(DB_URL, USER, PASS);

DB_URL 变量不包含连接到数据库的正确地址。 希望这会有所帮助!

【讨论】:

  • 不,我有一个现有的主机名,例如:'ourHostname',它是真实的。 'port' 我从我们的 Microsoft SQL Server Management Studio 中提取,我们有 'sql server,port'。 'ourDatabasename' 我使用的是实际名称而不是这个。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-02
  • 2020-05-05
  • 2011-12-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多