Back-ups maken van SQL Server-databases en deze herstellen in Linux
van toepassing op:SQL Server- - Linux
U kunt back-ups van databases maken vanuit SQL Server op Linux met veel verschillende opties. Op een Linux-server kunt u sqlcmd- gebruiken om verbinding te maken met de SQL Server en back-ups te maken. Vanuit Windows kunt u verbinding maken met SQL Server in Linux en back-ups maken met de gebruikersinterface. De back-upfunctionaliteit is hetzelfde op verschillende platforms. U kunt bijvoorbeeld lokaal back-ups maken van databases, externe stations of SQL Server-back-up naar URL voor Microsoft Azure Blob Storage-.
Belangrijk
SQL Server op Linux biedt alleen ondersteuning voor back-ups naar Azure Blob Storage met behulp van blok-blobs. Als u een opslagsleutel gebruikt voor back-up en herstel, zal er een paginablogfunctie worden gebruikt. Dit wordt niet ondersteund. Gebruik in plaats daarvan een Shared Access Signature. Zie Backup to block blob versus page blobvoor informatie over blokblogs versus paginablogs.
Een back-up maken van een database
In het volgende voorbeeld maakt sqlcmd- verbinding met het lokale SQL Server-exemplaar en maakt u een volledige back-up van een gebruikersdatabase met de naam demodb
.
sqlcmd -S localhost -U sa -Q "BACKUP DATABASE [demodb] TO DISK = N'/var/opt/mssql/data/demodb.bak' WITH NOFORMAT, NOINIT, NAME = 'demodb-full', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
Wanneer u de opdracht uitvoert, vraagt SQL Server om een wachtwoord. Nadat u het wachtwoord hebt ingevoerd, retourneert de shell de resultaten van de voortgang van de back-up. Bijvoorbeeld:
Password:
10 percent processed.
21 percent processed.
32 percent processed.
40 percent processed.
51 percent processed.
61 percent processed.
72 percent processed.
80 percent processed.
91 percent processed.
Processed 296 pages for database 'demodb', file 'demodb' on file 1.
100 percent processed.
Processed 2 pages for database 'demodb', file 'demodb_log' on file 1.
BACKUP DATABASE successfully processed 298 pages in 0.064 seconds (36.376 MB/sec).
Een back-up maken van het transactielogboek
Als uw database zich in het volledige herstelmodel bevindt, kunt u ook back-ups maken van transactielogboeken voor gedetailleerdere herstelopties. In het volgende voorbeeld maakt sqlcmd- verbinding met het lokale SQL Server-exemplaar en maakt u een back-up van het transactielogboek.
sqlcmd -S localhost -U sa -Q "BACKUP LOG [demodb] TO DISK = N'/var/opt/mssql/data/demodb_LogBackup.bak' WITH NOFORMAT, NOINIT, NAME = N'demodb_LogBackup', NOSKIP, NOREWIND, NOUNLOAD, STATS = 5"
Een database herstellen
In het volgende voorbeeld maakt sqlcmd- verbinding met het lokale exemplaar van SQL Server en herstelt u de demodb-database. De optie NORECOVERY
wordt gebruikt om extra herstelbewerkingen van back-ups van logboekbestanden toe te staan. Als u niet van plan bent om extra logboekbestanden te herstellen, verwijdert u de optie NORECOVERY
.
sqlcmd -S localhost -U sa -Q "RESTORE DATABASE [demodb] FROM DISK = N'/var/opt/mssql/data/demodb.bak' WITH FILE = 1, NOUNLOAD, REPLACE, NORECOVERY, STATS = 5"
Fooi
Als u per ongeluk NORECOVERY gebruikt, maar geen extra back-ups van logboekbestanden hebt, voert u de opdracht uit RESTORE DATABASE demodb
zonder extra parameters. Hiermee wordt de herstelbewerking voltooid en blijft de database operationeel.
Het transactielogboek herstellen
Met de volgende opdracht wordt de vorige back-up van het transactielogboek hersteld.
sqlcmd -S localhost -U sa -Q "RESTORE LOG demodb FROM DISK = N'/var/opt/mssql/data/demodb_LogBackup.bak'"
Back-up maken en herstellen met SQL Server Management Studio (SSMS)
U kunt SSMS- vanaf een Windows-computer gebruiken om verbinding te maken met een Linux-database en een back-up te maken via de gebruikersinterface.
Notitie
Gebruik de nieuwste versie van SSMS om verbinding te maken met SQL Server. Zie SQL Server Management Studio (SSMS) downloadenom de nieuwste versie te downloaden en te installeren. Zie SQL Server Management Studio in Windows gebruiken voor het beheren van SQL Server op Linuxvoor meer informatie over het gebruik van SSMS.
In de volgende stappen wordt stapsgewijs uitgelegd hoe u een back-up maakt met SSMS.
Start SSMS en maak verbinding met uw SQL Server op linux-exemplaar.
Klik in Object Explorermet de rechtermuisknop op je database, selecteer takenen selecteer vervolgens Back-up maken....
Controleer in het dialoogvenster Back-up maken van database de parameters en opties en selecteer OK.
SQL Server voltooit de back-up van de database.
Terugzetten met SQL Server Management Studio (SSMS)
De volgende stappen helpen u bij het herstellen van een database met SSMS.
Klik in SSMS met de rechtermuisknop op Databases en selecteer Databases herstellen....
Onder Bron, selecteer Apparaat: en selecteer daarna de ellips (...).
Zoek het back-upbestand van de database en selecteer OK.
Controleer onder Plan herstellenhet back-upbestand en de instellingen. Selecteer OK-.
SQL Server herstelt de database.
Verwante inhoud
- een volledige databaseback-up maken
- een back-up maken van een transactielogboek
- BACKUP (Transact-SQL)
- SQL Server-backup naar URL voor Microsoft Azure Blob Storage
Bijdragen aan SQL-documentatie
Wist u dat u zelf SQL-inhoud kunt bewerken? Als u dit doet, helpt u niet alleen onze documentatie te verbeteren, maar krijgt u ook een erkenning als bijdrager aan de pagina.
Zie Bijdragen aan sql Server-documentatie voor meer informatie