none
sqlcmd 的问题 RRS feed

  • 问题

  • 安装了 了 sql2005
    net start mssql$mydbserver

    通过 SQL Server Management Studio 能 正常连接至该 服务器

    但是 在命令行 输入 cmdsql 的时候 出现以下错误:
    "
    HResult 0x2,级别 16,状态 1
    命名管道提供程序: 无法打开与 SQL Server 的连接 [2].
    Sqlcmd: 错误: Microsoft SQL Native Client : 建立到服务器的连接时发生错误。连接到
     SQL Server 2005 时,默认设置 SQL Server 不允许远程连接这个事实可能会导致失败。

    Sqlcmd: 错误: Microsoft SQL Native Client : 登录超时已过期。
    "
    请问如何解决才能使用 sqlcmd 控制台登录sql服务器?

    2009年11月29日 13:28

答案

  • 你的数据库是命名实例,连接是需要指定实例名称

    sqlcmd -S serversName\instanceName

    假设你是在本机进行链接
    sqlcmd -S .\mydbserver

    有dba的职位吗(北京的),请联系我 stswordman#hotmail.com
    2009年11月29日 16:02
    版主
  • 如果不是上述原因输入连接实例名字造成, 有下述办法可以帮你找到原因:

    如果SSMS能连上,你可以察看从SSMS登陆的client是用什么协议登陆的,这个可以通过sysprocesses知道。注意到你的sqlcmd是在说它在用命名管道没成功。你可以创建一个alias,指定用SSMSs成功连接的协议,然后sqlcmd去连接这个alias,应该成功。


    Oliver Yao - MSFT
    2009年11月30日 2:50
  • 可以打开ERRORLOG文件了解连接失败的具体原因,通常位于安装实例的Log目录下
    C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Log

    SQL Server每一次重启都会生成一个新的文件,同时把老的文件编号往后移,你可以根据时间戳查找对应的文件。如文件中没有记载你的连接错误,要看看防火墙是不是有问题,因为很可能连接消息包都没有到达SQL Server

    2009年11月30日 5:22
  • 查看一下以下設置是否正確?樓主是用SA連接還是信倕連接
    -------------------------------------------------
    Windows防火牆把1433設置為例外,或關掉Windows防火牆。
    程序—Microsoft SQL Server 2005—配置工具—SQL Server 外围应用配置器—服务和连接的外围应用配置器—
    1、MSSQLserver(实例名)—DataBase Engine—远程连接—(设置选项)
    在下方选项
    2、SQL Server Browser—服务(停止时只本机访问)
    3、程序—Microsoft SQL Server 2005—配置工具—SQL Server Configuration Manager—網絡連接協議—選擇實例對應協議—啟用(shard memory、Named Pipes、TCP\IP)
    注:
    SQL Server 浏览器程序以服务的形式在服务器上运行。SQL Server 浏览器侦听对 Microsoft SQL Server 资源的传入请求,并提供计算机上安装的 SQL Server 实例的相关信息。SQL Server 浏览器可用于执行下列三种操作:
    浏览可用服务器
    连接到正确的服务器实例
    连接到专用管理员连接 (DAC) 端点
    SQL Server Browser 服务 (sqlbrowser) 为数据库引擎 和 SSAS 的每个实例提供实例名称和版本号。SQL Server 浏览器随 Microsoft SQL Server 2005 一起安装,为该计算机上运行的早期版本的 SQL Server(从 Microsoft SQL Server 7.0 开始)提供此服务

    --改登陸模式

    用windows驗證,登入企業管理器—在實例—屬性—安全性(混合登陸模式)

    在安全性—登入—sa—屬性—狀態—啟用
    ROY WU(吳熹)
    2009年11月30日 6:31
    版主
  • 希望以下Link对你有帮助:

    http://support.microsoft.com/default.aspx/kb/929152

    Qiong Wu - MSFT
    2009年11月30日 13:14
  • 估計故障出在連接字符串上

    提示信息應該不正確,首先樓主的連接是否為本機,用戶名、密碼、實例是否正確
    ROY WU(吳熹)
    2009年12月1日 2:52
    版主

全部回复

  • 你的数据库是命名实例,连接是需要指定实例名称

    sqlcmd -S serversName\instanceName

    假设你是在本机进行链接
    sqlcmd -S .\mydbserver

    有dba的职位吗(北京的),请联系我 stswordman#hotmail.com
    2009年11月29日 16:02
    版主
  • 如果不是上述原因输入连接实例名字造成, 有下述办法可以帮你找到原因:

    如果SSMS能连上,你可以察看从SSMS登陆的client是用什么协议登陆的,这个可以通过sysprocesses知道。注意到你的sqlcmd是在说它在用命名管道没成功。你可以创建一个alias,指定用SSMSs成功连接的协议,然后sqlcmd去连接这个alias,应该成功。


    Oliver Yao - MSFT
    2009年11月30日 2:50
  • 可以打开ERRORLOG文件了解连接失败的具体原因,通常位于安装实例的Log目录下
    C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Log

    SQL Server每一次重启都会生成一个新的文件,同时把老的文件编号往后移,你可以根据时间戳查找对应的文件。如文件中没有记载你的连接错误,要看看防火墙是不是有问题,因为很可能连接消息包都没有到达SQL Server

    2009年11月30日 5:22
  • 查看一下以下設置是否正確?樓主是用SA連接還是信倕連接
    -------------------------------------------------
    Windows防火牆把1433設置為例外,或關掉Windows防火牆。
    程序—Microsoft SQL Server 2005—配置工具—SQL Server 外围应用配置器—服务和连接的外围应用配置器—
    1、MSSQLserver(实例名)—DataBase Engine—远程连接—(设置选项)
    在下方选项
    2、SQL Server Browser—服务(停止时只本机访问)
    3、程序—Microsoft SQL Server 2005—配置工具—SQL Server Configuration Manager—網絡連接協議—選擇實例對應協議—啟用(shard memory、Named Pipes、TCP\IP)
    注:
    SQL Server 浏览器程序以服务的形式在服务器上运行。SQL Server 浏览器侦听对 Microsoft SQL Server 资源的传入请求,并提供计算机上安装的 SQL Server 实例的相关信息。SQL Server 浏览器可用于执行下列三种操作:
    浏览可用服务器
    连接到正确的服务器实例
    连接到专用管理员连接 (DAC) 端点
    SQL Server Browser 服务 (sqlbrowser) 为数据库引擎 和 SSAS 的每个实例提供实例名称和版本号。SQL Server 浏览器随 Microsoft SQL Server 2005 一起安装,为该计算机上运行的早期版本的 SQL Server(从 Microsoft SQL Server 7.0 开始)提供此服务

    --改登陸模式

    用windows驗證,登入企業管理器—在實例—屬性—安全性(混合登陸模式)

    在安全性—登入—sa—屬性—狀態—啟用
    ROY WU(吳熹)
    2009年11月30日 6:31
    版主
  • 希望以下Link对你有帮助:

    http://support.microsoft.com/default.aspx/kb/929152

    Qiong Wu - MSFT
    2009年11月30日 13:14
  • 估計故障出在連接字符串上

    提示信息應該不正確,首先樓主的連接是否為本機,用戶名、密碼、實例是否正確
    ROY WU(吳熹)
    2009年12月1日 2:52
    版主