Å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'"