Wiki source code of migrate to managed instance

Version 4.2 by Rudi Marais on 2023/05/22 23:50

Show last authors
1 * compressed file
2 * contains ddl and dml data
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
12 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
13 11. reason for this is to identify any procedure/triggers/functions that dont compile
14 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
15 11. repeat step 1 and 2 until you get zero objects that can't compile
16 1. check sql code for any reserved varables ie... and fix on DB
17 1. run dacpac export
18 11. make sure nothing is running on source DB
19 11. upgrade source DB to high level for quicker export and set back to what it was once done
20 11. cmd
21 1. run dacpac publish to managed instance
22 1.
23
24 = =
25
26
27
28 = Exporting =
29
30 * no encrypted objects, they need to be decrypted or removed prior to exporting.
31
32 = Importing =
33
34
35 = Modifying and Troubleshooting =
36
37 * Get-FileHash 'C:\temp\lfs\LifeSense_Everest_Test2-2023-5-17-7-37\model.xml'
38 ** place in Origin.xml
39 *** <Checksum Uri="/model.xml">DEADD2734B789135ED627061A385FC2C1096718A7D3398658DF9097196C1F571</Checksum>
40
41 == Recalculate Signature ==
42
43 * incubator/ebsphere.crm/ebs-devops-devops-sql/calc-signature-bacpac.ps1
44 * modify Origin.xml
45 ** Checksum attribute for model.xml
46
47