SQL Server(SQLExpress)TDSSNIClient初始化失敗無法初始化SSL支持(由于安全庫有問題,服務器無法初始化加密security.dll。”
[重要通告]如您遇疑難雜癥,本站支持知識付費業務,掃右邊二維碼加博主微信,可節省您寶貴時間哦!
這篇文章應該寫在11月7日,一直沒有來得及寫,今天整理一下,此刻還不知道題目如何命名,先說來源;
客戶說他家的金蝶KIS專業版V14.0無法啟動,無發鏈接了,出現“當前的數據連接不可用,可能是本機的賬套沒有建立”如下圖所示
這一看不就是數據庫沒有啟動或者數據庫錯誤么,然后打開數據庫啟動,發現并不然,竟然出現錯誤;sql server不能啟動,錯誤5023,如下圖所示;
然后打開Windows系統日志來看一下相關的錯誤,看有啥內部消息木有;然后就出現了好幾個錯誤信息;
第一個錯誤:SQL Server(SQLExpress)服務因組或資源的狀態不是執行請求操作的正確狀態。服務特定錯誤而停止;
馬上就出現第二個錯誤:
由于網絡庫中存在內部錯誤,所以無法啟動網絡庫。要確定原因,請查看錯誤日志中緊位于此錯誤之前的那些錯誤。
第二個錯誤的解決辦法多少是因為請修復或禁用 VIA 網絡協議,其實并無任何意義;
第三個錯誤:TDSSNIClient初始化失敗,出現錯誤 0x139f,狀態代碼 0x80。原因: 無法初始化SSL支持。 組或資源的狀態不是執行請求操作的正確狀態。
第四個錯誤:由于安全庫有問題,服務器無法初始化加密。可能是缺失安全庫。請驗證系統上是否存在security.dll。
看到最后,應該還是最后一條錯誤引起的“由于安全庫有問題服務器無法初始化加密。可能是缺失安全庫。請驗證系統上是否存在 security.dll。”這條才應該是最重要的;
由于安全庫有問題,服務器無法初始化加密。可能是缺失安全庫。請驗證系統上是否存在security.dll。
TDSSNIClient 初始化失敗,出現錯誤 0x139f,狀態代碼 0x80。
原因: 無法初始化 SSL 支持。 組或資源的狀態不是執行請求操作的正確狀態。
原因:服務器上使用的是SqlServer2008R2,缺少安全補丁,不支持TLS1.2。
解決:更新補丁KB3135244 - TLS 1.2 support for Microsoft SQL Server
https://support.microsoft.com/en-us/topic/kb3135244-tls-1-2-support-for-microsoft-sql-server-e4472ef8-90a9-13c1-e4d8-44aad198cdbe
需要對應sqlserver的版本,比如32位還是64位
需要注意sqlserver的語言版本中文和英文的補丁不互相通用.
SQLServer2008r2的數據庫不是SP3補丁解決的問題 還是需要先更新SP3的補丁包,然后再更新一個增量補丁進行處理.
其實這一切就是TLS 1.2 support for Microsoft SQL Server引起的,那就要么治療它,要么干掉它,干掉才是最快的!IE里禁用TSL1.2,服務器也可以啟動,如下圖所示
其實不管那種錯誤,最后解決問題才是王道,
其實這個問題在SQL SERVER 2014中也出現;
服務器上使用的是SqlServer2014,缺少安全補丁,不支持TLS1.2。
可以參考微軟說明:KB3135244 - TLS 1.2 support for Microsoft SQL Server
解決方案:更新對應版本的sp3補丁即可
其實網絡有篇文章寫的還是挺好的,https://blog.51cto.com/u_15127592/3300571 也可以去參閱一下!
問題未解決?付費解決問題加Q或微信 2589053300 (即Q號又微信號)右上方掃一掃可加博主微信
所寫所說,是心之所感,思之所悟,行之所得;文當無敷衍,落筆求簡潔。 以所舍,求所獲;有所依,方所成!