2011-06-23

SQL Server Agent Job, Schedule'ı Bittiği Halde Çalışıyor!

Bir SQL Server Agent job tanımladınız. Job frekansını recuring olarak set ettiniz. Job schedule'ını daily olarak ayarladınız. Job'ın çalışması için başlangıç ve bitiş tarihleri verdiniz. Job'ınızın bitiş tarihi bittikten sonra SQL Server Agent servisini restart ettiniz.  İşte tam bu noktada film kopuyor! O da ne, job'ınızın en son çalışma tarihi geçildiği halde job'ınız hala çalışmaya devam ediyor. Job Activity Monitor'de baktığınızda job'ınızın Next Run ı olmayacak ama Last Run ı sürekli olacak. Bu durum SQL Server Agent servisinin bir bug'ı ve bu bug Microsoft tarafından teyid edilmiş durumda. Sorun SQL Server Agent Job servisinin schedule algoritmasının hata üretmesinden kaynaklanıyor.

Çözüm: Aşağıdaki sürümler için ilgili Cumulative Update'leri yüklemek:
  1. SQL Server 2008 SP1 için CU 11 yüklemek
  2. SQL Server 2008 SP2 için CU 2 yüklemek
  3. SQL Server 2008 R2 için CU 6 yüklemek

2011-05-21

Yetki Kontrolü Yapma

/*
Bir veritabanında Delete yetkisi olan kullanıcıları aşağıdaki SQL kod  ile bulabilirsiniz:
*/

SELECT
a.*,
b.*
FROM sys.database_principals a
INNER JOIN sys.database_permissions b ON b.grantee_principal_id = a.principal_id
WHERE b.permission_name = 'DELETE'

2011-05-02

Microsoft SQL Server 2005/2008 Failover Clustering Workshop

Batuhan Yıldız'ın konuşmacı olacak katılacağı Microsoft SQL Server 2005/2008 Failover Clustering Workshop'unda olacağım.

Level: Up to 300
Tarih: 3-5 Mayıs 2011
Yer: Bellevue Residence, Aydın Sokak. No:7 Levent, 34340

Gündem:
Module 1: SQL Server High Availability Solutions
Module 2: Clustering Windows Server 2008 R2
Module 3: Configuring the Distributed Transaction Coordinator (MSDTC)
Module 4: Planning to Cluster SQL Server 2008
Module 5: Implementing a SQL Server 2008 Failover Cluster
Module 6: Rolling Upgrades and Updates to SQL Server 2008
Module 7: Maintaining and Troubleshooting a Clustered Instance of SQL Server 2008

2011-04-09

"The cluster resource of the Sql Server does not have a dependency on it" Hatası

Mevcut  cluster veritabanı sunucunuza yeni disklerin eklenmesi gerekebilir. Bu durumda disklerinizi Storage ekibinden alıp Cluster ekibine teslim ettiniz. Cluster ekibiniz de bu diskleri cluster a eklemiş olsun.  Bu yeni disklere başka sunuculardaki veritabanlarınızı restore yöntemiyle taşımak istiyorsunuz. Bu taşıma işlemi için detaylı düşünüp veritabanı kısmını ilgilendiren onlarca adımı tek tek yazıp; bu adımlarım scriptlerini çıkardınız. Bu scriptleri tek tek çalıştırıyorsunuz. Fakat restore adımında aşağıdaki hata ile karşılaşıyorsunuz:

Hata:
Msg 5184, Level 16, State 2, Line 1
Cannot use file 'X:\XXX.mdf' for clustered server. Only formatted files on which the cluster resource of the server has a dependency can be used. Either the disk resource containing the file is not present in the cluster group or the cluster resource of the Sql Server does not have a dependency on it.
Msg 3156, Level 16, State 3, Line 1
File 'XXX_data' cannot be restored to 'X:\XXX.mdf' . Use WITH MOVE to identify a valid location for the file.
Msg 5184, Level 16, State 2, Line 1
Cannot use file 'Y:\\XXX_1.ldf' for clustered server. Only formatted files on which the cluster resource of the server has a dependency can be used. Either the disk resource containing the file is not present in the cluster group or the cluster resource of the Sql Server does not have a dependency on it.
Msg 3156, Level 16, State 3, Line 1
File 'XXX_log' cannot be restored to 'Y:\\XXX_1.ldf'. Use WITH MOVE to identify a valid location for the file.
Msg 3119, Level 16, State 1, Line 1
Problems were identified while planning for the RESTORE statement. Previous messages provide details.
Msg 3013, Level 16, State 1, Line 1
RESTORE DATABASE is terminating abnormally.


Çözüm: Yeni eklediğiniz X:\ ve Y:\ disklerinizi SQL Server Cluster kaynaklarına ekleyin ve işlem adımlarınıza kaldığınız yerden devam edin.

Benim gibi tüm adımları çıkarıp, bu adımların ne kadar süreceğini biliyorsanız; uzun sürecek adımlarda çayınızı alıp kemali afiyetle yudumlayabilirsiniz yada yürüyüş yapabilirsiniz.

2011-04-06

Bulut ve Sunucu Ortamlarında Yeni Teknolojiler ve Güvenli Bilişim

7 Mayıs Cumartesi  günü  Bulut ve Sunucu Ortamlarında Yeni Teknolojiler ve Güvenli Bilişim konulu tam günlük Üniversite semineri düzenleniyor.

AJANDA
09:30–10:00 Kayıt
10:00–11:00 Yeni Nesil Siber Tehditler Karşısında Eski Tip Savunma Yöntemlerinin Yetersizliği – Huzeyfe ÖNAL
11:00–11:15 Çay Kahve Arası
11:15–12:15 Windows Intune ve Office 365 – Hakan UZUNER
12:15–13:15 Öğle Yemeği

13:15–14:15 Sanallaştırmada Hyper-V & Virtual Machine Manager Düeti – Serhat AKINCI
14:15–14:30 Çay Kahve Arası
14:30–15:30 DDoS Saldırıları ve BotNet Sorunu – Huzeyfe ÖNAL
15:30–15:45 Çay Kahve Arası
15:45–16:45 Shadow Forensics – İbrahim Saruhan –SANS
16:45–17:00 Kapanış

Adres : Ege Üniversitesi Bilgisayar Mühendisliği Bölümü 2.Kat B4 Amfisi - Bornova Metro Karşısı
Kayıt için http://www.cozumpark.com/register/kayit.aspx

2011-04-03

Tablodaki Bir Kayıtın Kapladığı Yeri Bulma

Herhangi bir tablonuzdaki bir kayıtın(row) ne kadar yer kapladığını(size) merak ediyorsanız aşağıdaki SQL ile bunu alabilirsiniz:

select sum(max_length) As ColumnSize
from sys.columns sc
where object_id=object_id('Musteri')


Bir veritabanındaki tüm tabloların row size'ını ise aşağıdaki SQL ile alabilirsiniz:

select object_name(object_id),
sum(max_length) As ColumnSize
from sys.columns sc
group by object_name(object_id)

2011-03-27

Fragmente Indeksleri Rebuild Etme

İndekslerin fragmente olması istenmeyen bir durumdur. Fragmente olan indexlerin belirli periyotlarda rebuild/reorganize edilmesi gerekir.

Veritabanızda fragmente oranı %30 un üzerinde üzerinde olan indeksleri bulup rebuild eden T-SQL kod aşağıdaki gibidir:

declare @SQLstmt varchar(max)

set @SQLstmt =''
select @SQLstmt =@SQLstmt + 'alter index ' + i.name + ' on ' + object_name(s.object_id ) + ' rebuild with(online=on);--pagecount:' + cast(s.page_count as varchar(16)) + '
'
from sys.dm_db_index_physical_stats(db_id(db_name()),null,null,null,null) s
inner join sys.indexes i on s.object_id=i.object_id and s.index_id=i.index_id
where s.avg_fragmentation_in_percent>30
and s.index_id>0
order by s.page_count

exec(@SQLstmt )

Dilerseniz aynı işlemi dinamik tek bir SQL cümlesi yerine cursor ile de halledebilirsiz.

2011-03-25

Bilişim Zirvesi 2011 Sunum ve Video Görüntüleri

Microsoft Bilişim Zirvesi 2011'e katılamayanlar yada zirveye katılıp ta zirvedeki sunum ve video görüntülerine ulaşmak isteyenler http://www.microsoft.com/turkiye/cloud/localEvents.aspx adresinden ulaşabilirler.

2011-03-24

SQL Server Profiler Template Dosyaları Nerde Tutulur?

SQL Server Profiler uygulamasında oluşturmuş olduğumuz template'ler diskinizin belli bir lokasyonunda tutulur. Bu lokasyonlar SQL Server 2005 ve SQL Server 2008 için aşağıdaki gibidir:


SQL Server Profiler 2008 için template dizini:
C:\Documents and Settings\KullaniciKodunuz\Application Data\Microsoft\SQL Profiler\10.0\Templates\Microsoft SQL Server\100


SQL Server Profiler 2005 için template dizini:
C:\Documents and Settings\KullaniciKodunuz\Application Data\Microsoft\SQL Profiler\9.0\Templates\Microsoft SQL Server\90

2011-03-23

İş Kritik Uygulamalar için Performans Semineri

Tarih: 28 Mart 2011 Pazartesi
Saat : 09.00 - 16.15
Yer  : Microsoft İstanbul Ofisi

İş kritik uygulamalar konusunda çalışan veri platformu mimarları için düzenlenecek seminer serisinin ilki “İş Kritik Uygulamalar için Performans” konusuyla gerçekleştirilecek.

İş kritik uygulamaların performansı kurumların arzu ettikleri hizmet seviyelerini müşteri ve iş ortaklarına sağlayabilmeleri açısından yüksek önem taşır. Bu seminerde özellikle iş kritik uygulamalarınızın üzerinde çalıştığı SQL Server veritabanlarının izlenmesi ve performans iyileştirmesi konularına yer verilecektir.

Seminer Microsoft SQL Server geliştirme ekibinde de çalışmış, konusunda 15 yılı aşkın tecrübesi bulunan Ramesh Meyyappan tarafından İngilizce verilecektir.

Gündem

09.00 - 09:30 Karşılama ve İkram
09.30 - 10.45 Monitoring and Tuning CPU, memory & Disk utilization to reduce Total Cost of Ownership (TCO) - Part I
10.45 - 11.00 Kahve Arası
11.00 - 12.15 Monitoring and Tuning CPU, memory & Disk utilization to reduce Total Cost of Ownership (TCO) - Part II
12.15 - 13.00 Öğle Yemeği
13.00 - 14.15 Monitoring and Tuning Query Execution and Locking Part I
14.15 - 14.45 Ara
14.45 - 16.00 Monitoring and Tuning Query Execution and Locking - Part II
16.00 - 16.15 Soru ve Cevap

2011-03-14

SQL Azure'da Limitler ve Kısıtlamalar









SQL Azure'da aşağıdaki limit ve kısıtlamalar söz konusu olup; SQL Azure geçmeyi düşünenlerin bu limit ve kısıtlamaları göz ardı etmemesi gerekir:


  1. SQL Azure veritabanlarına OLEDB ile erişim desteklenmiyor.
  2. Sadece TCP/IP protokolu ile erişim destekleniyor, diğer protokoller ile erişim desteklenmiyor.
  3. SQL Azure ile SQL Server browser desteklenmiyor.
  4. SQL Azure ile Attach ve Restore komutları desteklenmiyor.
  5. SQL Server Agent yada joblar desteklenmiyor.
  6. SQL Azure'da Distributed Transaction desteklenmiyor.
  7. Database Collation olarak sadece SQL_LATIN1_GENERAL_CP1_CI_AS ı destekliyor; diğer collation lar desteklenmiyor. Diğer collation'ları tablo alanı bazında destekliyor.
  8. SQL Azure da oluşturduğunuz her tabloda clustered index'in olması zorunlu(SQL Azure heap ı desteklemiyor) yoksa insert'leriniz hata alır.
  9. Her SQL Azure Server maksimum 150 veritabanını destekliyor(master veritabanı + 149 kullanıcı veritabanı). 
  10. SQL Azure için her bir veritabanı için maximum size 50 GB ile sınırlı.
  11. SQL Azure'da Windows Authentication desteklenmiyor.
  12. SQL Azure'da veritabanları arası geçiş yapan USE komutu kullanılamıyor.
  13. SQL Azure'da Transactional Replication desteklenmiyor.
  14. SQL Azure'da Database Mirroring desteklenmiyor.
  15. SQL Azure'da Log Shipping desteklenmiyor
  16. Azure platformunda SSIS servisi kullanılamıyor.
  17. SQL Azure'da sadece Management Studio'nun  SQL Server 2008 R2 sürümü ile erişilebiliniyor. Daha eski versiyonlardaki Management Studio'lar ile erişemiyorsunuz.
  18. SQL Azure, SQL Server 2008 deki tüm T-SQL leri desteklemiyor. Desteklenmeyen T-SQL'lere http://msdn.microsoft.com/en-us/library/ee336253.aspx  adresinden ulaşabilirsiniz. 
Kaynaklar:
  1. Comparing SQL Server with SQL Azure
  2. Guidelines and Limitations in SQL Azure

.::YASAL UYARI::.

©2004-2024 Mehmet GÜZEL, www.mehmetguzel.net

Site içeriği kaynak gösterilmek koşuluyla yayınlanabilir. Yazılan yazı ve yorumlar sadece yazı ve yorum sahiplerini bağlar.