溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

備份SQL Server數(shù)據(jù)庫(kù)到Azure Storage

發(fā)布時(shí)間:2020-03-01 06:23:04 來(lái)源:網(wǎng)絡(luò) 閱讀:2155 作者:wuyvzhang 欄目:云計(jì)算

對(duì)于生產(chǎn)數(shù)據(jù)來(lái)講,數(shù)據(jù)的安全性是至關(guān)重要的,任何數(shù)據(jù)的丟失都可能產(chǎn)生嚴(yán)重的的后果。而備份作為數(shù)據(jù)的副本,可以在當(dāng)數(shù)據(jù)庫(kù)出現(xiàn)故障或者遭到破壞時(shí)可以根據(jù)備份的數(shù)據(jù)庫(kù)及事務(wù)日志文件還原到最近的時(shí)間點(diǎn)將損失降到最低點(diǎn)。
對(duì)于傳統(tǒng)的備份來(lái)講,一般都是使用數(shù)據(jù)庫(kù)自帶的備份或使用第三方的備份軟件將數(shù)據(jù)庫(kù)備份到本地的磁盤/磁帶存儲(chǔ),這種備份方式的前提是需要有一個(gè)大的存儲(chǔ)池用來(lái)按照備份文件的生命周期來(lái)存儲(chǔ)我們的備份文件。這就意味著我們需要準(zhǔn)備一個(gè)大的存儲(chǔ)池??紤]到準(zhǔn)備存儲(chǔ)池需要一定得資源,那么很多小伙伴肯定就會(huì)問(wèn)了,我能否將數(shù)據(jù)庫(kù)備份到云?答案是可以得。那么接下來(lái)我們就一起來(lái)聊聊如何將SQL Server數(shù)據(jù)庫(kù)備份到云端和備份到云端所帶來(lái)的好處。
將數(shù)據(jù)庫(kù)備份到azure storage的好處如下:

  • 靈活、可靠、無(wú)限制的站點(diǎn)外存儲(chǔ):在 Microsoft Azure Blob 服務(wù)上存儲(chǔ)備份是一種既便捷靈活又易于訪問(wèn)的站點(diǎn)外存儲(chǔ)方法。 為SQL Server 備份創(chuàng)建站點(diǎn)外存儲(chǔ)就像修改現(xiàn)有腳本/作業(yè)一樣簡(jiǎn)單。 站點(diǎn)外存儲(chǔ)位置通常應(yīng)遠(yuǎn)離生產(chǎn)數(shù)據(jù)庫(kù)位置,以防止出現(xiàn)同時(shí)影響站點(diǎn)外和生產(chǎn)數(shù)據(jù)庫(kù)位置的一個(gè)災(zāi)難。 通過(guò)選擇地理復(fù)制 Blob 存儲(chǔ)區(qū),在發(fā)生可能影響整個(gè)區(qū)域的災(zāi)難時(shí)多了一層額外的保護(hù)。 此外,備份副本隨時(shí)隨地可用,并可以輕松訪問(wèn)它們來(lái)執(zhí)行還原。
  • 備份存檔:在對(duì)備份進(jìn)行存檔時(shí),Microsoft Azure Blob 存儲(chǔ)服務(wù)能夠提供可替代常用磁帶存儲(chǔ)方式的更好方式。 選擇磁帶存儲(chǔ)時(shí)可能需要將數(shù)據(jù)實(shí)際運(yùn)輸?shù)綀?chǎng)外設(shè)施,并且需要采取一些介質(zhì)保護(hù)措施。 在 Microsoft Azure Blob 存儲(chǔ)區(qū)中存儲(chǔ)備份可以提供一個(gè)即時(shí)、高度可用、耐久的存檔方案。
  • 無(wú)硬件管理開(kāi)銷:沒(méi)有有關(guān) Microsoft Azure 服務(wù)的硬件管理開(kāi)銷。 Microsoft Azure 服務(wù)管理硬件并支持地理復(fù)制以提供冗余和防止硬件故障。
  • 當(dāng)前對(duì)于在 Microsoft Azure 虛擬機(jī)中運(yùn)行的 SQL Server 實(shí)例,可以通過(guò)創(chuàng)建附加的磁盤來(lái)備份到 Microsoft Azure Blob 存儲(chǔ)服務(wù)。 但是,對(duì)于可以附加到 Microsoft Azure 虛擬機(jī)的磁盤數(shù)有限制。 限制值為:超大實(shí)例最多使用 16 個(gè)磁盤,較小的實(shí)例可使用的磁盤則更少。 通過(guò)允許直接備份到 Microsoft Azure Blob 存儲(chǔ)區(qū),你可以繞過(guò) 16 個(gè)磁盤的限制。
    此外,目前存儲(chǔ)在 Microsoft Azure Blob 存儲(chǔ)服務(wù)中的備份文件直接可用于本地 SQL Server 或在 Microsoft Azure 虛擬機(jī)中運(yùn)行的其他 SQL Server ,而無(wú)需進(jìn)行數(shù)據(jù)庫(kù)附加/分離或下載并附加 VHD。
  • 成本權(quán)益:只需要為使用的服務(wù)付費(fèi)。 可以作為經(jīng)濟(jì)合算的站點(diǎn)外備份存檔方案。

但是需要注意將SQL Server備份到Azure Storage需要確保數(shù)據(jù)庫(kù)SQL Server 2012 SP1 CU2及以上版本。

說(shuō)了這么多,下面我們就一起來(lái)看一下,如何將數(shù)據(jù)庫(kù)備份到Azure Storage。
首先我們需要準(zhǔn)備一個(gè)存儲(chǔ)賬戶:
備份SQL Server數(shù)據(jù)庫(kù)到Azure Storage

獲取access key,本次示例中我們使用access key的方式訪問(wèn)存儲(chǔ)賬戶:
備份SQL Server數(shù)據(jù)庫(kù)到Azure Storage

使用如下T-SQL在SQL中創(chuàng)建賬戶:

IF NOT EXISTS(SELECT * FROM sys.credentials

 WHERE credential_identity = ' bkuptour')

CREATE CREDENTIAL bkuptourl WITH IDENTITY = 'sql12bak', SECRET = '5amfZJpKLcR2lAfEBZod18VYbxZOPUbtKH9RowDQ3Ixv5sGMnSj5Lo/UbPb/zCCRKh/kAxnOaOS9oJELTVVoTg==';

創(chuàng)建完成后我們可以在存儲(chǔ)賬戶中創(chuàng)建一個(gè)container用來(lái)存儲(chǔ)備份文件:
備份SQL Server數(shù)據(jù)庫(kù)到Azure Storage

創(chuàng)建完成以后可以使用如下T-SQL將數(shù)據(jù)庫(kù)備份到Storage Account中:

DECLARE @DB_name VARCHAR(50) -- database name 

DECLARE @BackupLoc VARCHAR(256) -- path for backup files 

DECLARE @BackupfileName VARCHAR(256) -- filename for backup 

DECLARE @fileDate VARCHAR(20) -- used for file name

-- specify database backup container location

SET @BackupLoc = 'https://sql12bak.blob.core.chinacloudapi.cn/test/' 

set @fileDate= replace(replace(convert(nvarchar(50),getdate()),' ','_'),':','_')

DECLARE db_cursor CURSOR FOR 

SELECT name FROM master.sys.databases WHERE database_id <>2 and state=0

OPEN db_cursor  

FETCH NEXT FROM db_cursor INTO @DB_name  

WHILE @@FETCH_STATUS = 0  

BEGIN  

       SET @BackupfileName = @BackupLoc + @DB_name + '_' + @fileDate + '.BAK' 

       BACKUP DATABASE @DB_name TO URL = @BackupfileName  WITH CREDENTIAL = 'bkuptourl',COMPRESSION 

          print 'BACKUP DATABASE '+@DB_name+ ' TO URL ='''+ @BackupfileName  +''' WITH CREDENTIAL = ''bkuptourl'',COMPRESSION '

       FETCH NEXT FROM db_cursor INTO @DB_name  

END  

CLOSE db_cursor  

DEALLOCATE db_cursor

備份SQL Server數(shù)據(jù)庫(kù)到Azure Storage

備份完成,如下圖所示:
備份SQL Server數(shù)據(jù)庫(kù)到Azure Storage

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI