Sql Server啟用SSL證書服務后無法重啟或者啟動;“TDSSNIClient 初始化失敗,出現錯誤 0x80092004,狀態代碼 0x80”“無法加載用戶指定的證書 [Cert Hash(sha1) ”
[重要通告]如您遇疑難雜癥,本站支持知識付費業務,掃右邊二維碼加博主微信,可節省您寶貴時間哦!
前一篇文章寫過,如何的給Sql SerVer服務器啟用SSL證書服務-?SQL Server如何啟用ssl證書服務?SQL Server啟用ssl證書的方式方法?? 可能在重啟的時候不能啟動,這是為啥呢?我們就來說一下;
其實再啟動或者重啟的時候,一直提示無法啟動,具體請看錯誤
然后進入進入日志查看一下,有幾個錯誤;錯誤如下:
1、TDSSNIClient 初始化失敗,出現錯誤 0x80092004,狀態代碼 0x80。原因: Unable to initialize SSL support. Cannot find object or property.
2、TDSSNIClient 初始化失敗,出現錯誤 0x80092004,狀態代碼 0x1。原因: Initialization failed with an infrastructure error. Check for previous errors. Cannot find object or property.
3、由于網絡庫中存在內部錯誤,所以無法啟動網絡庫。要確定原因,請查看錯誤日志中緊位于此錯誤之前的那些錯誤。
4、SQL Server 無法生成 FRunCommunicationsManager 線程。請查看 SQL Server 錯誤日志和 Windows 事件日志,獲取有關可能發生的相關問題的信息。
出現了以上這么幾個錯誤,事件ID為17182、17826、17120這么幾個,從第一個里面就應該可以看出SSL,那就說明是證書的原因,到底啥原因呢?你百度去吧,不會有啥好的結果,甚至說都沒啥可介紹的,簡直都是引人誤入歧途,就連上篇文章介紹如何開啟sql server 都是五花八門的;
看上面的1、2兩個錯誤后面的原因都是英文,其實以上就是找不到啥啥啥,由于sql server 開啟強制協議加密,還能是啥啥啥,肯定是證書嘍,那我們啟用了,為啥還是找不到呢?可能的原因包括以下三種:
1、該證書可能已被移動或刪除。
2、如果由 SQL Server 使用的登錄名已發生更改,則 SQL Server 可能無權訪問該證書。
3、該證書可能已過期。
按照思路走,以上三點肯定都不是,給予大腦皮層的又一反應,權限;那估計就是權限鬧的,是根據2的啟發來的,原因就是 SQL Server 可能無權訪問該證書,這個是運行sql server實例的用戶對證書的訪問權限,我們現在操作一下權限;
具體操作如下:
需要在證書管理下,個人-證書,選擇證書,右鍵所有任務-管理私鑰。選擇添加上運行sql server實例的用戶。
PS:有的SQL SERVER是獨立的用戶運行,選擇即可,如果自己沒有設置過,直接給 Everyone 權限即可 選擇 完全控制以及讀取兩個勾-具體看下圖;
延伸閱讀:
重啟sql server實例一直失敗,也可能直接提示“無法加載用戶指定的證書 [Cert Hash(sha1) ”這個錯誤。
但是解決方式都是這篇文章即可;
問題未解決?付費解決問題加Q或微信 2589053300 (即Q號又微信號)右上方掃一掃可加博主微信
所寫所說,是心之所感,思之所悟,行之所得;文當無敷衍,落筆求簡潔。 以所舍,求所獲;有所依,方所成!