Skip to content

Commit 47d370c

Browse files
author
pmasl
committed
Updated ADR notebooks
1 parent 3416e61 commit 47d370c

2 files changed

Lines changed: 48 additions & 30 deletions

File tree

samples/features/accelerated-database-recovery/basic_adr.ipynb

Lines changed: 29 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,6 @@
3636
"\r\n",
3737
"The database assumes a path for a standard SQL Server Windows installation.\r\n",
3838
"\r\n",
39-
"**Note**: Change restore path as needed\r\n",
40-
"\r\n",
4139
"**Note**: *For Linux installations the default path to use is /var/opt/mssql*"
4240
],
4341
"metadata": {
@@ -52,12 +50,20 @@
5250
"IF EXISTS (SELECT [database_id] FROM sys.databases WHERE [name] = 'WideWorldImportersDW')\r\n",
5351
"ALTER DATABASE [WideWorldImportersDW] SET SINGLE_USER WITH ROLLBACK IMMEDIATE\r\n",
5452
"GO\r\n",
55-
"RESTORE DATABASE [WideWorldImportersDW] FROM DISK = N'E:\\SampleDBs\\WideWorldImportersDW\\WideWorldImportersDW-Full.bak' WITH FILE = 1,\r\n",
56-
"\tMOVE N'WWI_Primary' TO N'D:\\Program Files\\Microsoft SQL Server\\MSSQL15.SQL2019\\MSSQL\\DATA\\WideWorldImportersDW.mdf', \r\n",
57-
"\tMOVE N'WWI_UserData' TO N'D:\\Program Files\\Microsoft SQL Server\\MSSQL15.SQL2019\\MSSQL\\DATA\\WideWorldImportersDW_UserData.ndf', \r\n",
58-
"\tMOVE N'WWI_Log' TO N'D:\\Program Files\\Microsoft SQL Server\\MSSQL15.SQL2019\\MSSQL\\DATA\\WideWorldImportersDW.ldf', \r\n",
59-
"\tMOVE N'WWIDW_InMemory_Data_1' TO N'D:\\Program Files\\Microsoft SQL Server\\MSSQL15.SQL2019\\MSSQL\\DATA\\WideWorldImportersDW_InMemory_Data_1', NOUNLOAD, REPLACE, STATS = 10\r\n",
60-
"ALTER DATABASE [WideWorldImportersDW] SET MULTI_USER\r\n",
53+
"\r\n",
54+
"DECLARE @datafilepath VARCHAR(8000) = CAST(SERVERPROPERTY('InstanceDefaultDataPath') AS VARCHAR(4000)) + 'WideWorldImportersDW.mdf'\r\n",
55+
"DECLARE @logfilepath VARCHAR(8000) = CAST(SERVERPROPERTY('InstanceDefaultLogPath') AS VARCHAR(4000)) + 'WideWorldImportersDW.ldf'\r\n",
56+
"DECLARE @inmemfilepath VARCHAR(8000) = CAST(SERVERPROPERTY('InstanceDefaultLogPath') AS VARCHAR(4000)) + 'WideWorldImportersDW_InMemory_Data_1'\r\n",
57+
"DECLARE @secondaryfilepath VARCHAR(8000) = CAST(SERVERPROPERTY('InstanceDefaultLogPath') AS VARCHAR(4000))+ 'WideWorldImportersDW_2.ndf'\r\n",
58+
"\r\n",
59+
"-- Change @backupfile file path as needed\r\n",
60+
"DECLARE @backupfile VARCHAR(8000) = 'E:\\SampleDBs\\WideWorldImportersDW-Full.bak'\r\n",
61+
"RESTORE DATABASE WideWorldImportersDW\r\n",
62+
"FROM DISK = @backupfile \r\n",
63+
"WITH MOVE 'WWI_Primary' TO @datafilepath,\r\n",
64+
" MOVE 'WWI_UserData' TO @secondaryfilepath,\r\n",
65+
" MOVE 'WWIDW_InMemory_Data_1' TO @inmemfilepath,\r\n",
66+
" MOVE 'WWI_Log' TO @logfilepath, NOUNLOAD, REPLACE, STATS = 10\r\n",
6167
"GO\r\n",
6268
"\r\n",
6369
"USE [master]\r\n",
@@ -689,7 +695,6 @@
689695
},
690696
{
691697
"output_type": "execute_result",
692-
"metadata": {},
693698
"execution_count": 38,
694699
"data": {
695700
"application/vnd.dataresource+json": {
@@ -723,7 +728,8 @@
723728
]
724729
},
725730
"text/html": "<table><tr><th>database_id</th><th>total_log_size_in_bytes</th><th>used_log_space_in_bytes</th><th>used_log_space_in_percent</th><th>log_space_in_bytes_since_last_backup</th></tr><tr><td>8</td><td>4294959104</td><td>2810818560</td><td>65.4446</td><td>825794560</td></tr></table>"
726-
}
731+
},
732+
"metadata": {}
727733
}
728734
],
729735
"execution_count": 38
@@ -773,7 +779,6 @@
773779
},
774780
{
775781
"output_type": "execute_result",
776-
"metadata": {},
777782
"execution_count": 39,
778783
"data": {
779784
"application/vnd.dataresource+json": {
@@ -807,7 +812,8 @@
807812
]
808813
},
809814
"text/html": "<table><tr><th>database_id</th><th>total_log_size_in_bytes</th><th>used_log_space_in_bytes</th><th>used_log_space_in_percent</th><th>log_space_in_bytes_since_last_backup</th></tr><tr><td>8</td><td>4294959104</td><td>2810855424</td><td>65.44545</td><td>825262080</td></tr></table>"
810-
}
815+
},
816+
"metadata": {}
811817
}
812818
],
813819
"execution_count": 39
@@ -894,7 +900,6 @@
894900
},
895901
{
896902
"output_type": "execute_result",
897-
"metadata": {},
898903
"execution_count": 41,
899904
"data": {
900905
"application/vnd.dataresource+json": {
@@ -928,7 +933,8 @@
928933
]
929934
},
930935
"text/html": "<table><tr><th>database_id</th><th>total_log_size_in_bytes</th><th>used_log_space_in_bytes</th><th>used_log_space_in_percent</th><th>log_space_in_bytes_since_last_backup</th></tr><tr><td>8</td><td>4294959104</td><td>981958656</td><td>22.86305</td><td>783413248</td></tr></table>"
931-
}
936+
},
937+
"metadata": {}
932938
}
933939
],
934940
"execution_count": 41
@@ -938,7 +944,7 @@
938944
"source": [
939945
"## Step 7: Turn on Accelerated Database Recovery\r\n",
940946
"\r\n",
941-
"**Note**: Change the new database file path as needed. Alternatively, just execute the last `ALTER DATABASE` without the `( PERSISTENT_VERSION_STORE_FILEGROUP = [PVS])` statement to enable ADR in the existing database file in the PRIMARY filegroup."
947+
"**Note**: If you prefer to enable ADR in the existing database file in the PRIMARY filegroup, just execute the last `ALTER DATABASE` without the `( PERSISTENT_VERSION_STORE_FILEGROUP = [PVS])` statement."
942948
],
943949
"metadata": {
944950
"azdata_cell_guid": "6dd6df07-c8a8-4af5-a37c-e76387891562"
@@ -952,7 +958,10 @@
952958
"-- Add a new filegroup specific for the Persistent Version Store (optional)\r\n",
953959
"ALTER DATABASE [WideWorldImportersDW] ADD FILEGROUP [PVS]\r\n",
954960
"GO\r\n",
955-
"ALTER DATABASE [WideWorldImportersDW] ADD FILE ( NAME = N'ADR', FILENAME = N'D:\\Program Files\\Microsoft SQL Server\\MSSQL15.SQL2019\\MSSQL\\DATA\\ADR.ndf' , SIZE = 1GB , FILEGROWTH = 65536KB ) TO FILEGROUP [PVS]\r\n",
961+
"\r\n",
962+
"DECLARE @adrdatafilepath VARCHAR(8000) = CAST(SERVERPROPERTY('InstanceDefaultDataPath') AS VARCHAR(4000)) + 'ADR.mdf'\r\n",
963+
"DECLARE @sqlcmd VARCHAR(8000) = 'ALTER DATABASE [WideWorldImportersDW] ADD FILE ( NAME = N''ADR'', FILENAME = ''' + @adrdatafilepath + ''', SIZE = 1GB , FILEGROWTH = 65536KB ) TO FILEGROUP [PVS]'\r\n",
964+
"EXEC (@sqlcmd)\r\n",
956965
"GO\r\n",
957966
"\r\n",
958967
"-- Enable ADR\r\n",
@@ -1080,7 +1089,6 @@
10801089
},
10811090
{
10821091
"output_type": "execute_result",
1083-
"metadata": {},
10841092
"execution_count": 44,
10851093
"data": {
10861094
"application/vnd.dataresource+json": {
@@ -1114,7 +1122,8 @@
11141122
]
11151123
},
11161124
"text/html": "<table><tr><th>database_id</th><th>total_log_size_in_bytes</th><th>used_log_space_in_bytes</th><th>used_log_space_in_percent</th><th>log_space_in_bytes_since_last_backup</th></tr><tr><td>8</td><td>4294959104</td><td>2085478400</td><td>48.55642</td><td>1794609152</td></tr></table>"
1117-
}
1125+
},
1126+
"metadata": {}
11181127
},
11191128
{
11201129
"output_type": "display_data",
@@ -1139,7 +1148,6 @@
11391148
},
11401149
{
11411150
"output_type": "execute_result",
1142-
"metadata": {},
11431151
"execution_count": 44,
11441152
"data": {
11451153
"application/vnd.dataresource+json": {
@@ -1173,7 +1181,8 @@
11731181
]
11741182
},
11751183
"text/html": "<table><tr><th>database_id</th><th>total_log_size_in_bytes</th><th>used_log_space_in_bytes</th><th>used_log_space_in_percent</th><th>log_space_in_bytes_since_last_backup</th></tr><tr><td>8</td><td>4294959104</td><td>1299976192</td><td>30.26749</td><td>1011310592</td></tr></table>"
1176-
}
1184+
},
1185+
"metadata": {}
11771186
}
11781187
],
11791188
"execution_count": 44

samples/features/accelerated-database-recovery/recovery_adr.ipynb

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,6 @@
3737
"\r\n",
3838
"Depending on the speed of your server, enlarging the database and data could take several minutes.\r\n",
3939
"\r\n",
40-
"**Note**: Change restore path as needed\r\n",
41-
"\r\n",
4240
"**Note**: *For Linux installations the default path to use is /var/opt/mssql*"
4341
],
4442
"metadata": {
@@ -53,12 +51,20 @@
5351
"IF EXISTS (SELECT [database_id] FROM sys.databases WHERE [name] = 'WideWorldImportersDW')\r\n",
5452
"ALTER DATABASE [WideWorldImportersDW] SET SINGLE_USER WITH ROLLBACK IMMEDIATE\r\n",
5553
"GO\r\n",
56-
"RESTORE DATABASE [WideWorldImportersDW] FROM DISK = N'E:\\SampleDBs\\WideWorldImportersDW\\WideWorldImportersDW-Full.bak' WITH FILE = 1,\r\n",
57-
"\tMOVE N'WWI_Primary' TO N'D:\\Program Files\\Microsoft SQL Server\\MSSQL15.SQL2019\\MSSQL\\DATA\\WideWorldImportersDW.mdf', \r\n",
58-
"\tMOVE N'WWI_UserData' TO N'D:\\Program Files\\Microsoft SQL Server\\MSSQL15.SQL2019\\MSSQL\\DATA\\WideWorldImportersDW_UserData.ndf', \r\n",
59-
"\tMOVE N'WWI_Log' TO N'D:\\Program Files\\Microsoft SQL Server\\MSSQL15.SQL2019\\MSSQL\\DATA\\WideWorldImportersDW.ldf', \r\n",
60-
"\tMOVE N'WWIDW_InMemory_Data_1' TO N'D:\\Program Files\\Microsoft SQL Server\\MSSQL15.SQL2019\\MSSQL\\DATA\\WideWorldImportersDW_InMemory_Data_1', NOUNLOAD, REPLACE, STATS = 10\r\n",
61-
"ALTER DATABASE [WideWorldImportersDW] SET MULTI_USER\r\n",
54+
"\r\n",
55+
"DECLARE @datafilepath VARCHAR(8000) = CAST(SERVERPROPERTY('InstanceDefaultDataPath') AS VARCHAR(4000)) + 'WideWorldImportersDW.mdf'\r\n",
56+
"DECLARE @logfilepath VARCHAR(8000) = CAST(SERVERPROPERTY('InstanceDefaultLogPath') AS VARCHAR(4000)) + 'WideWorldImportersDW.ldf'\r\n",
57+
"DECLARE @inmemfilepath VARCHAR(8000) = CAST(SERVERPROPERTY('InstanceDefaultLogPath') AS VARCHAR(4000)) + 'WideWorldImportersDW_InMemory_Data_1'\r\n",
58+
"DECLARE @secondaryfilepath VARCHAR(8000) = CAST(SERVERPROPERTY('InstanceDefaultLogPath') AS VARCHAR(4000))+ 'WideWorldImportersDW_2.ndf'\r\n",
59+
"\r\n",
60+
"-- Change @backupfile file path as needed\r\n",
61+
"DECLARE @backupfile VARCHAR(8000) = 'E:\\SampleDBs\\WideWorldImportersDW-Full.bak'\r\n",
62+
"RESTORE DATABASE WideWorldImportersDW\r\n",
63+
"FROM DISK = @backupfile \r\n",
64+
"WITH MOVE 'WWI_Primary' TO @datafilepath,\r\n",
65+
" MOVE 'WWI_UserData' TO @secondaryfilepath,\r\n",
66+
" MOVE 'WWIDW_InMemory_Data_1' TO @inmemfilepath,\r\n",
67+
" MOVE 'WWI_Log' TO @logfilepath, NOUNLOAD, REPLACE, STATS = 10\r\n",
6268
"GO\r\n",
6369
"\r\n",
6470
"USE [master]\r\n",
@@ -696,7 +702,7 @@
696702
"\r\n",
697703
"Turn on Accelerated Database Recovery and try to delete the rows again.\r\n",
698704
"\r\n",
699-
"**Note**: Change the new database file path as needed. Alternatively, just execute the last `ALTER DATABASE` without the `( PERSISTENT_VERSION_STORE_FILEGROUP = [PVS])` statement to enable ADR in the existing database file in the PRIMARY filegroup.\r\n",
705+
"**Note**: If you prefer to enable ADR in the existing database file in the PRIMARY filegroup, just execute the last `ALTER DATABASE` without the `( PERSISTENT_VERSION_STORE_FILEGROUP = [PVS])` statement.\r\n",
700706
"\r\n",
701707
"You may first see a connection error first since you shutdown SQL Server in the previous step but the cell should retry the connection and run the T-SQL statements."
702708
],
@@ -712,7 +718,10 @@
712718
"-- Add a new filegroup specific for the Persistent Version Store (optional)\r\n",
713719
"ALTER DATABASE [WideWorldImportersDW] ADD FILEGROUP [PVS]\r\n",
714720
"GO\r\n",
715-
"ALTER DATABASE [WideWorldImportersDW] ADD FILE ( NAME = N'ADR', FILENAME = N'D:\\Program Files\\Microsoft SQL Server\\MSSQL15.SQL2019\\MSSQL\\DATA\\ADR.ndf' , SIZE = 1GB , FILEGROWTH = 65536KB ) TO FILEGROUP [PVS]\r\n",
721+
"\r\n",
722+
"DECLARE @adrdatafilepath VARCHAR(8000) = CAST(SERVERPROPERTY('InstanceDefaultDataPath') AS VARCHAR(4000)) + 'ADR.mdf'\r\n",
723+
"DECLARE @sqlcmd VARCHAR(8000) = 'ALTER DATABASE [WideWorldImportersDW] ADD FILE ( NAME = N''ADR'', FILENAME = ''' + @adrdatafilepath + ''', SIZE = 1GB , FILEGROWTH = 65536KB ) TO FILEGROUP [PVS]'\r\n",
724+
"EXEC (@sqlcmd)\r\n",
716725
"GO\r\n",
717726
"\r\n",
718727
"-- Enable ADR\r\n",

0 commit comments

Comments
 (0)