Dela via


Snabbstart: SQL-säkerhetskopiering och återställning till Azure Blob Storage

Gäller för: SQL Server 2016 (13.x) och senare versioner Azure SQL Managed Instance

Den här snabbstarten hjälper dig att förstå hur du skriver säkerhetskopior till och återställer från Azure Blob Storage. I artikeln beskrivs hur du skapar en Azure Blob Storage-container, skriver en säkerhetskopia till Azure Blob Storage och sedan utför en återställning.

Anmärkning

SQL Server 2012 SP1 CU2 introducerade stöd för säkerhetskopiering till Azure Blob Storage. SQL Server 2014 och tidigare stöder inte signaturen för delad åtkomst (SAS) som beskrivs i den här snabbstartsartikeln.

För SQL Server 2014 och tidigare använder du Självstudie: SÄKERHETSKOPIERing och återställning av SQL Server 2014 till Microsoft Azure Blob Storage.

Förutsättningar

För att slutföra den här snabbstarten måste du känna till begreppen säkerhetskopiering och återställning av SQL Server och T-SQL-syntax. Du behöver ett Azure Storage-konto, SQL Server Management Studio (SSMS) och åtkomst till antingen en server som kör SQL Server eller Azure SQL Managed Instance. Dessutom bör det konto som används för att utfärda kommandona BACKUP och RESTORE finnas i db_backupoperator databasrollen med ändra eventuella behörigheter för autentiseringsuppgifter .

Skapa Azure Blob Storage-container

En container tillhandahåller en gruppering av en uppsättning blobar. Alla blobar måste finnas i en container. Ett lagringskonto kan innehålla ett obegränsat antal containrar, men måste ha minst en container. En container kan lagra ett obegränsat antal blobar.

Följ dessa steg för att skapa en container:

  1. Öppna Azure-portalen.

  2. Gå till ditt lagringskonto.

  3. Välj lagringskontot och rulla ned till Blob Services.

  4. Välj Blobar och välj sedan + Container för att lägga till en ny container.

  5. Ange namnet på containern och anteckna det containernamn som du angav. Den här informationen används i URL:en (sökväg till säkerhetskopieringsfilen) i T-SQL-uttrycken senare i den här snabbstarten.

  6. Välj OK.

    Ny container

Anmärkning

Autentisering till lagringskontot krävs för säkerhetskopiering och återställning av SQL Server även om du väljer att skapa en offentlig container. Du kan också skapa en container programmatiskt med hjälp av REST-API:er. Mer information finns i Skapa container

Skapa en testdatabas

I det här steget skapar du en testdatabas med SQL Server Management Studio (SSMS).

  1. Starta SQL Server Management Studio (SSMS) och anslut till din SQL Server-instans.
  2. Öppna ett nytt frågefönster.
  3. Kör följande Transact-SQL -kod (T-SQL) för att skapa testdatabasen. Uppdatera noden Databaser i Object Explorer för att se den nya databasen. Nyligen skapade databaser på SQL Managed Instance har automatiskt TDE aktiverat så du måste inaktivera det för att fortsätta.
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

Skapa autentiseringsuppgifter

Använd GUI i SQL Server Management Studio för att skapa autentiseringsuppgifterna genom att följa stegen nedan. Du kan också skapa autentiseringsuppgifterna programmatiskt .

  1. Utvidga noden Databaser i Object Explorer i SQL Server Management Studio (SSMS).

  2. Högerklicka på den nya SQLTestDB databasen, hovra över Uppgifter och välj sedan Säkerhetskopiera... för att starta guiden Säkerhetskopiera databas .

  3. Välj URL i listrutan Säkerhetskopiera till mål och välj sedan Lägg till för att starta dialogrutan Välj mål för säkerhetskopiering .

    Säkerhetskopiera till URL

  4. Välj Ny container i dialogrutan Välj mål för säkerhetskopiering för att starta fönstret Anslut till en Microsoft-prenumeration .

    Skärmbild av dialogrutan Välj mål för säkerhetskopiering med alternativet Ny container markerat.

  5. Logga in på Azure-portalen genom att välja Logga in... och fortsätt sedan genom inloggningsprocessen.

  6. Välj din prenumeration från drop-drown.

  7. Välj ditt lagringskonto i listrutan.

  8. Välj den container som du skapade tidigare i listrutan.

  9. Välj Skapa autentiseringsuppgifter för att generera din signatur för delad åtkomst (SAS). Spara det här värdet eftersom du behöver det för återställningen.

    Skapa autentiseringsuppgifter

  10. Välj OK för att stänga fönstret Anslut till en Microsoft-prenumeration . Detta fyller i värdet för Azure Storage-containern i dialogrutan Välj mål för säkerhetskopiering . Välj OK för att välja den valda lagringscontainern och stäng dialogrutan.

  11. Nu kan du antingen gå vidare till steg 4 i nästa avsnitt för att säkerhetskopiera databasen eller stänga guiden Säkerhetskopiera databas om du vill fortsätta med att använda Transact-SQL för att säkerhetskopiera databasen i stället.

Säkerhetskopiera databas

I det här steget säkerhetskopierar du databasen SQLTestDB till ditt Azure Blob Storage-konto med antingen GUI i SQL Server Management Studio eller Transact-SQL (T-SQL).

  1. Om guiden Säkerhetskopiera databas inte redan är öppen expanderar du noden Databaser i Object Explorer i SQL Server Management Studio (SSMS).

  2. Högerklicka på den nya SQLTestDB databasen, hovra över Uppgifter och välj sedan Säkerhetskopiera... för att starta guiden Säkerhetskopiera databas .

  3. Välj URL i listrutan Säkerhetskopiera till och välj sedan Lägg till för att starta dialogrutan Välj mål för säkerhetskopiering .

    Säkerhetskopiera till URL

  4. Välj den container som du skapade i föregående steg i listrutan Azure Storage-container .

    Azure Storage-container

  5. Välj OK i guiden Säkerhetskopiera databas för att säkerhetskopiera databasen.

  6. Välj OK när databasen har säkerhetskopierats för att stänga alla säkerhetskopieringsrelaterade fönster.

    Tips/Råd

    Du kan skapa skript för Transact-SQL bakom det här kommandot genom att välja Skript överst i guiden Säkerhetskopiera databas : Skriptkommando

Ta bort databas

I det här steget tar du bort databasen innan du utför återställningen. Det här steget är bara nödvändigt för den här självstudien, men kommer sannolikt inte att användas i vanliga procedurer för databashantering. Du kan hoppa över det här steget, men sedan måste du antingen ändra namnet på databasen under återställningen på en hanterad instans eller köra återställningskommandot WITH REPLACE för att återställa databasen lokalt.

  1. Expandera noden Databaser i Objektutforskaren, högerklicka på SQLTestDB databasen och välj Ta bort för att starta guiden Ta bort objekt .
  2. På en hanterad instans väljer du OK för att ta bort databasen. Lokalt markerar du kryssrutan bredvid Stäng befintliga anslutningar och väljer sedan OK för att ta bort databasen.

Återställa databas

I det här steget återställer du databasen med antingen GUI i SQL Server Management Studio eller med Transact-SQL.

  1. Högerklicka på noden Databaser i Object Explorer i SQL Server Management Studio och välj Återställ databas.

  2. Välj Enhet och välj sedan ellipserna (...) för att välja enheten.

    Välj återställ enhet

  3. Välj URL i listrutan Säkerhetskopieringsmediatyp och välj Lägg till för att lägga till enheten.

    Lägga till en säkerhetskopieringsenhet

  4. Välj containern i listrutan och klistra sedan in signaturen för delad åtkomst (SAS) som du sparade när du skapade autentiseringsuppgifterna.

    Skärmbild av dialogrutan Välj en plats för säkerhetskopieringsfil med fältet Signatur för delad åtkomst ifyllt.

  5. Välj OK för att välja platsen för säkerhetskopieringsfilen.

  6. Expandera Containrar och välj den container där säkerhetskopieringsfilen finns.

  7. Välj den säkerhetskopieringsfil som du vill återställa och välj sedan OK. Om inga filer visas kan du använda fel SAS-nyckel. Du kan återskapa SAS-nyckeln igen genom att följa samma steg som tidigare för att lägga till containern.

    Välj återställningsfil

  8. Välj OK för att stänga dialogrutan Välj säkerhetskopieringsenheter .

  9. Välj OK för att återställa databasen.

Se även

Följande är en rekommenderad läsning för att förstå begreppen och metodtipsen när du använder Azure Blob Storage för SQL Server-säkerhetskopior.