2013年10月8日 星期二

sqlcmd錯誤的解決方法


sqlcmd錯誤的解決方法

一、問題
使用sqlcmd客戶端工具連接數據時,出現以下錯誤:
      C:\>sqlcmd
      HResult 0x2,級別 16,狀態 1
      命名管道提供程序: 無法打開與 SQL Server 的連接 [2].
      Sqlcmd: 錯誤: Microsoft SQL Native Client : 建立到服務器的連接
      允許遠程連接這個事實可能會導致失敗。。
      Sqlcmd: 錯誤: Microsoft SQL Native Client : 登錄超時已過期。

二、原因
1、網絡協議及相關端口未打開
2、未指明使用何種身份認證方式登錄

三、解決過程
1、開啟網絡協議
      SQL Server Configuration Manager -> 網絡配置 -> 協議
      TCP/IP屬性
      保持活動狀態 --> 30000
      全部偵聽     --> 否
      無延遲       --> 否
      已啟用       --> 是
     
       IP地址
      IP地址      --> 數據庫服務器IP
      TCP動態端口 --> 不填
      TCP端口     --> 1433
      活動        --> 是
      已啟用      --> 是

2、連接數據庫
      (1)使用Windows身份認證:C:\>sqlcmd -E -S\實例名 -d master
      (2)使用SQL SERVER身份認證:C:\>sqlcmd -S\實例名 -d master -U 用戶名 -P 密碼

四、使用SQLCMD
1、查看幫助:C:\>sqlcmd -?
2、執行SQL語句
      C:\>sqlcmd -E -S\WWDD -d master
      1> use www
      2> go
      已將數據庫上下文更改為 'WWW'。
      1> select * from guangd;
      2> go

沒有留言:

張貼留言