window 10 下为SQL Server 关闭防火墙

问题


在使用远程连接数据库的时候,经常出现连接超时,其实很大部分原因是没有开启TCP/IP协议,在完全开启了这个协议的时候,剩下的可能的原因就是远程主机的防火墙没有为当前数据库开启可用的端口。所以可能的解决方法是在防火墙中为TCP/IP开启端口。


方法


- 打开控制面板,进入防火墙
- 单击右侧高级设置
- 单击右侧入站规则
- 单击左侧新建规则
- 选择端口,进入下一页
- 选择TCP,特定本地端口,输入1433(或者你的默认的端口号)
- 下一步,输入名称(具有意义的名称都可以)
- 完成即可


测试


win+R ->运行cmd->netstat -na ->查看你的远程的ip:1433(端口)是否在监听状态 。或者直接在程序中验证。

验证


java中直接上代码,看能否查到数据;


@Test
    public void ConnectSqlServer(){
        String driverName="com.microsoft.sqlserver.jdbc.SQLServerDriver";
        String dbURL="jdbc:sqlserver://192.168.0.113:1433;databaseName=ShDB";
        String userName="test";
        String userPsd="123456789";
        Connection dbCon;

        Statement st;
        ResultSet rs;
        try {
            Class.forName(driverName);
            dbCon= DriverManager.getConnection(dbURL,userName,userPsd);
            System.out.println("connect to the DataBase successfully!");
            String sql="select * from Users";
            st=dbCon.createStatement();
            rs=st.executeQuery(sql);
            while(rs.next()){
                System.out.println("Data:"+rs.getString(1));
            }
        }catch (SQLException e) {
            e.printStackTrace();
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值