• sqlcmd不能远程连接问题及解决方案(转)


    在Windows 2003 sp1服务器上缺省安装 MS SQL Server 2005 简体中文企业版,在连接服务器时显示“不允许远程连接”。

    具体显示如下:(xxxxxsql为服务器名,在本地操作)
    C:\Documents and Settings\Administrator>sqlcmd -S xxxxxsql
    HResult 0x2,级别 16,状态 1
    命名管道提供程序: 无法打开与 SQL Server 的连接 [2].
    Sqlcmd: 错误: Microsoft SQL Native Client : 建立到服务器的连接时发生错误。连接到
    SQL Server 2005 时,默认设置 SQL Server 不允许远程连接这个事实可能会导致失败。

    Sqlcmd: 错误: Microsoft SQL Native Client : 登录超时已过期。

    解决办法:
    1.查看端口,发现没有1433(SQL server的缺省端口)
    C:\Documents and Settings\Administrator>netstat -ano

    Active Connections

    Proto Local Address          Foreign Address        State           PID
    TCP    0.0.0.0:21             0.0.0.0:0              LISTENING       2900
    TCP    0.0.0.0:80             0.0.0.0:0              LISTENING       3672
    TCP    0.0.0.0:135            0.0.0.0:0              LISTENING       936
    TCP    0.0.0.0:445            0.0.0.0:0              LISTENING       4
    TCP    0.0.0.0:1025           0.0.0.0:0              LISTENING       656
    TCP    0.0.0.0:1030           0.0.0.0:0              LISTENING       2900
    TCP    0.0.0.0:1037           0.0.0.0:0              LISTENING       3296
    TCP    0.0.0.0:3389           0.0.0.0:0              LISTENING       620
    TCP    1x.xx.xx.18:139        0.0.0.0:0              LISTENING       4
    TCP    1x.xx.xx.18:3389       1x.xx.xx.44:1116       ESTABLISHED     620
    TCP    127.0.0.1:1038         0.0.0.0:0              LISTENING       3296
    UDP    0.0.0.0:445            *:*                                    4
    UDP    0.0.0.0:500            *:*                                    656
    UDP    0.0.0.0:1434           *:*                                    2380
    UDP    0.0.0.0:2967           *:*                                    1772
    UDP    0.0.0.0:3456           *:*                                    2900
    UDP    0.0.0.0:4500           *:*                                    656
    UDP    1x.xx.xx.18:123        *:*                                    1096
    UDP    1x.xx.xx.18:137        *:*                                    4
    UDP    1x.xx.xx.18:138        *:*                                    4
    UDP    127.0.0.1:123          *:*                                    1096
    UDP    127.0.0.1:1027         *:*                                    1096
    UDP    127.0.0.1:3456         *:*                                    2900

    2.进入SQL Server Configuration Manager,查看配置
    SQL Server 配置管理器(本地)
    ->SQL Server 2005 网络配置
    ->HLHEBSQL 的协议
        -> TCP/IP

    右键->属性

    发现服务器地址IP1,未启用,端口使用的是动态端口。
    按如下更改后,重新启用SQL Server服务。
    注意:一定要IPALL的TCP动态端口删除,TCP端口改为1433,只改IP1不好用,在这个问题很多网上的解决办法都没有明确,走了很多的弯路!

    3.     重新查看端口,可以看到1433已经打开
    C:\Documents and Settings\Administrator>netstat -ano

    Active Connections

    Proto Local Address          Foreign Address        State           PID
    TCP    0.0.0.0:21             0.0.0.0:0              LISTENING       2900
    TCP    0.0.0.0:80             0.0.0.0:0              LISTENING       3672
    TCP    0.0.0.0:135            0.0.0.0:0              LISTENING       936
    TCP    0.0.0.0:445            0.0.0.0:0              LISTENING       4
    TCP    0.0.0.0:1025           0.0.0.0:0              LISTENING       656
    TCP    0.0.0.0:1030           0.0.0.0:0              LISTENING       2900
    TCP    0.0.0.0:1433           0.0.0.0:0              LISTENING       1532
    TCP    0.0.0.0:3389           0.0.0.0:0              LISTENING       620
    TCP    1x.xx.xx.18:139        0.0.0.0:0              LISTENING       4
    TCP    1x.xx.xx.18:3389       1x.xx.xx.44:1116       ESTABLISHED     620
    TCP    127.0.0.1:1038         0.0.0.0:0              LISTENING       1532
    UDP    0.0.0.0:445            *:*                                    4
    UDP    0.0.0.0:500            *:*                                    656
    UDP    0.0.0.0:1434           *:*                                    2380
    UDP    0.0.0.0:2967           *:*                                    1772
    UDP    0.0.0.0:3456           *:*                                    2900
    UDP    0.0.0.0:4500           *:*                                    656
    UDP    1x.xx.xx.18:123        *:*                                    1096
    UDP    1x.xx.xx.18:137        *:*                                    4
    UDP    1x.xx.xx.18:138        *:*                                    4
    UDP    127.0.0.1:123          *:*                                    1096
    UDP    127.0.0.1:1027         *:*                                    1096
    UDP    127.0.0.1:3456         *:*                                    2900

    4. 重新执行SQLCMD,成功
    C:\Documents and Settings\Administrator>sqlcmd -S xxxxxsql
    1>
    // 文章来源于:站补(http://www.notfind.cn/Article/View.aspx?ArticleSN=401)

  • 相关阅读:
    Eclipse出现Access restriction : The type BASE64Decoder is not accessible due to restriction问题
    Struts学习总结(1)
    TCPMon使用总结
    AJAX入门学习总结
    JSON for java入门总结
    JSTL使用总结(2) fmt标签库和fn标签库
    JSTL使用总结(1) 核心标签库和SQL标签库
    JavaScript学习总结
    Ant学习总结
    C# .NET中如何使用GetCursorPos函数
  • 原文地址:https://www.cnblogs.com/sdqxcxh/p/1798990.html
Copyright © 2020-2023  润新知