SQL Server’da temel veritabanı dosyaları genellikle üç ana kategoriye ayrılır: veri dosyaları, işlem günlüğü dosyaları ve isteğe bağlı olarak tam metin katalog dosyaları. Her biri farklı türde verileri saklar ve SQL Server veritabanının performansı ve güvenilirliği için doğru şekilde yapılandırılmaları önemlidir.
1. Veri Dosyaları (Primary ve Secondary Data Files)
- Primary Data File (.mdf): Her SQL Server veritabanının en az bir tane ana veri dosyası vardır. Bu dosya, başlangıç veritabanı şeması ve veritabanı nesneleri hakkındaki sistem tablolarını içerir. Veritabanı oluşturulurken bu dosya otomatik olarak oluşturulur.
- Secondary Data File (.ndf): İsteğe bağlı olan bu dosyalar, veritabanını birden fazla dosyaya ve genellikle birden fazla fiziksel diske yaymak için kullanılır. Bu, veri depolama alanını genişletme, performansı artırma ve veri organizasyonu için yararlıdır.
2. İşlem Günlüğü Dosyaları (.ldf)
- Transaction Log File (.ldf): Bu dosya, veritabanındaki tüm işlemlerin kaydını tutar. Bu, veritabanını bir felaket durumunda geri yüklemek ve işlemlerin bütünlüğünü korumak için gereklidir. İşlem günlüğü dosyaları, veritabanı işlemlerinin kesintisiz ve güvenilir bir şekilde yürütülmesi için kritik öneme sahiptir.
Dosyaların Yapılandırılması
Veritabanı dosyalarının yapılandırılması, performansı ve güvenilirliği optimize etmek için önemlidir. İşte bazı önemli yapılandırma önerileri:
- Boyut ve Büyüme Ayarları:
- Veri ve günlük dosyalarının başlangıç boyutlarını uygun bir değerde ayarlayın, böylece gereksiz otomatik büyüme işlemlerinden kaçının.
- Otomatik büyüme seçeneklerini etkinleştirin, ancak büyüme miktarını dikkatlice seçin. Sabit bir megabayt cinsinden miktar veya yüzde cinsinden büyüme genellikle tercih edilir.
- Otomatik büyüme olaylarını izleyin, çünkü bu olaylar performansı olumsuz etkileyebilir.
- Dosya Yerleşimi:
- Mümkünse, veri dosyalarını ve işlem günlüğü dosyalarını farklı fiziksel sürücülere yerleştirin. Bu, giriş/çıkış (I/O) işlemlerinin performansını artırabilir.
- Daha büyük veritabanları için, verileri birden fazla veri dosyasına ve potansiyel olarak birden fazla disk birimine dağıtarak I/O iş yükünü dengelen.
- Dosya Kısıtlamaları:
- Dosya boyutları için maksimum limitler belirleyebilirsiniz, ancak bu işlem günlüğü dosyasının dolmasına ve veritabanı işlemlerinin durmasına yol açabileceğinden dikkatli olunmalıdır.
- Veri dosyaları için maksimum boyut genellikle, disk kapasitesi veya yedekleme ve bakım işlemleri göz önünde bulundurularak ayarlanır.
- Yedekleme ve Kurtarma:
- Veritabanını ve işlem günlüğünü düzenli olarak yedekleyin. Bu, felaket kurtarma planının kritik bir parçasıdır.
- Recovery Model – Kurtarma modelinizi (simple, Full,bulk-logged) iş yükünüze ve kurtarma gereksinimlerinize uygun olarak seçin.
Veritabanı ve işlem günlüğü dosyalarının yapılandırılması, SQL Server performansı, veritabanı yönetimi ve veri bütünlüğü için hayati öneme sahiptir. İyi bir yapılandırma, sisteminizin düzgün çalışmasını sağlar ve olası veri kaybı veya performans sorunlarını en aza indirger.