Kategori: Hayatı Kolaylaştıran T-SQL

SQL Server İnstance All Database Backup

Taşıma işlemi ya da farklı işlemler yapılacağında birden fazla veritabanın yedeğini almak gerekebiliyor.

Hepsinin tek tek yedeğini almak yerine aşağıdaki script yardımı ile instance içerisinde bulunan veritabanlarının hepsinin yedeğini aynı dizine alabiliriz.

 183 total views

SQL Server İstatistikler En Son Ne zaman Güncellendiğini Görmek

Veritabanı sistemlerinde istatistiklerin performansa büyük ölçüde artısı vardır. Sorgular çalışırken toplanan istatisklere bakarak kendilerine yol çizer (execution plan ) ve bu yollar yardımı ile sorgular  hızlı çalışır.

Bazı durumlarda istatistikler güncel olmadığında sorgularımız yavaş çalışır ve bu yavaşlıklardan dolayı birikmeler ve gereksiz  cpu,disk kullanımları artmaktadır. Bunların önüne geçebilmek için istatistiklerimizi kontrol etmemiz gerekebilir.

Aşağıdaki sorgu ile veritabanı bazlı istatistiklerinizin en son update olduğu zamanı görebilirsiniz.

 76 total views

PostgreSQL de Database İçerisinde ki Yetkileri Görmek

Bir veritabanı içerisinde bazı durumlarda farklı bir kullanıcı oluşturup sadece bazı tablolara select ,insert,update,delete yetkisi vermemiz gerekiyor.  Tablo sayınız çok ve hangi tabloya ne yetki verdiğinizi görmek istiyorsanız aşağıdaki plpgsql scriptinden faydalanabilirsiniz.

 602 total views,  3 views today

MSSQL de En Son Hangi Tablolarda İşlem Yapıldı?

Bir veritabanı içerisinde hangi tablolardan veri çekildiğini öğrenebilmemiz için indexlerden faydalanabiliriz.

İndexlerden ne zaman seek ,ne zaman scan yapıldığını bularak o tabloların en son ne zaman kullanıldığını bulabiliriz

 279 total views,  1 views today

MSSQL de Obje Bazlı Yetkileri Görmek

MSSQL de bazı durumlar da instance bazında, veritabanı bazında yetkileri görmek haricinde, hangi kullanıcının belirli bir veritabanında hangi yetkileri var , hangi tablolarda hangi kullanıcının yetkisi var, hangi obje de (stored procedure, view ,table ) görmek isteyebiliriz.
Böyle durumlar da aşağıdaki t-sql cümlesini kullanarak  öğrenebilirsiniz.

 291 total views

MSSQL Session Alert

MSSQL Session Alert

MSSQL de Sessionlarınız uygulamadan gelen istekler yüzünden arttı ve bunu kontrol altında tutmak istiyorsunuz ya da belli bir sayıdan fazla session sayınızın artmasını istemiyorsanız aşağıdaki t-sql işinizi görecektir

 489 total views

MSSQL Kullanılmayan İndexleri Bulmak

MSSQL Kullanılmayan İndexleri Bulmak

SQL Server da bazen performans iyileştirmeleri yaparken sorgulara göre index ekleriz ve sonradan bu indexlere baktığımızda bazılarının gereksiz bazılarının hiç kullanılmadığını görürüz.
Aşağıdaki script kullanılmayan indexleri bulmak için yardımcı olacaktır.

 

SELECT
o.name AS ObjectName
, i.name AS IndexName
, i.index_id AS IndexID
, dm_ius.user_seeks AS UserSeek
, dm_ius.user_scans AS UserScans
, dm_ius.user_lookups AS UserLookups
, dm_ius.user_updates AS UserUpdates
, p.TableRows
, 'DROP INDEX ' + QUOTENAME(i.name)
+ ' ON ' + QUOTENAME(s.name) + '.'
+ QUOTENAME(OBJECT_NAME(dm_ius.OBJECT_ID)) AS 'drop statement'
FROM sys.dm_db_index_usage_stats dm_ius
INNER JOIN sys.indexes i ON i.index_id = dm_ius.index_id
AND dm_ius.OBJECT_ID = i.OBJECT_ID
INNER JOIN sys.objects o ON dm_ius.OBJECT_ID = o.OBJECT_ID
INNER JOIN sys.schemas s ON o.schema_id = s.schema_id
INNER JOIN (SELECT SUM(p.rows) TableRows, p.index_id, p.OBJECT_ID
FROM sys.partitions p GROUP BY p.index_id, p.OBJECT_ID) p
ON p.index_id = dm_ius.index_id AND dm_ius.OBJECT_ID = p.OBJECT_ID
WHERE OBJECTPROPERTY(dm_ius.OBJECT_ID,'IsUserTable') = 1
AND dm_ius.database_id = DB_ID()
AND i.type_desc = 'nonclustered'
AND i.is_primary_key = 0
AND i.is_unique_constraint = 0

ORDER BY (dm_ius.user_seeks + dm_ius.user_scans + dm_ius.user_lookups) ASC
GO

 

 

 979 total views,  2 views today

Theme: Overlay by Kaira Extra Text
Cape Town, South Africa