Last modified by Rudi Marais on 2024/03/28 18:51

<
From version < 8.17 >
edited by Rudi Marais
on 2024/03/28 18:33
To version < 8.11 >
edited by Rudi Marais
on 2024/03/07 14:46
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,49 +1,15 @@
1 -
2 -
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]]
3 3  * sqlpackage
4 4  ** [[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]]
5 5  ** [[https:~~/~~/learn.microsoft.com/en-us/sql/tools/sqlpackage/sqlpackage-download>>https://learn.microsoft.com/en-us/sql/tools/sqlpackage/sqlpackage-download]]
6 6  ** C:\Program Files\Microsoft SQL Server\160\DAC\bin
11 +* turn off real time scan (anti virus)
7 7  
8 -
9 -1. put db in readonly mode
10 -11. ALTER DATABASE Everest_Test SET READ_ONLY WITH NO_WAIT
11 -
12 -1. scale db to accetable performance ie dtus 500
13 -
14 -1. turn off real time scan (anti virus)
15 -
16 -1. run bcp extract scripts
17 -11. everest & docs parallel
18 -11. extract run from smallest to largest table
19 -
20 -1. run schema extracts
21 -11. not in parallel!
22 -11. [[https:~~/~~/github.com/microsoft/mssql-scripter>>https://github.com/microsoft/mssql-scripter]]
23 -11. C:\Users\alliancetest\.mssqlscripter
24 -11. mssql-scripter -S "kula.database.windows.net" -d Everest_Test -U ebsadmin -P xxx -r -f E:\temp\khula_test.sql ~-~-display-progress ~-~-enable-toolsservice-logging
25 -
26 -1. create db
27 -
28 -1. create schemas
29 -11. prep scripts first
30 -11. document references
31 -11. make sure ddl audit triggers are disabled
32 -
33 -1. disable all indexes except clustered
34 -
35 -1. run imports [parallel]
36 -11. imports runs from smallest to largest table
37 -​​​​​​​
38 -1. verify record counts from pre and post
39 -
40 -1. enable indexes
41 -1. enable ddl trigger
42 -
43 -1.
44 -
45 -
46 -
47 47  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
48 48  11. reason for this is to identify any procedure/triggers/functions that dont compile
49 49  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
... ... @@ -62,12 +62,10 @@
62 62  
63 63  * C:\Users\alliancetest\.mssqlscripter
64 64  * mssql-scripter -S "kula.database.windows.net" -d Everest_Test -U ebsadmin -P xxx -r -f E:\temp\khula_test.sql ~-~-display-progress ~-~-enable-toolsservice-logging
65 -
66 -
67 67  )))
68 68  
69 -{{code language="sql"}}
70 --- index
33 +(% class="wikigeneratedid" id="H" %)
34 + {{code language="sql"}}-- index
71 71  select concat('echo ''',SCHEMA_NAME(schema_id), '_', BASE64_ENCODE (cast(name as varbinary)), '.bcp ',SCHEMA_NAME(schema_id), '.', name , ''' >> test.log')
72 72  from sys.tables
73 73  where type = 'U'
... ... @@ -77,12 +77,12 @@
77 77  
78 78  -- export
79 79  
80 -select '$path = "E:\temp\test\everest_test"' cmd union
81 -select '$server = "mytest.database.windows.net"' union
82 -select '$username = "sa"' union
83 -select '$password = "123456"' union
84 -select 'New-Item -ItemType Directory -Force -Path "$path\export_log"' union
85 -select 'New-Item -ItemType Directory -Force -Path "$path\data"'
44 +select '$path = "E:\temp\test"'
45 +select '$server = "server.name"'
46 +select '$username = "user.name"'
47 +select '$password = "pass.word"'
48 +select 'New-Item -ItemType Directory -Force -Path "$path\export_log"'
49 +select 'New-Item -ItemType Directory -Force -Path "$path\data"'
86 86  
87 87  select export = concat('bcp "', DB_NAME(), '.',
88 88   SCHEMA_NAME(schema_id), '.', replace(name,'$','`$'),
... ... @@ -98,12 +98,12 @@
98 98  
99 99  -- import
100 100  
101 -select '$path = "E:\temp\test\everest_test"' cmd union
102 -select '$target_server = "sqlmi-ebs-prod.public.2a5fe6cde9a7.database.windows.net,3342"' union
103 -select '$target_db = "TST_Staging_Everest"' union
104 -select '$target_username = "import_test"' union
105 -select '$target_password = ''123456''' union
106 -select 'New-Item -ItemType Directory -Force -Path "$path\import_log"' union
65 +
66 +select '$path = "E:\temp\test"'
67 +select '$target_server = "server.name"'
68 +select '$target_username = "user.name"'
69 +select '$target_password = "pass.word"'
70 +select 'New-Item -ItemType Directory -Force -Path "$path\import_log"'
107 107  select 'New-Item -ItemType Directory -Force -Path "$path\data"'
108 108  
109 109  select import = concat('bcp "', '$target_db', '.',
... ... @@ -117,11 +117,9 @@
117 117  from sys.tables
118 118  where type = 'U'
119 119  and is_ms_shipped = 0
120 ---and temporal_type in (0,2);
84 +--and temporal_type in (0,2);{{/code}}
121 121  
122 -{{/code}}
123 123  
124 -
125 125  * disable anti-virus real time scan
126 126  *
127 127  

Need help?

If you need help with XWiki you can contact: