Ay: Eylül 2016

Primary Key ve Foreign Key

Primary Key’ler tabloda unique’liği sağlar. Bir kolona primary key koyduğunuz da o kolona girilen bir değer sonraki gelecek insertler için tekrar girilemez. Örneğing ID kolonuna primary key koydunuz ve ilk insert’ünüzde 1 değerini set ettiniz. İkinci insert’ünüzde tekrar 1 değerini veremezsiniz. Primary Key tanımlı bir kolona null değer girilemez. Eğer unique’liği sağlayan bir kolonunuz varsa […]

Isolation Levels 3

Bu makalede RCSI ve Snapshot Isolation farklarını ve bu Isolation Level’leri kullandığımız’da oluşabilecek tutarsızlıkları inceleyeceğiz. İki Isolation Level’da da;Tempdb’de yeterince yer olmazsa, update’ler fail olmaz fakat versiyonlamada yapamaz. Bu yüzden selectler fail olabilir. Snapshot Isolation Level’ında update’ler conflict olabilir. RCSI’da bu gerçekleşmez. RCSI, Snapshot Isolation Level’a göre, tempdb’de daha az yer tüketir. RCSI Distrubuted Transaction […]

Isolation Levels 2

1) Read Committed Snapshot(RCSI): Read Committed Isolation Level’ın row versioning kullanan halidir. SQL Server 2005 ile gelen bir Isolation Level’dır. Diğer Isolation Level lardan farklı olarak SET TRANSACTION ISOLATION LEVEL komutuyla set edilmez. Bu Isolation Level veritabanı bazlı set edilebilir. Set edildiğinde veritabanındaki tüm transactionlar bu şekilde çalışacaktır. Bu nedenden dolayı , bu Isolation Level’a geçerken uygulamada […]

Isolation Levels 1

Isolation Level, bir transaction’ın bir işlemi karşısında diğer transaction’ların nasıl davranacağını belirler. Öncelikle veritabanında oluşabilecek concurrency sorunlarını ele alalım. Daha sonra bu sorunların hangi isolation Level’da nasıl ortaya çıktığını örneklerle inceleyeceğiz.   Dirty Read: Transaction select yaptığında, başka bir transaction tarafından yapılan update’in commit edilmemiş halini okur. Diğer transaction commit yerine rollback yaptığı takdirde, ilk […]

Joblarımızı Proxy Hesabı ile Çalıştırmak

Bildiğiniz gibi SQL Server Instance kurulumu yaparken ve sql server servisini  ya da sql server agent servisini,sql server configuration manager üzerinden değiştirirken, sql server servisi ve sql server agent servisi için tanımladığımız kullanıcılar, ihtiyaçları olabilecek minimum yetkilerle otomatik olarak yetkilendiriliyorlar. Tavsiye edilmemesine rağmen bazı yerlerde bu hesaplara sysadmin ve Windows üzerinde lokal admin hakları veriliyor. […]