Lokasi ngalangkungan proxy:   [ UP ]  
[Ngawartoskeun bug]   [Panyetelan cookie]                
Skip to content

Commit b8c8f60

Browse files
committed
Formatting changes
1 parent 49ff1a4 commit b8c8f60

1 file changed

Lines changed: 42 additions & 17 deletions

File tree

docs/linux/tutorial-restore-backup-in-sql-server-container.md

Lines changed: 42 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ This tutorial demonstrates how to move and restore a SQL Server backup file into
7373

7474
1. If the **STATUS** column shows a status of **Up**, then SQL Server is running in the container and listening on the port specified in the **PORTS** column. If the **STATUS** column for your SQL Server container shows **Exited**, see the [Troubleshooting section of the configuration guide](sql-server-linux-configure-docker.md#troubleshooting).
7575

76-
```output
76+
```text
7777
$ sudo docker ps -a
7878
7979
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
@@ -129,16 +129,21 @@ The backup file is now located inside the container. Before restoring the backup
129129
1. Run **sqlcmd** inside the container to list out logical file names and paths inside the backup. This is done with the **RESTORE FILELISTONLY** Transact-SQL statement.
130130

131131
```bash
132-
sudo docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P '<YourNewStrong!Passw0rd>' -Q 'RESTORE FILELISTONLY FROM DISK = "/var/opt/mssql/backup/wwi.bak"' | tr -s ' ' | cut -d ' ' -f 1
132+
sudo docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd -S localhost \
133+
-U SA -P '<YourNewStrong!Passw0rd>' \
134+
-Q 'RESTORE FILELISTONLY FROM DISK = "/var/opt/mssql/backup/wwi.bak"' \
135+
| tr -s ' ' | cut -d ' ' -f 1-2
133136
```
134137

135138
```PowerShell
136-
docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "<YourNewStrong!Passw0rd>" -Q "RESTORE FILELISTONLY FROM DISK = '/var/opt/mssql/backup/wwi.bak'"
139+
docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd -S localhost `
140+
-U SA -P "<YourNewStrong!Passw0rd>" `
141+
-Q "RESTORE FILELISTONLY FROM DISK = '/var/opt/mssql/backup/wwi.bak'"
137142
```
138143

139144
You should see output similar to the following:
140145

141-
```output
146+
```text
142147
LogicalName PhysicalName
143148
------------------------------------------
144149
WWI_Primary D:\Data\WideWorldImporters.mdf
@@ -150,16 +155,20 @@ The backup file is now located inside the container. Before restoring the backup
150155
1. Call the **RESTORE DATABASE** command to restore the database inside the container. Specify new paths for each of the files in the previous step.
151156

152157
```bash
153-
sudo docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P '<YourNewStrong!Passw0rd>' -Q 'RESTORE DATABASE WideWorldImporters FROM DISK = "/var/opt/mssql/backup/wwi.bak" WITH MOVE "WWI_Primary" TO "/var/opt/mssql/data/WideWorldImporters.mdf", MOVE "WWI_UserData" TO "/var/opt/mssql/data/WideWorldImporters_userdata.ndf", MOVE "WWI_Log" TO "/var/opt/mssql/data/WideWorldImporters.ldf", MOVE "WWI_InMemory_Data_1" TO "/var/opt/mssql/data/WideWorldImporters_InMemory_Data_1"'
158+
sudo docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd \
159+
-S localhost -U SA -P '<YourNewStrong!Passw0rd>' \
160+
-Q 'RESTORE DATABASE WideWorldImporters FROM DISK = "/var/opt/mssql/backup/wwi.bak" WITH MOVE "WWI_Primary" TO "/var/opt/mssql/data/WideWorldImporters.mdf", MOVE "WWI_UserData" TO "/var/opt/mssql/data/WideWorldImporters_userdata.ndf", MOVE "WWI_Log" TO "/var/opt/mssql/data/WideWorldImporters.ldf", MOVE "WWI_InMemory_Data_1" TO "/var/opt/mssql/data/WideWorldImporters_InMemory_Data_1"'
154161
```
155162

156163
```PowerShell
157-
docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "<YourNewStrong!Passw0rd>" -Q "RESTORE DATABASE WideWorldImporters FROM DISK = '/var/opt/mssql/backup/wwi.bak' WITH MOVE 'WWI_Primary' TO '/var/opt/mssql/data/WideWorldImporters.mdf', MOVE 'WWI_UserData' TO '/var/opt/mssql/data/WideWorldImporters_userdata.ndf', MOVE 'WWI_Log' TO '/var/opt/mssql/data/WideWorldImporters.ldf', MOVE 'WWI_InMemory_Data_1' TO '/var/opt/mssql/data/WideWorldImporters_InMemory_Data_1'"
164+
docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd `
165+
-S localhost -U SA -P "<YourNewStrong!Passw0rd>" `
166+
-Q "RESTORE DATABASE WideWorldImporters FROM DISK = '/var/opt/mssql/backup/wwi.bak' WITH MOVE 'WWI_Primary' TO '/var/opt/mssql/data/WideWorldImporters.mdf', MOVE 'WWI_UserData' TO '/var/opt/mssql/data/WideWorldImporters_userdata.ndf', MOVE 'WWI_Log' TO '/var/opt/mssql/data/WideWorldImporters.ldf', MOVE 'WWI_InMemory_Data_1' TO '/var/opt/mssql/data/WideWorldImporters_InMemory_Data_1'"
158167
```
159168

160169
You should see output similar to the following:
161170

162-
```output
171+
```text
163172
Processed 1464 pages for database 'WideWorldImporters', file 'WWI_Primary' on file 1.
164173
Processed 53096 pages for database 'WideWorldImporters', file 'WWI_UserData' on file 1.
165174
Processed 33 pages for database 'WideWorldImporters', file 'WWI_Log' on file 1.
@@ -215,7 +224,7 @@ The following steps make a change in the database.
215224

216225
You should see a list of item identifiers and names:
217226

218-
```output
227+
```text
219228
StockItemID StockItemName
220229
----------- -----------------
221230
1 USB missile launcher (Green)
@@ -233,11 +242,15 @@ The following steps make a change in the database.
233242
1. Update the description of the first item with the following **UPDATE** statement:
234243

235244
```bash
236-
sudo docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P '<YourNewStrong!Passw0rd>' -Q 'UPDATE WideWorldImporters.Warehouse.StockItems SET StockItemName="USB missile launcher (Dark Green)" WHERE StockItemID=1; SELECT StockItemID, StockItemName FROM WideWorldImporters.Warehouse.StockItems WHERE StockItemID=1'
245+
sudo docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd \
246+
-S localhost -U SA -P '<YourNewStrong!Passw0rd>' \
247+
-Q 'UPDATE WideWorldImporters.Warehouse.StockItems SET StockItemName="USB missile launcher (Dark Green)" WHERE StockItemID=1; SELECT StockItemID, StockItemName FROM WideWorldImporters.Warehouse.StockItems WHERE StockItemID=1'
237248
```
238249

239250
```PowerShell
240-
docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "<YourNewStrong!Passw0rd>" -Q "UPDATE WideWorldImporters.Warehouse.StockItems SET StockItemName='USB missile launcher (Dark Green)' WHERE StockItemID=1; SELECT StockItemID, StockItemName FROM WideWorldImporters.Warehouse.StockItems WHERE StockItemID=1"
251+
docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd `
252+
-S localhost -U SA -P "<YourNewStrong!Passw0rd>" `
253+
-Q "UPDATE WideWorldImporters.Warehouse.StockItems SET StockItemName='USB missile launcher (Dark Green)' WHERE StockItemID=1; SELECT StockItemID, StockItemName FROM WideWorldImporters.Warehouse.StockItems WHERE StockItemID=1"
241254
```
242255

243256
## Create a new backup
@@ -247,16 +260,20 @@ After you've restored your database into a container, you might also want to reg
247260
1. Use the **BACKUP DATABASE** Transact-SQL command to create a database backup in the container. This tutorial creates a new backup file, **wwi_2.bak**, in the previously created **/var/opt/mssql/backup** directory.
248261
249262
```bash
250-
sudo docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P '<YourNewStrong!Passw0rd>' -Q "BACKUP DATABASE [WideWorldImporters] TO DISK = N'/var/opt/mssql/backup/wwi_2.bak' WITH NOFORMAT, NOINIT, NAME = 'WideWorldImporters-full', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
263+
sudo docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd \
264+
-S localhost -U SA -P '<YourNewStrong!Passw0rd>' \
265+
-Q "BACKUP DATABASE [WideWorldImporters] TO DISK = N'/var/opt/mssql/backup/wwi_2.bak' WITH NOFORMAT, NOINIT, NAME = 'WideWorldImporters-full', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
251266
```
252267
253268
```PowerShell
254-
docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "<YourNewStrong!Passw0rd>" -Q "BACKUP DATABASE [WideWorldImporters] TO DISK = N'/var/opt/mssql/backup/wwi_2.bak' WITH NOFORMAT, NOINIT, NAME = 'WideWorldImporters-full', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
269+
docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd `
270+
-S localhost -U SA -P "<YourNewStrong!Passw0rd>" `
271+
-Q "BACKUP DATABASE [WideWorldImporters] TO DISK = N'/var/opt/mssql/backup/wwi_2.bak' WITH NOFORMAT, NOINIT, NAME = 'WideWorldImporters-full', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
255272
```
256273
257274
You should see output similar to the following:
258275
259-
```output
276+
```text
260277
10 percent processed.
261278
20 percent processed.
262279
30 percent processed.
@@ -314,21 +331,29 @@ In addition to taking database backups for protecting your data, you can also us
314331
1. Create a new container, **sql2**, and reuse the **sql1data** data volume container.
315332
316333
```bash
317-
sudo docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<YourStrong!Passw0rd>' --name 'sql2' -e 'MSSQL_PID=Developer' -p 1401:1433 -v sql1data:/var/opt/mssql -d microsoft/mssql-server-linux
334+
sudo docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<YourStrong!Passw0rd>' \
335+
--name 'sql2' -e 'MSSQL_PID=Developer' -p 1401:1433 \
336+
-v sql1data:/var/opt/mssql -d microsoft/mssql-server-linux
318337
```
319338
320339
```PowerShell
321-
docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=<YourStrong!Passw0rd>" --name "sql2" -e "MSSQL_PID=Developer" -p 1401:1433 -v sql1data:/var/opt/mssql -d microsoft/mssql-server-linux
340+
docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=<YourStrong!Passw0rd>" `
341+
--name "sql2" -e "MSSQL_PID=Developer" -p 1401:1433 `
342+
-v sql1data:/var/opt/mssql -d microsoft/mssql-server-linux
322343
```
323344
324345
1. The Wide World Importers database is now in the new container. Run a query to verify the previous change you made.
325346
326347
```bash
327-
sudo docker exec -it sql2 /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P '<YourNewStrong!Passw0rd>' -Q 'SELECT StockItemID, StockItemName FROM WideWorldImporters.Warehouse.StockItems WHERE StockItemID=1'
348+
sudo docker exec -it sql2 /opt/mssql-tools/bin/sqlcmd \
349+
-S localhost -U SA -P '<YourNewStrong!Passw0rd>' \
350+
-Q 'SELECT StockItemID, StockItemName FROM WideWorldImporters.Warehouse.StockItems WHERE StockItemID=1'
328351
```
329352
330353
```PowerShell
331-
docker exec -it sql2 /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "<YourNewStrong!Passw0rd>" -Q "SELECT StockItemID, StockItemName FROM WideWorldImporters.Warehouse.StockItems WHERE StockItemID=1"
354+
docker exec -it sql2 /opt/mssql-tools/bin/sqlcmd `
355+
-S localhost -U SA -P "<YourNewStrong!Passw0rd>" `
356+
-Q "SELECT StockItemID, StockItemName FROM WideWorldImporters.Warehouse.StockItems WHERE StockItemID=1"
332357
```
333358
334359
> [!NOTE]

0 commit comments

Comments
 (0)