連線能力疑難排解
Microsoft JDBC Driver for SQL Server 需要已安裝並執行 TCP/IP,才能與您的 SQL Server 資料庫通訊。 您可使用 SQL Server 組態管理員來確認哪些網路程式庫通訊協定已安裝。
資料庫連接嘗試可能會因為許多因素而失敗。 這些因素如下所述:
SQL Server 未啟用 TCP/IP,或者指定的伺服器或連接埠號碼不正確。 確認 SQL Server 正在接聽指定伺服器與連接埠上的 TCP/IP。 可能會報告類似以下的例外狀況:「登入失敗。 主機的 TCP/IP 連線失敗。」這表示下列其中一種情況:
SQL Server 已安裝,但尚未使用 SQL Server 2000 (8.x) 的 SQL Server 網路公用程式或 SQL Server 2005 (9.x) 和更新版本的 SQL Server 組態管理員,將 TCP/IP 安裝為 SQL Server 的網路通訊協定。
TCP/IP 已安裝為 SQL Server 通訊協定,但未在 JDBC 連線 URL 中指定的連接埠上接聽。 預設連接埠為 1433,但可在產品安裝期間將 SQL Server 設定為在任何連接埠上接聽。 請確定 SQL Server 正在接聽連接埠 1433。 或者,如果已變更通訊埠,則請確定 JDBC 連接 URL 中所指定的通訊埠符合已變更的通訊埠。 如需 JDBC 連線 URL 的詳細資訊,請參閱建置連線 URL。
JDBC 連線 URL 中指定的電腦位址並不是指已安裝並啟動 SQL Server 的伺服器。
用戶端與執行 SQL Server 之伺服器間的 TCP/IP 網路作業無法運作。 您可使用 telnet 檢查 TCP/IP 與 SQL Server 的連線能力。 例如,在命令提示字元中鍵入
telnet 192.168.0.0 1433
,其中 192.168.0.0 是執行 SQL Server 的電腦位址,而 1433 則是目前接聽所在的連接埠。 如果您收訊息,內容指出「Telnet 無法連線」,即表示 TCP/IP 沒有在該連接埠上接聽 SQL Server 連線。 使用 SQL Server 2000 (8.x) 的 SQL Server 網路公用程式或 SQL Server 2005 (9.x) 和更新版本的 SQL Server 組態管理員,確保 SQL Server 已設定為在連接埠 1433 上使用 TCP/IP。伺服器所使用的通訊埠尚未在防火牆內開啟。 這包括伺服器所使用的通訊埠,或與具名的伺服器執行個體相關聯的選用通訊埠。
指定的資料庫名稱不正確。 請確定您正在登入現有的 SQL Server 資料庫。
使用者名稱或密碼不正確。 請確定您擁有正確的值。
當您使用 SQL Server 驗證時,JDBC 驅動程式會要求安裝具有 SQL Server 驗證的 SQL Server;這不是預設值。 請確定當您安裝或設定 SQL Server 的執行個體時,已包含此選項。