13 Mart 2014 Perşembe

SQL Server Cluster Ortamında User Database, System Database, Reporting Server veritabanlarının (master, model, msdb) yeni sürücüye taşınması.

Yeni Diskler tüm Cluster üyesi sunuculara yada tekil sunucuya tanıtılır.
Herhangi bir cluster üyesi sunucudan Disk Management ile disk Online ve Initialize edilir ve Formatlanır. Disk Diğer Cluster üyesi sunucularda kullanılmayan sürücü harfi belirlenir.
Disk tekrar offline yapılır.
Failove Cluster Manager konsolunda Storage başlığına sağ tıklanır ve Add Storage seçilir ve disk eklenir.
Service and Application altında diskin ekleneceği SQL Cluster Resource üzerinde sağ tıklanır ve Add Storage seçilir.

Eklenen disk Other Resource altında SQL Server (InstanceName) özelliklerinde Dependencies e eklenir.

OK butonuna tıklanır. SQL Server Resource Offline ve Online yapılarak yapılana ayarların etkinleşmesi sağlanır.

Auditlerin taşınması:
Eğer Audit yapılandırılmış ise SQL Server Man Consolde Security --> Audits altındaki her tanımlama için, sağ tıklanır Disable Audit seçilir. Sonra Audit özelliklerinde teki log dosyalarının konumları değiştirilir.Önceki log dosyaları yeni diskteki belirlenmiş klasörlere kopyalanır. Enable Audit ile loglama aftifleştirilir. Eğer fazla dosya varsa bu işlem daha sonraya bırakılabilir.

User Db lerin taşınması:
Taşınacak veritabanları Deatach edilip yeni konumlarına kopyalanıp attach edilir.

TempDb nin taşınması:
Önce Temp dblerin konumunu değiştiriyoruz. Taşınacak sürücünün T olduğunu düşünelim.

USE master
GO
ALTER DATABASE tempdb MODIFY FILE (NAME = tempdev, FILENAME = 'T:\TmpDATA1\tempdb.mdf') 
GO 
ALTER DATABASE tempdb MODIFY FILE (NAME = templog, FILENAME = 'T:\TmpDATA1\tempdb.ldf')
GO

SQL Servisi yeniden başlatılır. 

Temp dbler için Internet üzerinde konfigürasyon önerilerini bulabilirsiniz. Genel olarak CPU sayısı kadar tmp db açılması yada 8 den fazla yapılmaması gibi öneriler bulunmakta. Bu çalışmada 8 core olan bir sunucuda tempDb leri oluşturuyoruz. TempDb lerin oluşturulacağı sürücünün T: sürücüsü olduğunu düşünelim.


ALTER DATABASE tempdb

ADD FILE (NAME = tempdb1, FILENAME = 'T:\TmpDATA1\tempdb1.mdf', SIZE = 1024);

ALTER DATABASE tempdb

ADD FILE (NAME = tempdb2, FILENAME = 'T:\TmpDATA1\tempdb2.mdf', SIZE = 1024);

ALTER DATABASE tempdb

ADD FILE (NAME = tempdb3, FILENAME = 'T:\TmpDATA1\tempdb3.mdf', SIZE = 1024);

ALTER DATABASE tempdb

ADD FILE (NAME = tempdb4, FILENAME = 'T:\TmpDATA1\tempdb4.mdf', SIZE = 1024);

ALTER DATABASE tempdb

ADD FILE (NAME = tempdb5, FILENAME = 'T:\TmpDATA1\tempdb5.mdf', SIZE = 1024);

ALTER DATABASE tempdb

ADD FILE (NAME = tempdb6, FILENAME = 'T:\TmpDATA1\tempdb6.mdf', SIZE = 1024);

ALTER DATABASE tempdb

ADD FILE (NAME = tempdb7, FILENAME = 'T:\TmpDATA1\tempdb7.mdf', SIZE = 1024);

GO

SQL Servisi yeniden başlatılır. Dosyaların verilen konumda oluştuğu kontrol edilebilir.


Sistem Veritabanlarının Taşınması:
Sistem veritabanları taşımak için aşağıdaki Query uygulanır. 

ALTER DATABASE  Model  MODIFY FILE ( NAME = modeldev, FILENAME = 'K:\Data1\model.mdf' )
ALTER DATABASE  Model  MODIFY FILE ( NAME = modellog , FILENAME = 'K:\Data1\modellog.ldf' )

ALTER DATABASE  MSDB MODIFY FILE ( NAME = MSDBData, FILENAME = 'K:\Data1\MSDBData.mdf' )
ALTER DATABASE  MSDB MODIFY FILE ( NAME = MSDBLog , FILENAME = 'K:\Data1\MSDBLog.ldf' )

SQL Servisi durdurulur.
Dosyalar ilgili konuma kopyalanır.

Master Db nin taşınamsı için
SQL Server Configuration Manager açılır. SQL Server Services başlığına tıklanır. Sağdaki pencerede SQL Server (InstanceName) özelliklerine girilir. Advanced tabında Start Parameters taşınacak klasörlerin yolları
yazılarak düzenlenir.

Startup Parameters ilk hali
-dL:\MSSQL10_50.MSSQLSERVER2\MSSQL\DATA\master.mdf;-eL:\MSSQL10_50.MSSQLSERVER2\MSSQL\Log\ERRORLOG;-lL:\MSSQL10_50.MSSQLSERVER2\MSSQL\DATA\mastlog.ldf

Düzenlenen hali
-dK:\Data1\master.mdf;-eK:\Logs\ERRORLOG;-lK:\Data1\mastlog.ldf

Dump Directory parametresindeki klasör yolu da düzenlenir.

Aşağıdaki Query ile MasterDB nin konumunun doğru olduğu gözlemlenir.
SELECT name, physical_name AS CurrentLocation, state_desc
FROM sys.master_files
WHERE database_id = DB_ID('master');
GO

SQL Servisi başlatılır.

Log Konumlarının değiştirilmesi.
SQL Management Studio açılır. SQL Server Agent altında Error Logs üzerinde sağ tıklanır ve Configure seçilir. Ekrana gelen pencerede ilgili ayarlar yapılandırılır.

Analysis Service Taşınması:
SQL Management Studio açılır,Analysis Service e bağlanılır. 










Analysis Server Özelliklerinde BackupDir, DataDir, LogDir yolları düzenlenir.


Management Studio kapatılır. Analysis Service durdurulur. OLAP klasörü yeni sürücüye kopyalanır.
Tüm Cluster üyesi sunucularda aşağıdaki Registry ayarları yapılır.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\MSSQLServerOLAPService
yada
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\MSOLAP$InstanceName anahtarında ImagePath yeni sürücü yolu olarak düzenlenir.


OLAP\Config\msmdsrv.ini dosyası açılır ve yol tanımları düzenlenir.

<ConfigurationSettings>
    <DataDir>K:\OLAP\Data</DataDir>
    <LogDir>K:\OLAP\Log</LogDir>
    <BackupDir>K:\OLAP\Backup</BackupDir>
     <AllowedBrowsingFolders>K:\OLAP\Backup\|K:\OLAP\Log\</AllowedBrowsingFolders>
    <TempDir>K:\OLAP\Temp</TempDir>


Reporting Services Taşınması:
Aynı sunucu içinde başka bir sürücüye taşıma yapacağımız için ReportingServer ve ReportingServTempDB veritabanları Detach edip, ReportServer.mdf, ReportServer_log.ldf, ReportServerTempDB, ReportServerTempDB_log.ldf dosyaları yeni konuma kopyalanır ve atach edilir. Report Server URL sine bağlanılır. Sorun olursa Reporting Services Configuration Manager da Database başlığı altında Change Database butonu tıklanır ve ekrana gelen pencerede Choose an existing report server database seçilir ve Next butonuna tıklanır. Sonraki pencerede SQL Server üzerinde yönetim yetkisine sahip SQL kullanıcısı yada zeten login olmuş kullanıxı yetkisi ile Report Server a bağlanılır. Test Connection ile bağlantı doğrulanır. Credentials bölümünde Credentials seçilerek ayarlar bitirilir ve tekrar bağlantı test edilir.


Default Database Location:

SQL Management Studio açılır. Sunucu adı üzerinde sağ tıklanır, ekrana gelen pencerede Database Settings de yeni sürücü ve klasör yolu düzenlenir.


Failover Cluster Manager açılır ve Devreden çıkarılacak Diskin ilişkisi, SQL Server (Instance Name) özelliklerinde, Dependicies tabında seçilerek Delete butonu ile kaldırılır ve Disk Offline yapılır.SQL Server Active Node, uygun olan diğer bir Node üzerine alınır. Hatalar gözlemlenir. Eğer hata görülmüyorsa Failover Cluster Manager, Service and applications altında SQL Server (Instance Name) seçililir ve detay penceresinde Disk Drives altında ilgili disk seçlerek Remove from SQL server seçilerek işlem bitirilir.

Move master db sql cluster






Hiç yorum yok:

Yorum Gönder