Sign in with Microsoft
Sign in or create an account.
Hello,
Select a different account.
You have multiple accounts
Choose the account you want to sign in with.

徵狀

假設您使用的是 Microsoft SQL Server 2012、2014或2016。 當您將資料庫備份到 Microsoft Azure Blob 儲存服務 URL 時,該作業可能失敗, 而且您會在用戶端和 SQL Server 錯誤記錄中收到下列錯誤訊息。

SQL Server 用戶端錯誤

Msg 3271、Level 16、State 1、Line LineNumber 在檔案「HTTPs://<> BlobStorageServerName 上發生無法恢復的 i/o 錯誤。 blob.core.windows.net/sqlbackup/<DB_Backup_Name .bak> "備份到 URL 收到來自遠端端點的例外狀況。 例外狀況訊息:基礎連線已關閉:接收時發生意外的錯誤。 Msg 3013、Level 16、State 1、Line LineNumber 備份資料庫異常終止。

SQL Server 錯誤記錄

<DateTime>    ======== BackupToUrl Initiated =========
<DateTime> Inputs: Backup = True, PageBlob= True, URI = https://<BlobStorageServerName>.blob.core.windows.net/sqlbackup/<DB_Backup_Name.bak>, Acct= lbtesting2096, Key= KeyValue, FORMAT= False, Instance Name = MSSQLSERVER, DBName = <DB_Name> LogPath = C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Log
<DateTime>    Process Id: 3668
<DateTime>     Time for Initialization = 202.7451 ms
<DateTime>    BackupToUrl Client is getting configuration from SqlServr
<DateTime>    Time for Handshake and VDI config = 31.2507 ms
<DateTime>    Time for Get BlobRef = 15.6263 ms
<DateTime>    Time for - EXCEPTION Get Fetchattributes = 45364.4979 ms
<DateTime>    An exception occurred during communication with Azure Storage, exception information follows
<DateTime>    Exception Info: The underlying connection was closed: An unexpected error occurred on a receive.
<DateTime>    Stack:    at Microsoft.WindowsAzure.Storage.Core.Executor.Executor.ExecuteSync[T](StorageCommandBase`1 cmd, IRetryPolicy policy, OperationContext operationContext)
   at BackupToUrl.Program.MainInternal(String[] args)
<DateTime>    The Active queue had 1 requests until we got a clear error.

如果您的用戶端伺服器已啟用使用下列登錄的傳輸層安全性(TLS)通訊協定版本1.2,就會發生此錯誤。

登錄機碼名稱: 

HKEY_LOCAL_MACHINE \SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2 \ 用戶端 值0 名稱: Enabled 類型: REG_DWORD 資料:0x1

解決方案

此問題已在 SQL Server 2014 和2016的下列累積更新中修正:

SQL Server 2016 RTM 的累積更新7

SQL Server 2016 SP1 的累積更新4

SQL Server 2014 SP2 累積更新5

每個新的 SQL Server 累計更新都包含所有的修正程式,以及前一個累積更新中所包含的所有安全性修正程式。 查看 SQL Server 的最新累計更新:

SQL Server 2016 的最新累計更新

SQL Server 2014 的最新累計更新

 

SQL Server 2012 的因應措施

如果已安裝的 .Net Framework 具備 TLS 1.0 的喜好設定,但它支援 TLS 1.2,就會發生此問題。 

SQL Server 2012 沒有可用的修正程式。 若要解決 SQL Server 2012 啟用強式密碼密碼的問題,您可以執行下列動作: 

  • 備份註冊表

  • 開啟 [登錄編輯程式],然後流覽至下列登錄子項: HKLM\software\Wow6432Node\Microsoft.NETFramework\ 和 HKLM\software\microsoft.NETFramework\

  • 在這些金鑰的每個登錄機碼底下,版本號碼(例如 v 4.5、v 4.5.1)都存在。 針對每個版本,新增一個名為 SchUseStrongCrypto 的 DWORD 值(值為 1 )。

  • 在 [HKLM\Software\Microsoft.NetFramework] 下,金鑰名稱不一定必須是4.5 或4.5.1。 大多會從 v 2.0 xxx、v 3.0 xxx v 4.0 xxx開始。 必須針對所有可用的版本,新增名為「SchUseStrongCrypto」的 DWORD 值(值為1)。

  • 重新開機 SQL Server 電腦。

您也可以嘗試安裝 .Net Framework 4.8。 根據預設,.NET Framework 4.7 及更新版本會設定為使用 TLS 1.2,並允許使用 TLS 1.1 或 TLS 1.0 的連線。

參考

瞭解 Microsoft 用於描述軟體更新的 詞彙

狀態

Microsoft 已確認<適用於>一節所列的 Microsoft 產品確實有上述問題。

Need more help?

Want more options?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。

Was this information helpful?

How satisfied are you with the translation quality?
What affected your experience?
By pressing submit, your feedback will be used to improve Microsoft products and services. Your IT admin will be able to collect this data. Privacy Statement.

Thank you for your feedback!

×