Configuration Manager 2012 Database Taşıma
SCCM 2012 Move Database
Bu yazıda SCCM 2012 sunucunuzun DB sini ve Wsus DB sini başka bir SQL sunucusuna nasıl taşınacağınız anlatmaya çalışacağım.
UYARI: İşleme başlamadan önce SCCM sunucunuzun ve SQL DB yedeklerinizi almanızı öneriyorum. İşlem esnasına karşılaşabileceğiniz riskler sizin sorumluluğunuzdadır.
Demo ortamımda SCCM ve SQL server olmak üzere 2 adet sunucu var. Ben DB ile SCCM i aynı sunucu üzerinde birleştireceğim. Sizler tam tersini de yapabilirsiniz.
İlk olarak hale hazırda çalışan SQL sunucusunun üzerine giderek mevcut sürüm ve varsa SP ya da CU paketi var mı kontrol edelim. Kullanacağımız sorgu aşağıdaki gibidir.
Yeni kurulum yapacağınız sunucuyu da aynı şekilde kurarak sürümlerini eşitlemenizi öneririm. SQL server kurulumuna bu yazımdaki ilgili ekran görüntülerini takip ederek bulabilirsiniz.
SQL Collation çok önemli. Mutlaka "SQL_Latin1_General_CP1_CI_AS" olmalıdır. Kurulumda dikkat etmenizi öneririm.
SELECT
SERVERPROPERTY('productversion'),
SERVERPROPERTY
('productlevel'),
SERVERPROPERTY
('edition')
Yeni sunucuya SQL kurulumu işlemi bittikten sonra mevcut SQL sunucunun üzerindeki SCCM DB' sinin yedeklenmesi gerekmektedir. Yedek alabilmek için önce aşağıdaki komutu SCCM sunucusunda çalıştırmalıyız.
C:\Program Files\Microsoft Configuration Manager\bin\X64\00000409>preinst.exe /stopsite
Komut aşağıdaki şekilde uzun bir çıktı verir. En sonraki "All site Services are stopped" mesajını almanız gerekmektedir.
Şimdi yedekleme işlemini aşağıdaki gibi yapabiliriz.
Yedekleme işlemi tamamlandığında alınan yedek dosyası yeni SQL sunucusuna kopyalanır. Restore etmeden önce yeni SQL sunucusunda "CLR INTEGRATION" enable edilmelidir. Bu işlem aşağıdaki komut ile SQL Management Studio üzerinden yapılmalıdır.
İlk olarak durumu aşağıdaki query ile sorgulayalım.
SELECT
*
FROM
sys.configurations
WHERE
name
=
'clr enabled'
Öncesi
Enable etme komutunu çalıştıralım.
sp_configure
'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure
'clr enabled', 1;
GO
RECONFIGURE;
GO
Sonra tekrar sorgulama yaparak kontrol edelim.
Artık Restore işlemini aşağıdaki gibi yapabiliriz.
Yedekten dönme işlemi tamamlandı.
Şimdi SQL Broker özelliğini enable etmemiz gerekli. Bunun için aşağıdaki komutları kullanacağız. Her zaman olduğu gibi ilk olarak mevcut durumu kontrol edelim.
Kontrol Sorgusu:
select
name, collation_name, user_access_desc, is_read_only, state_desc, is_trustworthy_on, is_broker_enabled,is_honor_broker_priority_on
from
sys.databases
Şimdi Enable edelim. Bunun için aşağıdaki sorguları ayrı ayrı çalıştırınız. Kendi DB'nizin site kodunu girmeyi unutmayınız. J
USE
master
;
GO
ALTER
DATABASE
CM_ATK
SET
ENABLE_BROKER
with
rollback
immediate
;
GO
----
USE
master;
GO
ALTER
DATABASE
CM_ATK
SET
TRUSTWORTHY
ON
GO
----
USE
master;
GO
ALTER
DATABASE
CM_ATK
SET
HONOR_BROKER_PRIORITY
ON;
GO
Komutların çıktıları aşağıdaki gibidir.
Şimdi kontrol sorgumuzu tekrar çalıştırarak işlemi doğrulayalım.
Bu işlemi de bitirdikten sonra SCCM sunucumuza yeni DB'nin yerini gösterebiliriz. Bunun için "Configuration Manager Setup" işlemini başlatacağız. Ben CMD'yi run as admin olarak açarak çalıştırmanızı öneriyorum.
C:\Program Files\Microsoft Configuration Manager\bin\X64>setup.exe
Ve işlem başlar. Log u mutlaka takip ediniz.
İşlem tamamlandıktan sonra sunucuyu reboot etmelisiniz. Açıldıktan sonra eski sunucu ile ilgili temizlik işlemlerini yapmaya başlayacağız. İlk olarak eski sunucu üzerindeki rollerden olan "Reporting Services Point" rolünü kaldıralım.
UYARI! : Önceden hazırladığınız Custom Raporlar var ise mutlaka yedekleyiniz.
Bu rol kalktıktan sonra geride iki rol kalacak. Ancak bu rollere sağ tıkladığınızda "Remove" seçeneği pasif durumda olacaktır. Bu yüzden üst taraftan sunucuya sağ tık yaparak "Delete" seçeneğini seçerek kaldırmayı deneyeceksinizdir. Ancak buda başarılı olmayacaktır. Bunun nedeni tasarım olarak bu silme işlemini 1440 dk (2 saat) sonra SCCM kendisi yapacaktır. Beklemeniz yeterli aslında.
Ama sabırsızsanız ve süreci hızlandırmak istiyorsanız regedit üzerinden bu süreyi kısaltabilirsiniz. Bunun için aşağıdaki anahtara gidilir, "Deinstallation Start Time" anahtarının değeri 1 olarak set edilir.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\Components\SMS_SITE_COMPONENT_MANAGER\Component Servers\SCCM.sertactopal.COM.TR
Daha sonra "SMS_SITE_COMPONENT_MANAGER" servisi Stop edilir ve Start edilir.
"Componnent Server" rolünün gittiğini göreceksiniz. Artık üst taraftan sunucu adına sağ tık yaparak sunucu silebilirsiniz.
Son durum aşağıdaki gibi olacaktır.
İşlemlerimiz tamamlandı. Sistemimiz sağlıklı olarak çalışıyor olmalı.
UYARI : Yeni database sunucusu üzerine "Reporting Services Point" rolünü kurmayı unutmayın.
Yazının bu bölümden sonrası WSUS DB sinide taşımak isteyenler için. Benim ortamımda kaldıracağım SQL sunucusu üzerinde Wsus DB'side var ve onu da SCCM sunucusu üzerine almak istiyorum.
İlk olarak ortamdan kaldıracağınız SQL sunucusu ve aktarımı yapacağınız SCCM sunucu üzerindeki IIS Admin ve Windows Update Servislerini durdurun.
SQL Server Management Studio konsolunu açın ve "SUSDB" ye sağ tık özellikler yaparak DB'nin durduğu klasörü öğrenin ve oraya gidin.
İki adet dosya göreceksiniz.
Şimdi datayı "Detach" edin.
İşlem bittikten sonra yukarıdaki resimdeki 2 dosyayı yeni SQL sunucusunda durmasını istediğiniz yere kopyalayın. Yeni SQL sunucusunda "SQL Server Management Studio" yu açın ve data yı "Attach" edin.
Ve data geldi ama işlem bitmedi. Gerekli izinleri vermemiz gerekli.
Bunun için aşağıdaki resimdeki gibi "Security > Logins" altında bulunan "NT AUTHORITY\NETWORK SERVICE" kullanıcısına sağ tık özellikler diyerek "User Mapping" sekmesine geliyoruz.
Son durum aşağıdaki gibi olmalı.
Daha sonra SCCM sunucusunda regedit açılır ve aşağıdaki anahtara gidilir.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Update Services\Server\Setup "SqlServerName" anahtarına yeni SQL sunucusunun adı yazılır.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\Components\SMS_WSUS_SYNC_MANAGER Adresindeki "LastDefServerDB" anahtarına yeni SQL sunucu adını girilir.
Bu işlemlerden sonra sunucuyu Reboot ediniz. Sunucu açıldıktan sonra
"C:\Program Files\Microsoft Configuration Manager\Logs\WCM.log" dosyasını açarak sorunsuz olarak database bağlantısının olduğunu gözlemleyiniz.
Sorun olmadığını gördüğünüzde SUP SYNC işlemini başlatın "C:\Program Files\Microsoft Configuration Manager\Logs\wsyncmgr.log" dosyasını gözleyiniz. İşlemlerin sorunsuz olduğunu doğrulayınız.