İşlem günlüğü dosyasının boyutunu yönetme
Bazı durumlarda, fiziksel daraltmak veya genişletmek işlem günlüğünün fiziksel günlük dosyası yararlı olabilir bir SQL Serververitabanı. Bu konuda boyutunu izlemek hakkında bilgi içeren bir SQL Serverişlem günlüğü, işlem günlüğünü daraltma, ekleyin veya bir işlem günlük dosyası büyütmek, en iyi duruma tempdb hareket oturum büyüme oranı ve bir işlem günlüğü dosyası büyümesi kontrol.
Bu Konuda
Monitör günlük alanı kullanımını
Günlük dosyasının boyutunu küçültme
Eklemek veya bir günlük dosyasına büyütmek
Işlem günlük tempdb boyutunu en iyi duruma getirme
Bir işlem günlüğü dosyası büyümesi kontrol
Monitör günlük alanı kullanımını
dbcc sqlperf (logspace) kullanarak günlük alanı kullanımını izleyebilirsiniz. Bu komut, şu anda kullanılan günlük alanı hakkında bilgi verir ve hareket günlüğü kesme ihtiyacı olduğunda gösterir. Daha fazla bilgi için, bkz. dbcc sqlperf (Transact-sql). Geçerli günlük dosyası boyutu, en büyük boyutuna ve otomatik büyüme seçeneğini dosyası hakkında daha fazla bilgi için de kullanabilirsiniz boyutu, max_size, ve büyüme sütunlar için bu günlük dosyasına sys.database_files. Daha fazla bilgi için, bkz. sys.database_files (Transact-sql).
Önemli |
---|
Günlük diski overloading kaçının öneririz. |
[Üst]
Günlük dosyasının boyutunu küçültme
Fiziksel günlük dosyasının fiziksel boyutunu azaltmak için günlük dosyasını daraltmanız gerekir. Bir işlem günlüğü dosyası değil ihtiyacı olacak kullanılmayan alanı içeren biliyorsanız kullanışlıdır. Bir günlük dosyası daraltılması yalnızca veritabanının çevrimiçi olduğundan ve ayrıca en az bir sanal günlük dosyası boş ise oluşur. Bazı durumlarda, günlüğünü daraltma sonra sonraki günlük kesilme kadar mümkün olmayabilir.
[!NOT]
Sanal günlük dosyaları uzun süre aktif tutmak bir uzun süren işlem gibi faktörler, günlük büzülme kısıtlamak veya tüm daralma günlük hatta önlemek. Günlük kesilme geciktirebilir Etkenler hakkında daha fazla bilgi için bkz: Transaction Log Truncation.
Bir günlük dosyası daraltılması kaldırır tutan mantıksal günlük herhangi bir parçası olmayan bir veya daha fazla sanal günlük dosyaları (yani, etkin olmayan sanal günlük dosyaları). Bir işlem günlüğü dosyası daralmış günlük yaklaşık hedef boyutunu azaltmak için günlük dosyasının sonuna yeterince etkin olmayan sanal günlük dosyaları kaldırılır. Daha fazla bilgi için Ayrıca bkz: How Does Shrinking the Log File Work?.
(Veritabanı dosyalarını daraltma olmadan) bir günlük dosyası daraltmak için
Günlük dosyası küçültme olayları izlemek için
To monitor log space
sys.database_files (Transact-sql)(Bkz: boyutu, max_size, ve büyüme sütunlar için günlük dosyası veya dosyaları.)
[!NOT]
Veritabanını ve günlük dosyalarını daraltma, otomatik olarak gerçekleşmesi için ayarlanabilir. Ancak, Otomatik küçülme karşı önerilir ve autoshrinkveritabanı özelliği varsayılan olarak yanlış. Eğer autoshrinktrue olarak ayarlanmışsa Otomatik küçülme yalnızca kendi alanı yüzde 25'den fazla kullanılmayan olduğunda dosya boyutunu küçültür. Dosya ya da hangi boyutta yalnızca yüzde 25'in dosyasının kullanılmayan veya dosyayı özgün boyutuna, hangisi daha büyük ise daraltılmış. Ayarı değiştirme hakkında bilgi için autoshrinközelliği görmek, Veritabanı özelliklerini görüntüleme veya değiştirme— kullanmak Auto Shrink özelliği seçenekleri sayfa — ya alter database set seçenekleri (Transact-sql)— AUTO_SHRINK seçeneğini kullanın.
[Üst]
Eklemek veya bir günlük dosyasına büyütmek
Alternatif olarak, alan (disk alanı veriyorsa) varolan günlük dosyasının büyütme veya günlük dosyası genellikle farklı bir diskte veritabanına ekleyerek kazanabilirler.
Bir günlük dosyasının veritabanına eklemek için Ekle günlük dosyası yan tümcesini alter database deyimi kullanın. Bir günlük dosyası ekleyerek büyümeye günlüğü sağlar. Dosya ekleme hakkında daha fazla bilgi için bkz: Adding and Deleting Data and Transaction Log Files.
Günlük dosyası büyütmek için boyut ve MAXSIZE sözdizimini belirlemek alter database deyimini değiştirmek dosya yan tümcesi kullanın. Daha fazla bilgi için, bkz. alter veritabanı (Transact-sql).
[Üst]
Işlem günlük tempdb boyutunu en iyi duruma getirme
Sunucu örneğini yeniden boyutlandırır işlem günlüğünün tempdb veritabanını özgün, pre-otomatik büyüme boyutuna. Bu performansını azaltabilir tempdb işlem günlüğü. Sen-ebilmek kaçmak bu yükü boyutunu artırarak tempdb işlem günlüğü başlatma veya sunucuyu yeniden başlattıktan sonra. Daha fazla bilgi için, bkz. tempdb veritabanı.
[Üst]
Bir işlem günlüğü dosyası büyümesi kontrol
Sen-ebilmek kullanma alter veritabanı (Transact-sql)bir işlem günlük dosyası büyüme yönetmek için deyimi. Aşağıdakilere dikkat edin:
kb, mb, gb ve tb birimlerindeki geçerli dosya boyutunu değiştirmek için boyutu seçeneğini kullanın.
Büyüme artışı değiştirmek için FILEGROWTH seçeneği kullanın. 0 Değeri otomatik büyüme kapalı olarak ayarlanır ve ek boşluk izin verildiğini gösterir. Günlük dosyası üzerinde bir küçük autogrowth artış performansı düşürebilir. Bir günlük dosyasını dosya büyüme artışı sık genişleme önlemek için yeterli büyüklükte olmalıdır. Varsayılan büyüme artışı yüzde 10 genelde uygundur.
Günlük dosyası dosya-büyüme özelliği değiştirme hakkında daha fazla bilgi için bkz: alter veritabanı (Transact-sql).
En fazla kb, mb, gb ve tb birimlerindeki günlük dosyası boyutunu denetlemek için ya da büyüme için sınırsız ayarlamak için MAXSIZE seçeneğini kullanın.
[Üst]
Ayrıca bkz.
Başvuru
Kavramlar
Tam bir işlem günlük (SQL Server hata 9002) sorun giderme