|
36 | 36 | "\r\n", |
37 | 37 | "The database assumes a path for a standard SQL Server Windows installation.\r\n", |
38 | 38 | "\r\n", |
39 | | - "**Note**: Change restore path as needed\r\n", |
40 | | - "\r\n", |
41 | 39 | "**Note**: *For Linux installations the default path to use is /var/opt/mssql*" |
42 | 40 | ], |
43 | 41 | "metadata": { |
|
52 | 50 | "IF EXISTS (SELECT [database_id] FROM sys.databases WHERE [name] = 'WideWorldImportersDW')\r\n", |
53 | 51 | "ALTER DATABASE [WideWorldImportersDW] SET SINGLE_USER WITH ROLLBACK IMMEDIATE\r\n", |
54 | 52 | "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", |
61 | 67 | "GO\r\n", |
62 | 68 | "\r\n", |
63 | 69 | "USE [master]\r\n", |
|
689 | 695 | }, |
690 | 696 | { |
691 | 697 | "output_type": "execute_result", |
692 | | - "metadata": {}, |
693 | 698 | "execution_count": 38, |
694 | 699 | "data": { |
695 | 700 | "application/vnd.dataresource+json": { |
|
723 | 728 | ] |
724 | 729 | }, |
725 | 730 | "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": {} |
727 | 733 | } |
728 | 734 | ], |
729 | 735 | "execution_count": 38 |
|
773 | 779 | }, |
774 | 780 | { |
775 | 781 | "output_type": "execute_result", |
776 | | - "metadata": {}, |
777 | 782 | "execution_count": 39, |
778 | 783 | "data": { |
779 | 784 | "application/vnd.dataresource+json": { |
|
807 | 812 | ] |
808 | 813 | }, |
809 | 814 | "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": {} |
811 | 817 | } |
812 | 818 | ], |
813 | 819 | "execution_count": 39 |
|
894 | 900 | }, |
895 | 901 | { |
896 | 902 | "output_type": "execute_result", |
897 | | - "metadata": {}, |
898 | 903 | "execution_count": 41, |
899 | 904 | "data": { |
900 | 905 | "application/vnd.dataresource+json": { |
|
928 | 933 | ] |
929 | 934 | }, |
930 | 935 | "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": {} |
932 | 938 | } |
933 | 939 | ], |
934 | 940 | "execution_count": 41 |
|
938 | 944 | "source": [ |
939 | 945 | "## Step 7: Turn on Accelerated Database Recovery\r\n", |
940 | 946 | "\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." |
942 | 948 | ], |
943 | 949 | "metadata": { |
944 | 950 | "azdata_cell_guid": "6dd6df07-c8a8-4af5-a37c-e76387891562" |
|
952 | 958 | "-- Add a new filegroup specific for the Persistent Version Store (optional)\r\n", |
953 | 959 | "ALTER DATABASE [WideWorldImportersDW] ADD FILEGROUP [PVS]\r\n", |
954 | 960 | "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", |
956 | 965 | "GO\r\n", |
957 | 966 | "\r\n", |
958 | 967 | "-- Enable ADR\r\n", |
|
1080 | 1089 | }, |
1081 | 1090 | { |
1082 | 1091 | "output_type": "execute_result", |
1083 | | - "metadata": {}, |
1084 | 1092 | "execution_count": 44, |
1085 | 1093 | "data": { |
1086 | 1094 | "application/vnd.dataresource+json": { |
|
1114 | 1122 | ] |
1115 | 1123 | }, |
1116 | 1124 | "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": {} |
1118 | 1127 | }, |
1119 | 1128 | { |
1120 | 1129 | "output_type": "display_data", |
|
1139 | 1148 | }, |
1140 | 1149 | { |
1141 | 1150 | "output_type": "execute_result", |
1142 | | - "metadata": {}, |
1143 | 1151 | "execution_count": 44, |
1144 | 1152 | "data": { |
1145 | 1153 | "application/vnd.dataresource+json": { |
|
1173 | 1181 | ] |
1174 | 1182 | }, |
1175 | 1183 | "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": {} |
1177 | 1186 | } |
1178 | 1187 | ], |
1179 | 1188 | "execution_count": 44 |
|
0 commit comments