Dela via


Återställa AdventureWorks-exempeldatabasen till SQL Managed Instance – Azure Arc

AdventureWorks är en exempeldatabas som innehåller en OLTP-databas som ofta används i självstudier och exempel. Den tillhandahålls och underhålls av Microsoft som en del av GitHub-lagringsplatsen för SQL Server-exempel.

Det här dokumentet beskriver en enkel process för att återställa AdventureWorks-exempeldatabasen till din SQL Managed Instance – Azure Arc.

Ladda ned AdventureWorks-säkerhetskopieringsfilen

Ladda ned filen AdventureWorks backup (.bak) till din SQL Managed Instance-container. I det här exemplet använder du kubectl exec kommandot för att fjärr köra ett kommando i SQL Managed Instance-containern för att ladda ned .bak-filen till containern. Ladda ned den här filen från valfri plats som kan nås av wget om du har andra databassäkerhetskopieringsfiler som du vill hämta för att vara i SQL Managed Instance-containern. När den väl finns i SQL Managed Instance-containern är det enkelt att återställa med standard-T-SQL RESTORE DATABASE .

Kör ett kommando som det här för att ladda ned .bak fil som ersätter värdet för poddnamnet och namnområdets namn innan du kör det.

Kommentar

Containern måste ha internetanslutning över 443 för att ladda ned filen från GitHub

kubectl exec <SQL pod name> -n <namespace name> -c arc-sqlmi -- wget https://github.com/Microsoft/sql-server-samples/releases/download/adventureworks/AdventureWorks2019.bak -O /var/opt/mssql/data/AdventureWorks2019.bak

Exempel

kubectl exec sqltest1-0 -n arc -c arc-sqlmi -- wget https://github.com/Microsoft/sql-server-samples/releases/download/adventureworks/AdventureWorks2019.bak -O /var/opt/mssql/data/AdventureWorks2019.bak

Återställa AdventureWorks-databasen

På samma sätt kan du köra ett kubectl exec-kommando för att använda sqlcmd CLI-verktyget som ingår i SQL Managed Instance-containern för att köra T-SQL-kommandot till RESTORE DATABASE.

Kör ett kommando som det här för att återställa databasen. Ersätt värdet för poddnamnet, lösenordet och namnområdets namn innan du kör det.

kubectl exec <SQL pod name> -n <namespace name> -c arc-sqlmi -- /opt/mssql-tools/bin/sqlcmd -S localhost -U sa -P <password> -Q "RESTORE DATABASE AdventureWorks2019 FROM  DISK = N'/var/opt/mssql/data/AdventureWorks2019.bak' WITH MOVE 'AdventureWorks2017' TO '/var/opt/mssql/data/AdventureWorks2019.mdf', MOVE 'AdventureWorks2017_Log' TO '/var/opt/mssql/data/AdventureWorks2019_Log.ldf'"

Exempel

kubectl exec sqltest1-0 -n arc -c arc-sqlmi -- /opt/mssql-tools/bin/sqlcmd -S localhost -U sa -P MyPassword! -Q "RESTORE DATABASE AdventureWorks2019 FROM DISK = N'/var/opt/mssql/data/AdventureWorks2019.bak' WITH MOVE 'AdventureWorks2017' TO '/var/opt/mssql/data/AdventureWorks2019.mdf', MOVE 'AdventureWorks2017_Log' TO '/var/opt/mssql/data/AdventureWorks2019_Log.ldf'"