Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a: SQL Server 2022 (16.x)
Questa guida di avvio rapido contiene nozioni utili sulla scrittura di backup nel servizio di oggetti compatibile con S3 e sul ripristino dallo stesso.
Nota
SQL Server 2022 ha introdotto il supporto per il backup e il ripristino da un archivio oggetti compatibile con S3. SQL Server 2019 e versioni precedenti non supportano questa funzionalità.
Prerequisiti
Per completare questa guida di avvio rapido è necessario conoscere i concetti di backup e ripristino di SQL Server e la sintassi di Transact-SQL (T-SQL). Sono necessari un endpoint S3, SQL Server Management Studio (SSMS) e l'accesso a un server che esegue SQL Server o Istanza gestita di SQL di Azure. Inoltre, l'account usato per eseguire i comandi BACKUP e RESTORE deve trovarsi nel ruolo del database db_backupoperator
con autorizzazioni ALTER ANY CREDENTIAL e disporre delle autorizzazioni CREATE DATABA edizione Standard per RESTORE in un nuovo database oppure essere membro del ruolo predefinito del server sysadmin e dbcreator oppure del proprietario (dbo) del database se si esegue il ripristino su un database esistente.
- Creare un endpoint S3.
- Installare SQL Server Management Studio.
- Installare SQL Server 2022 Developer Edition o distribuire Istanza gestita di SQL di Azure con connettività stabilita tramite una macchina virtuale SQL di Azure o da punto a sito.
- Assegnare l'account utente al ruolo db_backupoperator e concedere le autorizzazioni Modifica qualsiasi credenziale.
- Assegnare l'account utente al ruolo predefinito sysadmin o dbcreator oppure rendere l'utente proprietario del database esistente.
Creare un database di test
In questo passaggio viene creato un database di test tramite SQL Server Management Studio (SSMS).
Avviare SQL Server Management Studio (SSMS) e connettersi all'istanza di SQL Server.
Aprire una finestra Nuova query.
Eseguire il codice Transact-SQL (T-SQL) seguente per creare il database di test. Aggiornare il nodo Database in Esplora oggetti per vedere il nuovo database. Per i nuovi database creati in Istanza gestita di SQL la funzionalità Transparent Data Encryption viene abilitata automaticamente ed è quindi necessario disabilitarla per continuare.
USE [master]; GO -- Create database CREATE DATABASE [SQLTestDB]; GO -- Create table in database USE [SQLTestDB]; GO CREATE TABLE SQLTest ( ID INT NOT NULL PRIMARY KEY, c1 VARCHAR(100) NOT NULL, dt1 DATETIME NOT NULL DEFAULT GETDATE() ); GO -- Populate table USE [SQLTestDB]; GO INSERT INTO SQLTest (ID, c1) VALUES (1, 'test1'); INSERT INTO SQLTest (ID, c1) VALUES (2, 'test2'); INSERT INTO SQLTest (ID, c1) VALUES (3, 'test3'); INSERT INTO SQLTest (ID, c1) VALUES (4, 'test4'); INSERT INTO SQLTest (ID, c1) VALUES (5, 'test5'); GO SELECT * FROM SQLTest; GO -- Disable TDE for newly-created databases on SQL Managed Instance USE [SQLTestDB]; GO ALTER DATABASE [SQLTestDB] SET ENCRYPTION OFF; GO DROP DATABASE ENCRYPTION KEY; GO
Creare le credenziali
Per creare credenziali di SQL Server per l'autenticazione, seguire questa procedura:
Avviare SQL Server Management Studio (SSMS) e connettersi all'istanza di SQL Server.
Aprire una finestra Nuova query.
Creare una credenziale a livello di server Il nome della credenziale dipende dalla piattaforma di archiviazione compatibile con S3. A differenza delle credenziali con ambito database PolyBase, le credenziali di backup/ripristino vengono archiviate a livello di istanza. Se usato con l'archiviazione compatibile con S3, le credenziali devono essere denominate in base al percorso URL.
CREATE CREDENTIAL [s3://<endpoint>:<port>/<bucket>] WITH IDENTITY = 'S3 Access Key', SECRET = '<AccessKeyID>:<SecretKeyID>'; GO
Nota
Per altri esempi di archiviazione compatibile con S3 con le credenziali del server, vedere CREATE CREDENTIAL (Transact-SQL).
Eseguire il backup del database
In questo passaggio eseguire il backup del database SQLTestDB
nell'archivio oggetti compatibile con S3 usando T-SQL.
Eseguire il backup del database tramite T-SQL con il comando seguente:
USE [master];
GO
BACKUP DATABASE [SQLTestDB]
TO URL = 's3://<endpoint>:<port>/<bucket>/SQLTestDB.bak'
WITH FORMAT /* overwrite any existing backup sets */
, STATS = 10
, COMPRESSION;
Elimina database
In questo passaggio si eliminerà il database prima di eseguire il ripristino. Questo passaggio è necessario solo per gli scopi di questa esercitazione, ma è improbabile che venga usato nelle normali procedure di gestione del database. È possibile ignorare questo passaggio, ma in questo caso è necessario modificare il nome del database durante il ripristino in un'istanza gestita di SQL di Azure oppure eseguire il comando di ripristino WITH REPLACE
per ripristinare correttamente il database in locale.
- Espandere il nodo Database in Esplora oggetti, fare clic con il pulsante destro del mouse sul database
SQLTestDB
e selezionare Elimina per avviare la procedura guidata Elimina oggetto. - In un'istanza gestita di SQL di Azure selezionare OK per eliminare il database. In locale selezionare la casella di controllo accanto a Chiudi connessioni esistenti e quindi selezionare OK per eliminare il database.
RESTORE DATABASE
In questo passaggio si ripristinerà il database usando l'interfaccia utente grafica in SQL Server Management Studio o tramite Transact-SQL.
Fare clic con il pulsante destro del mouse sul nodo Database in Esplora oggetti all'interno di SQL Server Management Studio e selezionare Ripristina database.
Selezionare Dispositivo e quindi i puntini di sospensione (...) per scegliere il dispositivo.
Selezionare l'URL nell'elenco a discesa Tipo di supporti di backup e selezionare Aggiungi per aggiungere il dispositivo.
Immettere l'URL dell'host virtuale, l'ID chiave privata e l'ID chiave di accesso per l'archiviazione oggetti compatibile con S3.
Selezionare OK per selezionare il percorso del file di backup.
Selezionare OK per chiudere la finestra di dialogo Seleziona dispositivi di backup.
Selezionare OK per ripristinare il database.
Contenuto correlato
Di seguito sono indicate alcune letture suggerite per comprendere i concetti e le procedure consigliate quando si usa il servizio di archiviazione di oggetti compatibile con S3 per i backup di SQL Server.