Sayfalar

14 Şubat 2019 Perşembe

AlwaysOndan çıkarılmış database'i second (ikinci) note da AlwayOn'a alma

Merhabalar,

Eğer Database'iniz daha önceden ikinci yada diğer notlarda ise çıkartmışsanız yada bir şekilde AlwaysOn listenerdan cıkarmışsanız. Aşağıdaki adımlarla ve benim gibi görsel değilde komutlarla çalışmaya alışmışsanız hızlı bir şekilde alwayson'a alabilirsiniz..


1Adım:
A) eğer Dblerinizin sürekli full ve log backupları alınıyorsa aşağıdaki komutla backuplarınız alındığı pathleri çıkarın..

SELECT          physical_device_name,
                backup_start_date,
                backup_finish_date,
                backup_size/1024.0 AS BackupSizeKB
FROM msdb.dbo.backupset b
JOIN msdb.dbo.backupmediafamily m ON b.media_set_id = m.media_set_id
WHERE database_name = 'DATABASE_NAME'
ORDER BY backup_finish_date DESC
 
 Çıkan sonuc ".bak" ile biten dosya pathlerinden itibaren full backuptan sıra ile yukarıya restore edilecek(şuanki zamana kadar alınan backupları).
  
B)Eğer hazırda backupınız yoksa bu komutlarla full ve log backuplar alınır..(ilk note da çalıştırılacak.)
BACKUP DATABASE DATABASE_NAME 
   FROM DISK = '\\10.10.10.12\backupfile\DATABASE_NAME.bak'
WITH COPY_ONLY;
GO

BACKUP LOG DATABASE_NAME 
   FROM DISK = '\\10.10.10.12\backupfile\DATABASE_NAME.trn'
WITH COPY_ONLY;
GO

2Adım: ikinci notda çalıştırılacak restore işlemleri(elimizde backuplar var şimdi eşitlemeye geldi)
RESTORE DATABASE DATABASE_NAME 
   FROM DISK = '\\10.10.10.12\backupfile\DATABASE_NAME.bak' 
  WITH NORECOVERY, REPLACE, 
   MOVE 'vdk' TO 'W:\DATA\DATABASE_NAME.mdf',
   MOVE 'vdk_log' TO 'X:\LOG\DATABASE_NAME_log.ldf';
GO

RESTORE LOG DATABASE_NAME 
   FROM DISK = '\\10.10.10.12\backupfile\DATABASE_NAME4.trn' WITH NORECOVERY;
GO
   
RESTORE LOG DATABASE_NAME 
   FROM DISK = '\\10.10.10.12\backupfile\DATABASE_NAME3.trn' WITH NORECOVERY;
GO
RESTORE LOG DATABASE_NAME 
   FROM DISK = '\\10.10.10.12\backupfile\DATABASE_NAME2.trn' WITH NORECOVERY;
GO
RESTORE LOG DATABASE_NAME 
   FROM DISK = '\\10.10.10.12\backupfile\DATABASE_NAME1.trn' WITH NORECOVERY;
GO


3ADIM:Eşitleme tamamlandı şimdi sıra lsn'eri eşitlemek kaldı..
--->>eğer daha önce hiç gruba alınmadısya alttaki komuıtla gruba alabilirsin.
  ALTER AVAILABILITY GROUP [AO_GROUPNAME] ADD DATABASE [DATABASE_NAME]
go

--gruba alınmışsa zaten aşagıdaki komutla eşitlemeyi başlatabilir ve AlwaysOna alabilirsin.
ALTER DATABASE [vdk] SET HADR AVAILABILITY GROUP = AO_GROUPNAME;
go
 
4.ADIM:Eğer backupı alınmış db içeriğine bakmak istersen  aşağıdaki komutla detaylarını listeleyebilirsin.
RESTORE FILELISTONLY FROM DISK = '\\10.10.10.12\backupfile\DATABASE_NAME1.bak'


MSSQL,SQL,SQL SERVER, SQL BACKUP, ALWAYSON