SQL Server’da Disk, IP ve Hostname Taşıma İşlemleri

            Bu Makalede bir sunucuda çalışan SQL Server’ın kullandığı disklerin, Windows IP ve computer name’in başka bir sunucuda çalışan SQL Server’a (Yeni kurulum) taşıma işlemlerinin yapılması anlatılacaktır. SQL Server Kurulumu için “SQL ServerNasıl Kurulur” adlı makaleyi okuyabilirsiniz. Bu işlem SQL Server Always-On mimarisinde hem root disk, hem de root disk altında bulunan mount diskler üzerinde gerçekleştirilmiştir. Yapılacak bu çalışmanın amacı büyük database sahip sunucuların, database restore edilmeden sunucu değişimini sağlamaktır. Çalışmanın anlaşılır olması adına; *Disklerin bulunduğu sunucuya A *Disklerin taşınacağı sunucuya B *Always-On Primary Sunucusunu C diye adlandıracağız. 1-) İlk olarak taşıma işlemi gerçekleştirilecek olan sunucuda (B) root disk tanımlanır. Disk tanımlama işlemi için “Disk Nasıl Tanımlanır” adlı makaleyi okuyabilirsiniz. 2-) Tanımlanan disk altında data file’ların bulunduğu yerdeki (A) klasörler, disklerin taşınacağı yerde (B) aynı isim ile klasör olarak oluşturulur. 3-) Yeni kurulan sunucuda (B) SQL Server kurulumu tamamlanır. Kurulacak olan SQL Server versiyon ve CU’ların aynı […]

SQL Server’da Disk, IP ve Hostname Taşıma İşlemleri

 

 

        Bu Makalede bir sunucuda çalışan SQL Server’ın kullandığı disklerin, Windows IP ve computer name’in başka bir sunucuda çalışan SQL Server’a (Yeni kurulum) taşıma işlemlerinin yapılması anlatılacaktır. SQL Server Kurulumu için “SQL ServerNasıl Kurulur” adlı makaleyi okuyabilirsiniz. Bu işlem SQL Server Always-On mimarisinde hem root disk, hem de root disk altında bulunan mount diskler üzerinde gerçekleştirilmiştir. Yapılacak bu çalışmanın amacı büyük database sahip sunucuların, database restore edilmeden sunucu değişimini sağlamaktır.

Çalışmanın anlaşılır olması adına;

*Disklerin bulunduğu sunucuya A

*Disklerin taşınacağı sunucuya B

*Always-On Primary Sunucusunu C diye adlandıracağız.

1-) İlk olarak taşıma işlemi gerçekleştirilecek olan sunucuda (B) root disk tanımlanır. Disk tanımlama işlemi için “Disk Nasıl Tanımlanır” adlı makaleyi okuyabilirsiniz.

2-) Tanımlanan disk altında data file’ların bulunduğu yerdeki (A) klasörler, disklerin taşınacağı yerde (B) aynı isim ile klasör olarak oluşturulur.

3-) Yeni kurulan sunucuda (B) SQL Server kurulumu tamamlanır. Kurulacak olan SQL Server versiyon ve CU’ların aynı olmasına dikkat edilmelidir.

4-)Taşınma işlemi yapılacak olan sunucuda (A) Availability Groups’ta hiçbir AG’nin primary olmadığından emin olunur. Eğer var ise Sync modda Secondary Makineye Failover işlemi yapılarak üzerindeki yük boşaltılır. Bu işlem hakkında bilgi edinmek için “SQL Server Always-On” Mimarisi adlı makaleyi inceleyebilirsiniz.
5-) Disk taşıma işlemi gerçekleştirilecek sunucunun (A) Secondary Replica olduğuna emin olduktan sonra Primary replica (C) üzerinden Full ve Log(Transactional) backup’lar kapatılır.

6-) Primary Replica (C) üzerinden secondary replica (A) çıkarılır.

7-) Primary Replica (C) üzerinden çıkarılan secondary replica (A) nın sahip olduğu tüm databaseler restoring mode’a geçtiğinden emin olunmalıdır.

8 -) Secondary Replica (A) üzerinde çalışan SQL Server Engine Configuration Manager üzerinden kapatılır.

9-) Secondary Replica (A) sunusundaki master,model ve msdb veri tabanları yedekleri alınarak bir klasöre kopyalanır.

10-) Yeni kurulan sunucunun (B) SQL Server Engine, Configuration Manager üzerinden kapatılır.

11-) Primary Replica (C) üzerinden failover cluster’a girip, secondary replica (A) clusterdan önce stop, sonra evict edilerek cluster dışına çıkarılır.

12-) Diskleri taşınacak sunucu (A) Unique id’leri not edilerek. Disklerin takılacağı yeni sunucuda (B) teker teker sırayla Unique id’ye göre takıldıktan sonra; takılan disk online moda çekilip, path’de tanımlı diske sağ click dedikten sonra “Change Drive Letter and Paths” diyerek tanımlamak istediğimiz path seçilip yolu gösterilir ve eski disk yeni sunucuda aynı path üzerinde aynı isimle oluşmuş olacak. Birden fazla disk olması durumunda her disk için tek tek yapılacak.

13-) Yeni kurulan sunucu (B) üzerindeki master, model ve msdb database’leri yedeklenir ve Secondary Replica’dan (A) kopyalanan master, model ve msdb database’leri doğru path’lere yapıştırılır. Böylece joblar, kullanıcılar ve sisteme ait tüm bilgiler secondary replica (A) ile birebir aynı olacaktır.
14-) Kopyalama işlemleri bittikten sonra SQL Server Configuration Manager’dan start edilerek engine çalıştırılır. Eğer engine start ettiğinizde çalışmaz ise lütfen errorlog’ları inceleyiniz.
15-) SQL Server Engine çalıştıktan sonra, Always-On’a dahil olan tüm database’lerin restoring mode’da, stand alone olanların açık modda olduğundan emin olunur.
16-) Diskleri çıkarılan secondary replica (A) başlangıç sekmesinden “Open Network & Internet Settings” kısmından “Network and Sharing Center” ekranından Host connectionları bölümünden tüm details’ler not edilir. Ve bu kısımda IP kullanılmayan bir IP’ye Internet Protocol Version 4(TCP/IPv4) properties bölümünden değiştirilerek set edilir.

17-) Diskleri çıkarılan secondary replicanın (A) name’ini disklerin takıldığı sunucuya (B) vereceğimizden dolayı computer name’i değiştirilir. This PC üzerinden “change settings” tıkladıtan sonra “system properties” tabından change diyerek computer name değiştirilir.

18-) Disklerin takıldığı yeni kurulan sunucuya (B) disklerin söküldüğü secondary replica sunucusunun (A) IP ve name bilgileri aynı olacak şekilde tanımlanır.

19-) Yeni ismi ve IP si ile tanımlanan sunucu restart edilir. Restart’tan geldikten sonra Yeni ismi (B) ile bu node failover cluster içine dahil edilir. Dahil edilen bu node (B), eski Always On group içerisine (C) replica olarak eklenir. Full ve log backup alınmamış olan databaseler, yeni secondary olan replicamız (B) üzerinden var olan Availability Group (AG) altndaki availability database’ler join edilerek Always-On’a dâhil edilir.

 

Benzer Yazılar

SQL SERVER RIGHT-LEFT PARTITION

SQL Server 5 gün önce

SQL Server’da partitioning, büyük veritabanı tablolarını daha yönetilebilir ve performanslı hale getirmek amacıyla kullanılan bir tekniktir. Bu teknik, tablonun verilerini fiziksel olarak değil, mantıksal olarak parçalara ayırır. Veriler, belirli bir partition function ve partition scheme kullanılarak farklı bölümlere yönlendirilir. Partitioning, özellikle büyük veri kümeleriyle çalışan veri tabanlarında sorgu performansını artırır ve veri yönetimini kolaylaştırır. Partition Function ve Partition Scheme nedir? Partition Function: Verilerin hangi kriterlere göre bölüneceğini belirler. Örneğin, bir tarih aralığına göre verileri ayırmak. Partition Scheme: Verilerin hangi filegroup’larda depolanacağını belirler.   Örnek olarak Range LEFT ve Range RIGHT olmak üzere iki ayrı tabloda partition nasıl yapılır sizlere göstereceğim. İlk olarak Range LEFT olan partition yapısından başlayacağım. Öncelikle Veri tabanıma yeni filegroup ve file ekliyorum Şimdi sıra FUNCTION ve SCHEME oluşturmakta ben tablomu yıllık olarak partition yaptım sizler ihtiyaçlarınız doğrultusunda aylık,günlük vs yapabilirsiniz. LEFT partition dediğimiz olay vermiş olduğunuz tarih aralığına eşit bir veri geldiğinde bu veriyi solundaki partition […]

Veritabanı Recovery Pending Durumu ve Düzeltme Seçenekleri

SQL Server 2 hafta önce

İçindekilerVeritabanı Recovery Pending Durumu Nedir?Veritabanı Neden Recover Pending Duruma Düşer?Recovery Pending Durumu Nasıl Çözülür?SonuçKaynaklarVeritabanı Recovery Pending Durumu Nedir? SQL Server’da veritabanları bazı nedenlere bağlı olarak “Recovery Pending” (Kurtarma Bekleme)  moduna geçebilir. Veritabanın düzgün bir şekilde kapatılmaması, eksik veya bozuk log dosyaları, disk depolama sorunları, sistemde yaşanan anormal şekilde çökmeler veya MS SQL Server’daki hatalar bu duruma sebep olabilir. Recovery durumu, aslında veritabanını tekrar kullanılabilir hale getirmek için bir kurtarma işlemi yürüttüğünü ifade eder ve üç aşamadan oluşur; Analysis (Analiz): Transaction log incelemesi yapılması ve işlemlerin tamamlanma (Commit) durumunun kontrol edilmesi, Redo (Yeniden İşleme): Tamamlanmış (Commit) ancak henüz diske yazılamamış olan işlemlerin yeniden işlenmesi, Undo (Geri Alma): Başlamış (Begin) ancak tamamlanmamış (Commit) işlemlerin  geri alınmasıdır.   Veritabanı Neden Recover Pending Duruma Düşer? SQL Server Restart Süreci SQL Server servisi restart edildiğinde üzerinde bulunan tüm veritabanları tutarlılığın sağlanması için otomatik olarak recovery moduna girer ve redo/undo işlemleri sürecince devam eder. Ani Sistem […]

SQL Server DMV ve DMF – 6

SQL Server 2 hafta önce

Bu yazımızda DMV ve DMF Serimizin 6.sına devam edeceğiz. Bir önceki seride Memory’ye ilişkin DMV ve DMF’leri ele almıştık. Bu yazıda Memory konusunda devam edeceğiz. SQL server’da Memory kavramı en önemli kavramlardan biridir. Özellikle tüm transaction işlemlerinin önce Buffer sonra disk üzerinden devam ettiğini düşünürsek buffer’ın oynadığı kritik rolü daha iyi anlayabiliriz. Bu yazıda Memory’nin durumunu ve monitör edilmesine bakacağız. Özellikle Performans sorunlarında memory konusunda sorun yaşandığı durumda nasıl okumak gerektiği önemli rol oynamaktadır. Hangi database’de, hangi tablo’da sorun yaşandığına ilişkin bilgilere bu paylaşım sonrasında görebileceğiz. SQL Server’ın Memory kullanım durumunu incelediğimde; select physical_memory_in_use_kb/1048576.0 AS ‘physical_memory_in_use (GB)’, locked_page_allocations_kb/1048576.0 AS ‘locked_page_allocations (GB)’, virtual_address_space_committed_kb/1048576.0 AS ‘virtual_address_space_committed (GB)’, available_commit_limit_kb/1048576.0 AS ‘available_commit_limit (GB)’, page_fault_count as ‘page_fault_count’ from  sys.dm_os_process_memory; Görsel – 1   Physical_memory_in_use: Kullanımda olan Fiziksel Memory miktarını gösterir. locked_page_allocations: Memory’de lock’lanmış olan Page’lerin miktarını belirtir. virtual_address_space_contained: SQL Server VAS(Virtual Adress Space) için ayrılan miktarı belirtir. available_commit_limit: SQL Server tarafından kullanılabilecek Memory Miktarını gösterir. […]

0 Yorum

Yorum Yaz

Rastgele