在最近幾個版本的 SQL Server Express 或 Developer , 都是先下載安裝程式後,透過安裝程式進行網路下載或安裝,但是最近開始 SQL Server 2019 似乎沒有辦法正常下載了。
最近因為要準備一個新的課程,因此會需要準備 SQL Server 2019 Developer 版本的安裝程式,以往對於我來說,就會很直接地從 MSDN 或者是後來的 Visual Studio 的網站上,利用 MVP 或 MCT 的身份去下載 ISO 檔案,但是因為上課的環境並非是我預備的,因此就整理一下下載 ISO 檔案的步驟,通知開課單位來預備檔案。
但是從四月份開始,陸續有收到一些朋友或同事詢問的問題,紛紛表示無法下載 SQL Server 2019 Express 或者是 SQL Server 2019 Developer 的版本,原本我想說大概是網路問題或者是有甚麼異常,才導致有那樣的狀況發生,因此也不以為是甚麼問題。但就在要上課前,開課單位也通知我說檔案無法下載,要我自己想辦法,因此我才發覺到這可能真的是有狀況發生了。
因為我自己平常會使用 Windows Server 2022 的環境在做事情,當我嘗試下載 SQL Server 2019 Developer 的安裝程式,看起來也都蠻正常的。
但是當我用我家裡的 PC,或者是我公司在使用的 NB 上面的 Windows 10 的環境,也是同樣的安裝程式,但卻會類似以下的畫面發生。
剛好最近在處理一些問題的時候,都是因為部分網站或服務,開始紛紛關閉舊版本的 TLS 1.0 或 TLS 1.1 的支援,因此我就試試看朝向這個方向去找解決的方法,剛好看到一些類似的討論,在 MSDN 上有個相關的說明 ( .NET Framework 的傳輸層安全性 (TLS) 最佳做法 - .NET Framework | Microsoft Docs ) , 而我也檢查一下我的 NB 上面的 Windows 10 下面的設定,看起來並沒有文件上說明的 SchUseStrongCrypto 設定,難道問題就是在這裡嗎 ?
因此我開啟 PowerShell 的環境,參考文件上做了相關設定,把 32 位元和 64 位元的機碼都做了調整 ( 但基本上應該只要設定 64 位元的就可以了 )
Set-ItemProperty -Path 'HKLM:\SOFTWARE\Wow6432Node\Microsoft\.NetFramework\v4.0.30319' -Name 'SchUseStrongCrypto' -Value '1' -Type Dword
Set-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\.NetFramework\v4.0.30319' -Name 'SchUseStrongCrypto' -Value '1' -Type Dword
透過上述設定完畢之後,我再重新執行安裝程式,果然就不會再出現原本的錯誤訊息了,就可以正常安裝和下載了。
在前面的安裝和測試,我都是使用 SQL Server Developer 版本,原本在測試 SQL Server Express 的時候,也會有同樣的錯誤訊息,但是就算我修改了機碼,SQL Server 2019 Express 似乎還是有問題
如果有同樣問題的朋友,在目前還沒有新的解法出來之前,您可以使用幾種方式來安裝 Express
- 請可以下載 SQL Server 2019 Express 的人員協助您下載 SQL Server 2019 Express 的完整安裝程式,檔案大小 266,708KB
- 按照前面的方式下載 SQL Server 2019 Developer 版本,安裝的時候選擇要安裝 Express 版本