您目前已離線,請等候您的網際網路重新連線

當 SQL Server 2000 升級為 SQL Server 2005 時,SQL Server 2005 沒有啟動

Beta 版資訊
本文將告訴您 Beta 版的 Microsoft 產品。本文中的資訊係依「現況」提供,如有變更恕不另行通知。

Microsoft 不提供本 Beta 版產品的一般產品支援。如需有關如何取得 Beta 版本支援的詳細資訊,請參閱隨附於 Beta 版產品檔案中的說明文件,或是造訪下載此版本產品的網站。
徵狀
當 Microsoft SQL Server 2000 升級為 Microsoft SQL Server 2005 時,SQL Server 2005 沒有啟動。下列訊息會記錄在應用程式記錄檔中:

訊息 1
無法載入使用者專屬的憑證。伺服器將不會接受連接。您應該確認已正確安裝憑證。請參閱線上叢書中的<設定憑證給 SSL 使用>(Configuring Certificate for Use by SSL)。
如需詳細資訊,請參閱 http://support.microsoft.com 上的「說明和支援中心」。
訊息 2
TDSSNIClient 初始化失敗,其錯誤為 0x80092004,狀態碼為 0x80。
如需詳細資訊,請參閱 http://support.microsoft.com 上的「說明和支援中心」。
訊息 3
TDSSNIClient 初始化失敗,其錯誤為 0x80092004,狀態碼為 0x1。
如需詳細資訊,請參閱 http://support.microsoft.com 上的「說明和支援中心」。
訊息 4
由於網路程式庫發生內部錯誤而無法啟動網路程式庫。若要確定其原因,請檢閱錯誤記錄檔中此錯誤的前一個錯誤。
如需詳細資訊,請參閱 http://support.microsoft.com 上的「說明和支援中心」。
發生的原因
發生這個問題的原因是儲存在 Certificate 登錄項目中的值在升級前不是有效的。

如果在升級前,將 Certificate 登錄項目設定為非零的值,SQL Server 2005 會遷移並使用該值。因此,如果該值不是有效的,SQL Server 2005 便會因為找不到對應的憑證而無法啟動。
解決方案
如果要解決這個問題,請使用下列其中一種方法:
  • 請使用「SQL Server 組態管理員」來匯入有效的憑證。
  • 清除 Certificate 登錄項目,以取消設定值。SQL Server 2005 會使用自動簽署的憑證。
其他相關資訊
SQL Server 2000 和 SQL Server 2005 永遠會嘗試在連線過程中對登入封包加密。因此,不論是否啟用資料加密,SQL Server 2000 和 SQL Server 2005 都會嘗試載入安全通訊端層 (SSL) 憑證。

如果未將 Certificate 登錄項目設定為有效的值時,那麼 SQL Server 2000 不需在本機電腦上載入憑證即可啟動。SQL Server 2000 也就不會嘗試對登入封包加密。例如,0 就是無效值。如果將 Certificate 登錄項目設定為有效的值時,SQL Server 2000 就會嘗試載入憑證並對登入封包加密。

下面的登錄子機碼為 SQL Server 2000 的 Certificate 登錄項目:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\SuperSocketNetLib

值名稱:Certificate
類型:REG_SZ
和 SQL Server 2000 不同的是,SQL Server 2005 不會讓您透過將 Certificate 登錄項目的值設定為 0 的方式來停用加密。當您將 SQL Server 2000 升級為 SQL Server 2005 時,如果將 Certificate 登錄項目的值設定為 0,那麼 SQL Server 2005 便會清除 Certificate 登錄項目。在這種情況下,當執行個體啟動時,SQL Server 2005 便會產生自動簽署的憑證。

下面的登錄子機碼為 SQL Server 2005 的 Certificate 登錄項目:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.1\MSSQLServer\SuperSocketNetLib

值名稱:Certificate
類型:REG_SZ
如果儲存在 Certificate 登錄項目中的值因長度不正確而不是有效的,那麼 SQL Server 2005 便不會啟動。下列訊息會記錄在應用程式記錄檔中:

訊息 1
TDSSNIClient 初始化失敗,其錯誤為 0xd,狀態碼為 0x38。
如需詳細資訊,請參閱 http://support.microsoft.com 上的「說明和支援中心」。
訊息 2
TDSSNIClient 初始化失敗,其錯誤為 0xd,狀態碼為 0x1。
如需詳細資訊,請參閱 http://support.microsoft.com 上的「說明和支援中心」。
訊息 3
由於網路程式庫發生內部錯誤而無法啟動網路程式庫。若要確定其原因,請檢閱錯誤記錄檔中此錯誤的前一個錯誤。
如需詳細資訊,請參閱 http://support.microsoft.com 上的「說明和支援中心」。
如果儲存在 Certificate 登錄項目中的值是有效的,那麼 SQL Server 2005 便會成功啟動,而下面的訊息會記錄在應用程式記錄檔中:
憑證已成功載入進行加密。
內容

文章識別碼:900497 - 最後檢閱時間:09/22/2006 03:30:21 - 修訂: 2.0

Microsoft SQL Server 2005 Standard Edition Community Technology Preview, Microsoft SQL Server 2005 Enterprise Edition Community Technology Preview, Microsoft SQL Server 2005 Developer Edition Community Technology Preview, Microsoft SQL Server 2005 Express Edition Community Technology Preview

  • kbtshoot kbprb KB900497
意見反應
">