22 Ekim 2015 Perşembe

8 Kasım 2015 Tarihine Ertelenen Saat değişikliği Hakkında

Bu sene 25 Ekim 2015 Tarihinde olması gereken  kış saatine geçiş  Türkiye genelinde 8 Kasım 2015 Pazar gününe ertelendiği için sunucu ve bilgisayarlarımızın otomatik saat değişimini 8 Kasım 2015 Pazar gününe ötelememiz gerektiği hakkında Microsoft düzeltme yaması çıkarmıştır.Yama yüklemeden de bu işlem yapılabilmektedir.Bunun için kayıt defteri değişikliği yapılması gerekmektedir.Aşağıdaki kodları not defteri  açarak reg uzantılı kayıt ettiğimizde  çift tıklayıp kayıt defterini ilgili anahtaları ekleyebiliriz.Bundan önce ilgili değişiklik yapacağımız registry kayıtlarının yedeğini almalıyız.


Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
"DaylightName"="@tzres.dll,-1501"
"StandardName"="@tzres.dll,-1502"

"TimeZoneKeyName"="Turkey Standard Time"


Yukarıdaki kod saat dilimimizi İstanbul saat dilimine çekecektir.Bunu not defterine reg1 adıyla reg uzantılı kaydedebiliriz.


Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\Turkey Standard Time\Dynamic DST]
"2015"=hex:88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0b,00,00,00,02,00,04,00,\
00,00,00,00,00,00,00,00,03,00,00,00,05,00,03,00,00,00,00,00,00,00

"LastEntry"=dword:000007df



Yukarıda yer alan kod ise sistem tarihimizi 8 Kasım 2015 tarihine ötelememizi sağlayan koddur.Bunu ise reg uzantılı olarak reg 2 adıyla kayıt edebiliriz.Bu anahtarları kayıt defterine eklemeden önce aşağıdaki kayıt defteri anahtarlarının regedit'ten yedeğini almamız gerekmektedir.


  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\Turkey Standard Time\Dynamic DST

Yedek almak için ilgili kayıt defteri anahtarının üzerinde sağ klik yaparak ver komutu ile örneğin yedek reg1 ile eski kaydı yedek alıp ardından reg1 ve reg2 uzantılı kayıtları eklemeliyiz.İlgili resim aşağıdadır.
















Bu işlemleri yaptıktan sonra Windows Time servisini restart edince 8 kasım 2015 ayarları sistemimize uygulanmış olacaktır.Domain ortamında registry ayarları group policy yönemiylede kullanıcılara dağıtılabilmekte olup 8 kasım tarihinden sonra ayarları eski tarihe döndürmek gerekmektedir.





















Registry kayıtlarının görüntüsü;




15 Ekim 2015 Perşembe

SQL Server MSDB Veritabanı

SQL Server'da çalışma yaparken genellikle üretime yönelik veritabanları ile daha çok ilgili olduğumuz için sistem veritabanlarını  merak etmeyiz -zaten gizlidirler-SQL Server'da çeşitli amaçta 4 adet sistem veritabanı bulunmaktadır.Bunlar;Master,Model,Msdb ve Tempdb veritabanlarıdır.Bu yazıda kısaca MSDB veritabanı ile ilgili bazı özelliklere değinmek istiyorum.MSDB veritabanı sistem ile ilgili jobları ve veritabanı yedeklerinin ne zaman yapıldığı ile ilgili bilgileri tutmaktadır.Sistem performansı için DBA görevlerimize MSDB ve sistem veritanalarımızın bakımını almamız performans açısından önemlidir.Örneğin aşağıdaki resimdeki gibi herhangi bir zamanlanmış göreve bağlı olmadan elle yedekleme yaptığımızı varsayalım;

























yedekleme işlemi bittikten sonra msdb.dbo.backupset tablosuna aşağıdaki komut ile sorgu çektiğimizde  bize tüm yedekleme görevlerinin ne zaman başladığı ve ne zaman tamamlandığı hakkında bilgi verecektir.


SELECT * FROM msdb.dbo.backupset
WHERE [database_name]='db adı'

order by backup_start_date

Yedekleme görevimiz ile ilgili başlangıç ve bitiş tarihleri ile ilgili MSDB veritabanı kayıtlarımızı aşağıdaki gibidir.









Yukarıdaki 3 adet kayıt test ortamındaki bir sunucudan alındığı için az kayıt gözükmektedir.Örneğin benim üretim ortamında kullandığım veritabanlarında veri  kaybına tahammülümüz olmadığı için sıkı bir yedekleme görevlerimiz mevcut olup an itibari ile 1448183 adet kayıt bulunmaktadır.Bunun için eskiye ait kayıtların temizlenmesi gerekmektedir.Bunu ise aşağıdaki stored procedure kodunu çağırarak yapabiliriz;

exec msdb.dbo.sp_delete_backuphistory '2015-10-16'



Yukarıdaki komut 16.10.2015 tarihinden önceki tüm kayıtları silecektir.msdb.dbo.backupset set tablomuzda 14 ekim ve 15 ekim 2015 tarihlerine ait kayıtlar bulunduğu için ilgili stored procedur bu kayıtların hepsini silmiş olacaktır.