无法连接到主机MyServerName

时间:2017-06-25 17:19:00

标签: java sql-server sqljdbc

大家好我正在尝试将NetBeans IDE与SqlServer连接,我所做的一切都是正确的,在SQL Server Configurtion Manager中将端口设置为1433,这是我的代码:

public Db(String login,String password, String dbname) throws SQLException{

        try {
            String url = "jdbc:sqlserver://MJRLGUE\\SWING;databaseName="+dbname+";integratedSecurity = false;";
            Driver monDriver = new SQLServerDriver();
            DriverManager.registerDriver(monDriver);
            Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
            con = DriverManager.getConnection(url,login,password);
            this.connecte = true;
            System.out.println("Succes");
      } catch (ClassNotFoundException e) {
            System.out.println("echec driver "+e.toString());
            this.connecte = false;
        }

    }

和错误消息:

  

再试一次com.microsoft.sqlserver.jdbc.SQLServerException:无法连接到主机MJRLGUE,命名实例swing。错误:" java.net.SocketTimeoutException:接收超时"。验证服务器名称和实例名称,并确保没有防火墙阻止UDP流量到端口1434.对于SQL Server 2005或更高版本,请验证SQL Server Browser服务是否在主机上运行Execution。

Exception in thread "main" java.lang.NullPointerException
    at Model.Test.remplirDirecteur(Test.java:79)
    at Main.main(Main.java:17)
C:\Users\Ghassane\AppData\Local\NetBeans\Cache\8.1\executor-snippets\run.xml:53: Java returned: 1
BUILD FAILED (total time: 29 seconds)

我在SqlServer中的实例名称:MJRLGUE\SWING 用于连接数据库的代码:db= new Db("sa","ensak","SuiviMarche");

2 个答案:

答案 0 :(得分:1)

检查您是否可以从运行代码的计算机ping SQL服务器。

如果可以的话,您可能需要配置sql server以允许远程连接,正如您所说的那样,您已经检查过防火墙,我认为该实例正在标准端口1433上运行

另外,请检查您是否可以使用SMSS从运行代码的计算机连接到SQL Server。

修改

查看您的错误消息,您没有使用标准端口1433,因为消息显示您正在尝试连接到1434.

  

确保没有防火墙阻止UDP流量到端口1434

尝试使用jdbc:sqlserver:// localhost:1433作为主机。

答案 1 :(得分:0)

检查您的网址,确保服务器正常运行,端口号和服务没有防火墙。