亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

SQL?Server?2022新功能之如何將數(shù)據(jù)庫(kù)備份到S3兼容的對(duì)象存儲(chǔ)

 更新時(shí)間:2025年02月10日 08:47:55   作者:樺仔  
本文介紹了如何使用SQL Server 2022將數(shù)據(jù)庫(kù)備份到S3兼容的對(duì)象存儲(chǔ),主要功能包括配置S3連接器、創(chuàng)建憑據(jù)、使用URL進(jìn)行備份和恢復(fù),并支持加密和壓縮選項(xiàng),此外,還討論了在Linux平臺(tái)上的特殊配置要求和區(qū)域參數(shù)的使用,感興趣的朋友一起看看吧

本文介紹將S3兼容的對(duì)象存儲(chǔ)用作數(shù)據(jù)庫(kù)備份目標(biāo)所需的概念、要求和組件。 數(shù)據(jù)庫(kù)備份和恢復(fù)功能在概念上類似于使用SQL Server備份到Azure Blob存儲(chǔ)的URL作為備份設(shè)備類型。

要注意的是,不只是amazon S3對(duì)象存儲(chǔ),只要兼容S3協(xié)議的對(duì)象存儲(chǔ)都可以備份。

對(duì)象存儲(chǔ)集成功能

SQL Server 2022(16.x)引入了對(duì)象存儲(chǔ)集成功能,使您可以將SQL Server與S3兼容的對(duì)象存儲(chǔ)集成。為了提供這種集成,SQL Server支持一個(gè)S3連接器,它使用S3 REST API連接到任何S3兼容的對(duì)象存儲(chǔ)提供商。SQL Server 2022(16.x)通過(guò)增加對(duì)使用REST API的新S3連接器的支持,擴(kuò)展了現(xiàn)有的BACKUP/RESTORE TO/FROM URL命令的語(yǔ)法。

  • 指向S3兼容資源的URL以s3://為前綴,表示正在使用S3連接器。以s3://開(kāi)頭的URL始終假定底層協(xié)議為https。

  • 文件編號(hào)和文件大小限制 為了存儲(chǔ)數(shù)據(jù),S3兼容對(duì)象存儲(chǔ)提供商必須將文件分割成多個(gè)稱為“部分”的塊,這類似于微軟Azure Blob存儲(chǔ)中的塊Blob。

S3端點(diǎn)的前提條件

S3端點(diǎn)必須按以下方式配置:

  • 1、必須配置TLS。假定所有連接將通過(guò)HTTPS而非HTTP進(jìn)行安全傳輸。端點(diǎn)通過(guò)安裝在SQL Server操作系統(tǒng)主機(jī)上的證書(shū)進(jìn)行驗(yàn)證。

  • 2、在S3兼容的對(duì)象存儲(chǔ)中創(chuàng)建憑據(jù),具有執(zhí)行操作所需的適當(dāng)權(quán)限。在存儲(chǔ)層上創(chuàng)建的用戶和密碼被稱為訪問(wèn)密鑰ID(Access Key ID)和秘密密鑰ID(Secret Key ID)。您需要這兩個(gè)密鑰才能對(duì)S3端點(diǎn)進(jìn)行身份驗(yàn)證。

  • 3、至少配置了一個(gè)存儲(chǔ)桶。

Linux平臺(tái)支持

SQL Server使用 WinHttp 實(shí)現(xiàn)其所使用的HTTP REST API客戶端。它依賴操作系統(tǒng)證書(shū)存儲(chǔ)來(lái)驗(yàn)證由HTTP(S)端點(diǎn)提供的TLS證書(shū)。然而,在Linux平臺(tái)上運(yùn)行的SQL Server的CA證書(shū)必須放置在一個(gè)預(yù)定義的位置,即/var/opt/mssql/security/ca-certificates 文件夾中,且該文件夾最多只能存儲(chǔ)和支持前50個(gè)證書(shū)。在啟動(dòng)SQL Server進(jìn)程之前,必須將CA證書(shū)放置在該位置。SQL Server在啟動(dòng)時(shí)從該文件夾讀取證書(shū),并將它們添加到信任存儲(chǔ)中。

示例

  • 創(chuàng)建憑據(jù)

憑據(jù)的名稱應(yīng)提供存儲(chǔ)路徑,并且根據(jù)存儲(chǔ)平臺(tái)的不同有多個(gè)標(biāo)準(zhǔn)。

當(dāng)使用S3連接器時(shí),IDENTITY應(yīng)始終為 'S3 Access Key'。 Access Key ID和Secret Key ID中不得包含冒號(hào)。 Access Key ID和Secret Key ID是在S3兼容的對(duì)象存儲(chǔ)上創(chuàng)建的用戶名和密碼。 Access Key ID 必須具有適當(dāng)?shù)臋?quán)限來(lái)訪問(wèn)S3兼容的對(duì)象存儲(chǔ)中的數(shù)據(jù)。 使用CREATE CREDENTIAL創(chuàng)建服務(wù)器級(jí)憑據(jù)以進(jìn)行與S3兼容的對(duì)象存儲(chǔ)端點(diǎn)的身份驗(yàn)證。

AWS S3 支持兩種不同的 URL 標(biāo)準(zhǔn)。

S3://<BUCKET_NAME>.S3.<REGION>.AMAZONAWS.COM/<FOLDER>(默認(rèn))
S3://S3.<REGION>.AMAZONAWS.COM/<BUCKET_NAME>/<FOLDER>

代碼如下:

USE [master];
GO
CREATE CREDENTIAL [s3://<endpoint>:<port>/<bucket>]
WITH
        IDENTITY    = 'S3 Access Key',
        SECRET      = '<AccessKeyID>:<SecretKeyID>';
GO
BACKUP DATABASE [SQLTestDB]
TO      URL = 's3://<endpoint>:<port>/<bucket>/SQLTestDB.bak'
WITH    FORMAT ,STATS = 10, COMPRESSION;

有多種方法可以為AWS的S3對(duì)象存儲(chǔ)創(chuàng)建憑據(jù)。

  • S3 存儲(chǔ)桶名稱:datavirtualizationsample
  • S3 存儲(chǔ)桶區(qū)域:us-west-2
  • S3 存儲(chǔ)桶文件夾:backup
CREATE CREDENTIAL [s3://datavirtualizationsample.s3.us-west-2.amazonaws.com/backup]
WITH    
        IDENTITY    = 'S3 Access Key'
,       SECRET      = 'accesskey:secretkey';
GO
BACKUP DATABASE [AdventureWorks2022]
TO URL  = 's3://datavirtualizationsample.s3.us-west-2.amazonaws.com/backup/AdventureWorks2022.bak'
WITH COMPRESSION, FORMAT, MAXTRANSFERSIZE = 20971520;
GO
--或者
CREATE CREDENTIAL [s3://s3.us-west-2.amazonaws.com/datavirtualizationsample/backup]
WITH    
        IDENTITY    = 'S3 Access Key'
,       SECRET      = 'accesskey:secretkey';
GO
BACKUP DATABASE [AdventureWorks2022]
TO URL  = 's3://s3.us-west-2.amazonaws.com/datavirtualizationsample/backup/AdventureWorks2022.bak'
WITH COMPRESSION, FORMAT, MAXTRANSFERSIZE = 20971520;
GO

備份到 URL和從 URL 恢復(fù)

備份到 URL

以下示例將執(zhí)行完整的數(shù)據(jù)庫(kù)進(jìn)行備份文件分割,然后備份到對(duì)象存儲(chǔ)端點(diǎn):
BACKUP DATABASE <db_name>
TO      URL = 's3://<endpoint>:<port>/<bucket>/<database>_01.bak'
,       URL = 's3://<endpoint>:<port>/<bucket>/<database>_02.bak'
,       URL = 's3://<endpoint>:<port>/<bucket>/<database>_03.bak'
WITH    FORMAT ,STATS = 10, COMPRESSION;

從 URL 恢復(fù)

以下示例將從對(duì)象存儲(chǔ)端點(diǎn)位置執(zhí)行數(shù)據(jù)庫(kù)恢復(fù):
RESTORE DATABASE <db_name>
FROM    URL = 's3://<endpoint>:<port>/<bucket>/<database>_01.bak'
,       URL = 's3://<endpoint>:<port>/<bucket>/<database>_02.bak'
,       URL = 's3://<endpoint>:<port>/<bucket>/<database>_03.bak'
WITH    REPLACE ,  STATS  = 10;

加密和壓縮備份選項(xiàng)

以下示例展示如何使用加密和壓縮來(lái)備份和恢復(fù) AdventureWorks2022 數(shù)據(jù)庫(kù):

CREATE MASTER KEY ENCRYPTION BY PASSWORD = <password>;
GO
CREATE CERTIFICATE AdventureWorks2022Cert
    WITH SUBJECT = 'AdventureWorks2022 Backup Certificate';
GO
-- 備份數(shù)據(jù)庫(kù)
BACKUP DATABASE AdventureWorks2022
TO URL = 's3://<endpoint>:<port>/<bucket>/AdventureWorks2022_Encrypt.bak'
WITH FORMAT, COMPRESSION,
ENCRYPTION (ALGORITHM = AES_256, SERVER CERTIFICATE = AdventureWorks2022Cert)
GO
-- 恢復(fù)數(shù)據(jù)庫(kù)
RESTORE DATABASE AdventureWorks2022
FROM URL = 's3://<endpoint>:<port>/<bucket>/AdventureWorks2022_Encrypt.bak'
WITH REPLACE

使用區(qū)域參數(shù)進(jìn)行備份和恢復(fù)

以下示例展示如何使用REGION_OPTIONS選項(xiàng)進(jìn)行備份和恢復(fù) AdventureWorks2022 數(shù)據(jù)庫(kù):

您可以在每個(gè)BACKUP / RESTORE命令中添加區(qū)域參數(shù)。 請(qǐng)注意,在BACKUP_OPTIONS和RESTORE_OPTIONS中使用了S3存儲(chǔ)特定的區(qū)域字符串, 例如 '{"s3": {"region":"us-west-2"}}'。默認(rèn)區(qū)域是 us-east-1。

-- 備份數(shù)據(jù)庫(kù)
BACKUP DATABASE AdventureWorks2022
TO URL = 's3://<endpoint>:<port>/<bucket>/AdventureWorks2022.bak'
WITH BACKUP_OPTIONS = '{"s3": {"region":"us-west-2"}}'
-- 恢復(fù)數(shù)據(jù)庫(kù)
RESTORE DATABASE AdventureWorks2022
FROM URL = 's3://<endpoint>:<port>/<bucket>/AdventureWorks2022.bak'
WITH  RESTORE_OPTIONS = '{"s3": {"region":"us-west-2"}}'

SQL Server 2008的壓縮備份是一個(gè)新特性,根據(jù)實(shí)際使用中的觀察,壓縮比至少在1:5左右,也就是備份時(shí)增加了壓縮選項(xiàng)(COMPRESSION)后可以至少壓縮到數(shù)據(jù)文件大小的20%甚至更低,
可以很大程度上加快備份執(zhí)行時(shí)間,減輕IO壓力和節(jié)省備份服務(wù)器的磁盤存儲(chǔ)空間。

-- 備份數(shù)據(jù)庫(kù)
BACKUP DATABASE SQLTestDB TO DISK = 'c:\tmp\SQLTestDB.bak'  WITH stats =5 , COMPRESSION 
GO

總結(jié)

SQL Server 2022通過(guò)新引入的S3連接器,SQL Server能夠支持通過(guò)REST API與S3兼容存儲(chǔ)集成。用戶可以配置存儲(chǔ)桶和憑據(jù),通過(guò)URL指向存儲(chǔ)位置進(jìn)行備份和恢復(fù)。此外,還提供了加密、壓縮等備份選項(xiàng),以及在Linux平臺(tái)上的特殊配置要求。示例展示了如何創(chuàng)建憑據(jù)、執(zhí)行備份和恢復(fù)操作,支持區(qū)域參數(shù)指定備份和恢復(fù)的地域。

參考文章

https://learn.microsoft.com/en-us/sql/relational-databases/backup-restore/sql-server-backup-to-url-s3-compatible-object-storage?view=sql-server-ver16&viewFallbackFrom=sql-server-ver15

https://aws.amazon.com/cn/blogs/modernizing-with-aws/backup-sql-server-to-amazon-s3/

https://www.mssqltips.com/sqlservertip/7302/backup-sql-server-2022-database-aws-s3-storage/

到此這篇關(guān)于SQL Server 2022新功能:將數(shù)據(jù)庫(kù)備份到S3兼容的對(duì)象存儲(chǔ)的文章就介紹到這了,更多相關(guān)SQL Server數(shù)據(jù)庫(kù)備份到S3兼容的對(duì)象存儲(chǔ)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • sql語(yǔ)句LEFT?JOIN拼接表詳解

    sql語(yǔ)句LEFT?JOIN拼接表詳解

    這篇文章主要介紹了sql語(yǔ)句LEFT?JOIN拼接表詳解,需要的朋友可以參考下
    2023-05-05
  • sql server中死鎖排查的全過(guò)程分享

    sql server中死鎖排查的全過(guò)程分享

    死鎖是指在一組進(jìn)程中的各個(gè)進(jìn)程均占有不會(huì)釋放的資源,但因互相申請(qǐng)被其他進(jìn)程所站用不會(huì)釋放的資源而處于的一種永久等待狀態(tài)。下面這篇文章主要給大家介紹了關(guān)于sql server中死鎖排查的相關(guān)資料,需要的朋友可以參考下
    2018-05-05
  • SQL?Server無(wú)法連接服務(wù)器的幾種情況分析解決

    SQL?Server無(wú)法連接服務(wù)器的幾種情況分析解決

    在我們使用SQL的時(shí)候可能會(huì)遇到無(wú)法連接到服務(wù)器錯(cuò)誤,下面這篇文章主要給大家介紹了關(guān)于SQL?Server無(wú)法連接服務(wù)器的幾種情況分析解決,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2023-10-10
  • SQL中not in與null值的具體使用

    SQL中not in與null值的具體使用

    本文主要介紹了SQL中not in與null值的具體使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-01-01
  • Oracle中sql語(yǔ)句如何執(zhí)行日志查詢

    Oracle中sql語(yǔ)句如何執(zhí)行日志查詢

    這篇文章主要介紹了Oracle中sql語(yǔ)句如何執(zhí)行日志查詢,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • 深入C++ string.find()函數(shù)的用法總結(jié)

    深入C++ string.find()函數(shù)的用法總結(jié)

    本篇文章是對(duì)C++中string.find()函數(shù)的用法進(jìn)行了詳細(xì)的總結(jié)與分析,需要的朋友參考下
    2013-05-05
  • SQL 判斷給定日期值(或時(shí)間段)所在星期的星期一和星期天的日期

    SQL 判斷給定日期值(或時(shí)間段)所在星期的星期一和星期天的日期

    最近報(bào)表要用到一項(xiàng)功能,需要把數(shù)據(jù)源根據(jù)記錄發(fā)生日期所在的星期序列進(jìn)行分組。因此就寫(xiě)了兩個(gè)相關(guān)SQL Function進(jìn)行調(diào)用。
    2011-10-10
  • sql 觸發(fā)器使用例子

    sql 觸發(fā)器使用例子

    觸發(fā)器里沒(méi)有updated ,只有inserted 和deleted兩個(gè)臨時(shí)表。
    2009-07-07
  • 數(shù)據(jù)庫(kù)日常練習(xí)題,每天進(jìn)步一點(diǎn)點(diǎn)(2)

    數(shù)據(jù)庫(kù)日常練習(xí)題,每天進(jìn)步一點(diǎn)點(diǎn)(2)

    下面小編就為大家?guī)?lái)一篇數(shù)據(jù)庫(kù)基礎(chǔ)的幾道練習(xí)題(分享)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧,希望可以幫到你
    2021-07-07
  • 數(shù)據(jù)庫(kù)表的查詢操作實(shí)踐演練(實(shí)驗(yàn)三)

    數(shù)據(jù)庫(kù)表的查詢操作實(shí)踐演練(實(shí)驗(yàn)三)

    這篇文章主要對(duì)數(shù)據(jù)庫(kù)表的查詢操作進(jìn)行實(shí)踐演練,針對(duì)實(shí)驗(yàn)一和實(shí)驗(yàn)二涉及到的內(nèi)容進(jìn)一步深入學(xué)習(xí),進(jìn)一步理解關(guān)系運(yùn)算,鞏固數(shù)據(jù)庫(kù)的基礎(chǔ)知識(shí),感興趣的小伙伴可以參考一下
    2015-08-08

最新評(píng)論