Skip to content

Commit 3bca539

Browse files
authored
Create Move-SQL-DB.sql
1 parent 83c82b9 commit 3bca539

File tree

1 file changed

+157
-0
lines changed

1 file changed

+157
-0
lines changed

SQL Queries/Move-SQL-DB.sql

Lines changed: 157 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,157 @@
1+
-- Author: Lorne Sepaugh
2+
DECLARE @OpsMgrSQLInstance nvarchar(50) = '<OpsMgr DB Instance>'
3+
DECLARE @DWSQLInstance nvarchar(50) = '<DW DB Instance>'
4+
5+
DECLARE @tblName varchar(100)
6+
DECLARE @colName varchar(100)
7+
DECLARE @sqlstmt nvarchar(1000)
8+
9+
CREATE TABLE #tmp
10+
(
11+
TableName varchar(100),
12+
OldValue varchar(50),
13+
NewValue varchar(50)
14+
)
15+
16+
--
17+
--Update OperationsManager
18+
--
19+
USE OperationsManager
20+
21+
SET @tblName = 'MT_Microsoft$SystemCenter$ManagementGroup'
22+
SET @colName = (SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = @tblName AND COLUMN_NAME LIKE 'SQLServerName_%')
23+
24+
SET @sqlstmt = N'INSERT INTO #tmp SELECT TOP(1) ''' + @tblName + ''' AS TableName, ' + @colName + ' AS OldValue, NULL AS NewValue FROM ' + @tblName
25+
exec (@sqlstmt)
26+
27+
SET @sqlstmt = N'UPDATE TOP(1) ' + @tblName + ' SET ' + @colName + ' = ''' + @OpsMgrSQLInstance + ''''
28+
--select @sqlstmt
29+
exec (@sqlstmt)
30+
31+
SET @sqlstmt = N'UPDATE #tmp SET NewValue = (SELECT TOP(1) ' + @colName + ' FROM ' + @tblName + ') WHERE TableName = ''' + @tblName + ''''
32+
exec (@sqlstmt)
33+
34+
35+
SET @tblName = 'MT_Microsoft$SystemCenter$OpsMgrDB$AppMonitoring'
36+
SET @colName = (SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = @tblName AND COLUMN_NAME LIKE 'MainDatabaseServerName_%')
37+
38+
SET @sqlstmt = N'INSERT INTO #tmp SELECT TOP(1) ''' + @tblName + ''' AS TableName, ' + @colName + ' AS OldValue, NULL AS NewValue FROM ' + @tblName
39+
exec (@sqlstmt)
40+
41+
SET @sqlstmt = N'UPDATE TOP(1) ' + @tblName + ' SET ' + @colName + ' = ''' + @OpsMgrSQLInstance + ''''
42+
--select @sqlstmt
43+
exec (@sqlstmt)
44+
45+
SET @sqlstmt = N'UPDATE #tmp SET NewValue = (SELECT TOP(1) ' + @colName + ' FROM ' + @tblName + ') WHERE TableName = ''' + @tblName + ''''
46+
exec (@sqlstmt)
47+
48+
--
49+
--End update OperationsManager
50+
--
51+
52+
--
53+
--Update DW
54+
--
55+
USE OperationsManager
56+
57+
SET @tblName = 'MT_Microsoft$SystemCenter$DataWarehouse'
58+
SET @colName = (SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = @tblName AND COLUMN_NAME LIKE 'MainDatabaseServerName_%')
59+
60+
SET @sqlstmt = N'INSERT INTO #tmp SELECT TOP(1) ''' + @tblName + ''' AS TableName, ' + @colName + ' AS OldValue, NULL AS NewValue FROM ' + @tblName
61+
exec (@sqlstmt)
62+
63+
SET @sqlstmt = N'UPDATE TOP(1) ' + @tblName + ' SET ' + @colName + ' = ''' + @DWSQLInstance + ''''
64+
--select @sqlstmt
65+
exec (@sqlstmt)
66+
67+
SET @sqlstmt = N'UPDATE #tmp SET NewValue = (SELECT TOP(1) ' + @colName + ' FROM ' + @tblName + ') WHERE TableName = ''' + @tblName + ''''
68+
exec (@sqlstmt)
69+
70+
71+
SET @tblName = 'MT_Microsoft$SystemCenter$DataWarehouse$AppMonitoring'
72+
SET @colName = (SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = @tblName AND COLUMN_NAME LIKE 'MainDatabaseServerName_%')
73+
74+
SET @sqlstmt = N'INSERT INTO #tmp SELECT TOP(1) ''' + @tblName + ''' AS TableName, ' + @colName + ' AS OldValue, NULL AS NewValue FROM ' + @tblName
75+
exec (@sqlstmt)
76+
77+
SET @sqlstmt = N'UPDATE TOP(1) ' + @tblName + ' SET ' + @colName + ' = ''' + @DWSQLInstance + ''''
78+
--select @sqlstmt
79+
exec (@sqlstmt)
80+
81+
SET @sqlstmt = N'UPDATE #tmp SET NewValue = (SELECT TOP(1) ' + @colName + ' FROM ' + @tblName + ') WHERE TableName = ''' + @tblName + ''''
82+
exec (@sqlstmt)
83+
84+
85+
SET @tblName = 'MT_Microsoft$SystemCenter$DataWarehouse$AppMonitoring_Log'
86+
SET @colName = (SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = @tblName AND COLUMN_NAME LIKE 'Post_MainDatabaseServerName_%')
87+
88+
SET @sqlstmt = N'INSERT INTO #tmp SELECT TOP(1) ''' + @tblName + ''' AS TableName, ' + @colName + ' AS OldValue, NULL AS NewValue FROM ' + @tblName
89+
exec (@sqlstmt)
90+
91+
SET @sqlstmt = N'UPDATE TOP(1) ' + @tblName + ' SET ' + @colName + ' = ''' + @DWSQLInstance + ''''
92+
--select @sqlstmt
93+
exec (@sqlstmt)
94+
95+
SET @sqlstmt = N'UPDATE TOP(1) #tmp SET NewValue = (SELECT ' + @colName + ' FROM ' + @tblName + ') WHERE TableName = ''' + @tblName + ''''
96+
exec (@sqlstmt)
97+
98+
99+
SET @tblName = 'MT_Microsoft$SystemCenter$DataWarehouse_Log'
100+
SET @colName = (SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = @tblName AND COLUMN_NAME LIKE 'Post_MainDatabaseServerName_%')
101+
102+
SET @sqlstmt = N'INSERT INTO #tmp SELECT TOP(1) ''' + @tblName + ''' AS TableName, ' + @colName + ' AS OldValue, NULL AS NewValue FROM ' + @tblName
103+
exec (@sqlstmt)
104+
105+
SET @sqlstmt = N'UPDATE TOP(1) ' + @tblName + ' SET ' + @colName + ' = ''' + @DWSQLInstance + ''''
106+
--select @sqlstmt
107+
exec (@sqlstmt)
108+
109+
SET @sqlstmt = N'UPDATE #tmp SET NewValue = (SELECT TOP(1) ' + @colName + ' FROM ' + @tblName + ') WHERE TableName = ''' + @tblName + ''''
110+
exec (@sqlstmt)
111+
112+
113+
SET @tblName = 'MT_Microsoft$SystemCenter$OpsMgrDWWatcher'
114+
SET @colName = (SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = @tblName AND COLUMN_NAME LIKE 'DatabaseServerName_%')
115+
116+
SET @sqlstmt = N'INSERT INTO #tmp SELECT TOP(1) ''' + @tblName + ''' AS TableName, ' + @colName + ' AS OldValue, NULL AS NewValue FROM ' + @tblName
117+
exec (@sqlstmt)
118+
119+
SET @sqlstmt = N'UPDATE TOP(1) ' + @tblName + ' SET ' + @colName + ' = ''' + @DWSQLInstance + ''''
120+
--select @sqlstmt
121+
exec (@sqlstmt)
122+
123+
SET @sqlstmt = N'UPDATE #tmp SET NewValue = (SELECT TOP(1) ' + @colName + ' FROM ' + @tblName + ') WHERE TableName = ''' + @tblName + ''''
124+
exec (@sqlstmt)
125+
126+
SET @tblName = 'MT_Microsoft$SystemCenter$OpsMgrDWWatcher_Log'
127+
SET @colName = (SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = @tblName AND COLUMN_NAME LIKE 'Post_DatabaseServerName_%')
128+
129+
SET @sqlstmt = N'INSERT INTO #tmp SELECT TOP(1) ''' + @tblName + ''' AS TableName, ' + @colName + ' AS OldValue, NULL AS NewValue FROM ' + @tblName
130+
exec (@sqlstmt)
131+
132+
SET @sqlstmt = N'UPDATE TOP(1) ' + @tblName + ' SET ' + @colName + ' = ''' + @DWSQLInstance + ''''
133+
--select @sqlstmt
134+
exec (@sqlstmt)
135+
136+
SET @sqlstmt = N'UPDATE #tmp SET NewValue = (SELECT TOP(1) ' + @colName + ' FROM ' + @tblName + ') WHERE TableName = ''' + @tblName + ''''
137+
exec (@sqlstmt)
138+
139+
140+
USE OperationsManagerDW
141+
142+
INSERT INTO #tmp SELECT TOP(1) 'MemberDatabase' AS TableName, ServerName AS OldValue, NULL AS NewValue FROM MemberDatabase
143+
UPDATE TOP(1) dbo.MemberDatabase SET ServerName = @DWSQLInstance
144+
UPDATE #tmp SET NewValue = (SELECT TOP(1) ServerName FROM MemberDatabase) WHERE TableName = 'MemberDatabase'
145+
146+
USE OperationsManager
147+
148+
INSERT INTO #tmp SELECT TOP(1) 'GlobalSettings' AS TableName, SettingValue AS OldValue, NULL AS NewValue FROM GlobalSettings WHERE ManagedTypePropertyId IN (select ManagedTypePropertyId from [dbo].[ManagedTypeProperty] where [ManagedTypePropertyName] like 'MainDatabaseServerName')
149+
UPDATE TOP(1) GlobalSettings SET SettingValue = @OpsMgrSQLInstance WHERE ManagedTypePropertyId IN (select ManagedTypePropertyId from [dbo].[ManagedTypeProperty] where [ManagedTypePropertyName] like 'MainDatabaseServerName')
150+
UPDATE #tmp SET NewValue = (SELECT TOP(1) SettingValue FROM GlobalSettings WHERE ManagedTypePropertyId IN (select ManagedTypePropertyId from [dbo].[ManagedTypeProperty] where [ManagedTypePropertyName] like 'MainDatabaseServerName')) WHERE TableName = 'GlobalSettings'
151+
152+
--
153+
--End Update DW
154+
--
155+
156+
select * from #tmp
157+
drop table #tmp

0 commit comments

Comments
 (0)