Changes for page migrate to managed instance
Last modified by Rudi Marais on 2024/03/28 18:51
Change comment:
There is no comment for this version
Summary
-
Page properties (3 modified, 0 added, 0 removed)
Details
- Page properties
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 - bacpac1 +migrate to managed instance - Parent
-
... ... @@ -1,1 +1,1 @@ 1 - TechnicalDocumentation.analysis.sql.WebHome1 +technical-documentation.analysis.sql.WebHome - Content
-
... ... @@ -1,15 +1,121 @@ 1 1 * compressed file 2 2 * contains ddl and dml data 3 3 * doesnt support encrypted objects 4 +* cant have any stored procs with string that contain $( character sequence reserved sequence 5 +** break up sequence ie 'test$(test' become 'test$' + '(test' 6 +* [[https:~~/~~/learn.microsoft.com/en-us/azure/azure-sql/database/database-import>>https://learn.microsoft.com/en-us/azure/azure-sql/database/database-import]] 7 +* sqlpackage 8 +** [[https:~~/~~/download.microsoft.com/download/7/c/8/7c877288-a0d9-4d22-b1dc-2086e262d82f/x64/DacFramework.msi>>https://download.microsoft.com/download/7/c/8/7c877288-a0d9-4d22-b1dc-2086e262d82f/x64/DacFramework.msi]] 9 +** [[https:~~/~~/learn.microsoft.com/en-us/sql/tools/sqlpackage/sqlpackage-download>>https://learn.microsoft.com/en-us/sql/tools/sqlpackage/sqlpackage-download]] 10 +** C:\Program Files\Microsoft SQL Server\160\DAC\bin 11 +* turn off real time scan (anti virus) 4 4 5 -= = 13 +1. run extract with [[sql-script-db.ps1>>doc:technical-documentation.Source Control.migration.sql.sql-db-export.WebHome]] with validate set to true and raw objects set to true, only need tbl-triggers, functions and sp 14 +11. reason for this is to identify any procedure/triggers/functions that dont compile 15 +1. once this is done examine results and fix stored procedures on database so that they can compile, ie add missing columns or modify code to not require them 16 +11. repeat step 1 and 2 until you get zero objects that can't compile 17 +1. check sql code for any reserved varables ie... and fix on DB 18 +1. run dacpac export 19 +11. make sure nothing is running on source DB 20 +11. upgrade source DB to high level for quicker export and set back to what it was once done 21 +11. cmd 22 +1. run dacpac publish to managed instance 23 +1. 6 6 25 +* ((( 26 +(% class="wikigeneratedid" id="Hhttps:2F2Fgithub.com2Fmicrosoft2Fmssql-scripter" %) 27 +[[https:~~/~~/github.com/microsoft/mssql-scripter>>https://github.com/microsoft/mssql-scripter]] 28 + 29 +* C:\Users\alliancetest\.mssqlscripter 30 +))) 31 + 32 +(% class="wikigeneratedid" id="H" %) 33 + {{code language="sql"}}-- export 34 +select export = concat('bcp ', DB_NAME(), '.', 35 + SCHEMA_NAME(schema_id), '.', name, 36 + ' out $(path)', SCHEMA_NAME(schema_id), '_', name, '.bcp ', 37 + ' -S"', @@servername,'"', 38 + ' -N -U"$(username)" -P"$(password)"') 39 +from sys.tables 40 +where type = 'U' 41 +and is_ms_shipped = 0 42 +and temporal_type in (0,2); 43 + 44 +-- import 45 +select import = concat('bcp ', DB_NAME(), '.', 46 + SCHEMA_NAME(schema_id), '.', name, 47 + ' in $(path)', SCHEMA_NAME(schema_id), '_', name, '.bcp ', 48 + ' -S"$(target_server)','"', 49 + ' -n -U"$(target_username)" -P"$(target_password)"') 50 +from sys.tables 51 +where type = 'U' 52 +and is_ms_shipped = 0 53 +and temporal_type in (0,2); 54 +{{/code}} 55 + 56 + 57 +* disable anti-virus real time scan 58 + 59 + 60 +(% class="wikigeneratedid" %) 61 +placeholder 62 + 7 7 = Exporting = 8 8 9 9 * no encrypted objects, they need to be decrypted or removed prior to exporting. 10 10 67 +SQL 2012 11 11 69 + 70 + 71 +EXEC sp_configure 'show advanced options', 1; 72 +GO 73 +RECONFIGURE; 74 +GO 75 + 76 +EXEC sp_configure 'xp_cmdshell',1 77 +GO 78 +RECONFIGURE 79 +GO 80 + 81 + 82 +EXEC XP_CMDSHELL 'net use O: ~\~\zagpebslab.file.core.windows.net\sqlshare /user:"localhost\zagpebslab" "access_key"' 83 + 84 +EXEC XP_CMDSHELL 'Dir O:' 85 + 86 + 87 +BACKUP DATABASE Everest_TEST 88 +TO DISK = N'O:\ENS_Everest_Test_20230721_1806.bak' 89 +WITH COMPRESSION, 90 +STATS = 10; 91 + 92 + 93 +GO 94 + 95 + 96 +SELECT 97 + session_id as SPID, command, a.text AS Query, start_time, percent_complete, 98 + dateadd(second,estimated_completion_time/1000, getdate()) as estimated_completion_time 99 +FROM sys.dm_exec_requests r 100 + CROSS APPLY sys.dm_exec_sql_text(r.sql_handle) a 101 +WHERE r.command in ('BACKUP DATABASE','RESTORE DATABASE') 102 + 103 +GO 104 + 105 + 12 12 = Importing = 13 13 14 14 15 -= Modifying = 109 += Modifying and Troubleshooting = 110 + 111 +* Get-FileHash 'C:\temp\lfs\LifeSense_Everest_Test2-2023-5-17-7-37\model.xml' 112 +** place in Origin.xml 113 +*** <Checksum Uri="/model.xml">DEADD2734B789135ED627061A385FC2C1096718A7D3398658DF9097196C1F571</Checksum> 114 + 115 +== Recalculate Signature == 116 + 117 +* incubator/ebsphere.crm/ebs-devops-devops-sql/calc-signature-bacpac.ps1 118 +* modify Origin.xml 119 +** Checksum attribute for model.xml 120 + 121 +