首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL Server 連線三大經典錯誤深度剖析與解決方案

     編輯:關於SqlServer

錯誤一:「SQL Server 不存在或存取被拒」

成因複雜,依序排查:

  1. 物理連線:ping IP 失敗 → 檢查網卡、交換器、路由器;成功但 ping 名稱 失敗 → DNS 問題,修 hosts 檔或 DNS 設定
  2. Telnet 埠測試:telnet IP 1433 閃爍游標 = 正常;失敗 → 服務未啟、TCP/IP 未啟、埠號不符、防火牆阻擋
  3. 伺服器端協定:「伺服器網路公用程式」啟用 TCP/IP、命名管道;屬性確認埠號 1433
  4. 用戶端協定:「用戶端網路公用程式」同步啟用協定、埠號一致;「別名」可設定連線別名

錯誤二:「無法連接到伺服器,使用者 xxx 登入失敗」

原因: 伺服器設為「僅 Windows 驗證」,拒絕 SQL 登入 (sa 等)。

解法 A:企業管理器改模式

  1. 以 Windows 驗證登入企業管理器
  2. 伺服器右鍵 → 屬性 → 安全性 → 「SQL Server 和 Windows」
  3. 重啟 MSSQLServer 服務

解法 B:登錄直改 (無法以 Windows 登入時)

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\LoginMode
值:1 (僅 Windows) → 2 (混合模式)
重啟服務生效

補充:恢復內建管理員登入

新增 BUILTIN\Administrators 和 <機器名>\Administrator 登入,指派 sysadmin 角色。

錯誤三:連線逾時

成因: 連線建立時間超過逾時設定。常見於跨網路慢速連線或區域網路擁塞。

調整逾時設定

  • 企業管理器:工具 → 選項 → 進階 → 登入逾時 (預設 4 秒 → 建議 20+)
  • 查詢分析器:工具 → 選項 → 連線 → 登入逾時 (預設 15 秒)

快速驗證腳本 (CMD)

1. ping IP 通
2. telnet IP 1433 不報錯
3. 企業管理器用 IP 註冊:SQL 登入 → sa + 密碼
4. 仍失敗 → 伺服器端「伺服器網路公用程式」啟用 WinSock Proxy,位址=伺服器IP、埠=1433
5. 仍失敗 → 用戶端「用戶端網路公用程式」別名新增:TCP/IP、伺服器名=遠端IP
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved