连接到远程MS-SQL Server实例

时间:2017-07-31 13:22:30

标签: java sql sql-server jdbc mssql-jdbc

我正在尝试使用JDBC连接到远程MS-SQL数据库实例。 MS-SQL在远程Windows机器上运行,我的JDBC程序在linux机器上运行。

public class JdbcSQLServerConnection {

    public static void main(String[] args) {

        if (args.length != 3) {
            System.out.println("Usage :\njava -jar jarFile.jar url username password");
            System.exit(0);
        }
        Connection conn = null;
        try {
            String dbURL = args[0];
            String user = args[1];
            String pass = args[2];
            conn = DriverManager.getConnection(dbURL, user, pass);
            if (conn != null) {
                DatabaseMetaData dm = (DatabaseMetaData) conn.getMetaData();
                System.out.println("Driver name: " + dm.getDriverName());
                System.out.println("Driver version: " + dm.getDriverVersion());
                System.out.println("Product name: " + dm.getDatabaseProductName());
                System.out.println("Product version: " + dm.getDatabaseProductVersion());
            }
        } catch (SQLException ex) {
            ex.printStackTrace();
        } finally {
            try {
                if (conn != null && !conn.isClosed()) {
                    conn.close();
                }
            } catch (SQLException ex) {
                ex.printStackTrace();
            }
        }
    }
}

运行代码时,我遇到以下异常:

  

com.microsoft.sqlserver.jdbc.SQLServerException:与主机XX.XXX.XX.XXsqlexpress,端口1433的TCP / IP连接失败。错误:null。验证连接属性。确保主机上正在运行SQL Server实例并接受端口上的TCP / IP连接。确保防火墙不阻止与端口的TCP连接。

我正在使用驱动程序sqljdbc4.jar。下面显示的是我的JDBC程序。

0 个答案:

没有答案