ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Orijinal İngilizce makaleyi görüntüleyin: 907511
Bu makalede, DBCC SHRINKFILE deyim el ile bir SQL Server 2005 veritabanı tam kurtarma modeli altında işlem günlüğü dosyasını sıkıştırmak için nasıl kullanılacağını açıklar. SQL Server 2005'te işlem günlüğü dosyasını sıkıştırmak için kullandığınız yöntem, SQL Server 2000'de işlem günlüğü dosyasını sıkıştırmak için kullandığınız yöntemden farklı olabilir. SQL Server 2000'de işlem günlüğü dosyasının daraltma hakkında daha fazla bilgi için Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
Genellikle, SQL Server 2005'te işlem günlük dosyası daraltılması SQL Server 2000'de işlem günlüğü dosyasının daraltma daha hızlıdır. SQL Server 2005 günlük Yöneticisi oluşturur veya fiziksel disk depolama sırasını izleyerek etkin sanal günlük dosyaları yeniden kullanır nedenidir. Bu nedenle, etkin işlem günlüğü dosyasının genellikle dosyanın sonunda bir parçasıdır.
Örneğin, işlem günlüğü dosyası sanal günlük dosyaları 100 olabilir ve yalnızca 2 sanal günlük dosyaları kullanılır. SQL Server 2000 ilk kullanılan sanal günlük dosyası işlem günlüğü dosyasının başındaki depolayabilir ve ikinci ortasında işlem günlüğü dosyası sanal günlük dosyası kullanılır. İşlem günlüğü dosyası sanal günlük dosyaları yalnızca 2 daraltmak için kukla kütüğü girişlerini kullanarak SQL Server ikinci sanal günlük dosyası kalan kısmını doldurur. SQL Server günlük yöneticisi tarafından belirtilen bir sonraki kullanılabilir sanal günlük dosyası, mantıksal günlük başlangıcı taşır. Günlük Yöneticisi işlem günlük dosyasının yalnızca son etkin sanal günlük dosyası önceden ortasında bir sanal günlük dosyası oluşturabilir. Bu durumda, birden çok günlük yedekleme işlemlerini ve birden fazla küçültme işlemleri işlem günlüğü dosyasını 2 sanal günlük dosyaları başarıyla daraltmak için kullanmak zorunda. Bu örnek, en kötü durumda, 50 günlük yedekleme işlemlerini kullanmak zorunda kalabilirsiniz ve 50 işlemleri işlem günlüğü dosyası sanal günlük dosyaları için 2 başarıyla daraltmak için Daralt.
Ancak, SQL Server 2005'te bir DBCC SHRINKFILE deyimi işlem günlüğü dosyası sanal günlük dosyaları için 2 hemen daraltmak için gerçekleştirebilirsiniz. Fiziksel disk depolama sırasını izleyerek SQL Server 2005 günlük Yöneticisi 2 sanal günlük dosyaları oluşturur çünkü bunu yapabilirsiniz. İşlem günlüğü dosyasının başlangıcında her iki sanal günlük dosyalarıdır.
SQL Server 2005'te çok az boş alana sahip bir işlem günlüğü dosyasını daraltın çalıştığınızda, bir ek günlük yedek işlemi gerçekleştirmek zorunda kalabilirsiniz. Ek günlük yedek işlemi işlem günlüğü dosyasının daha küçük bir boyuta keser. Bu günlük yedekleme ek olarak, SQL Server 2000'de işlem günlüğü dosyasını sıkıştırmak yerine üç adım bir işlemdir. Daha fazla bilgi için "Özet" bölümünde açıklanan Microsoft Bilgi Bankası makalesine bakın. SQL Server 2005'te çok az boş alana sahip bir işlem günlük dosyası daraltmak için şu adımları izleyin:
- En iyi etkin sanal günlük dosyaları etkin şekilde işlem günlüğü dosyasının yedeğini alın. Bu nedenle, bir sonraki adımda etkin sanal günlük dosyaları kaldırılabilir. Bunu yapmak için SQL Server Management Studio'yu başlatın ve aşağıdaki Transact-SQL deyimini benzer bir Transact-SQL deyimini çalıştırın.Not: Bu ifade, < veritabanı adı > , yedeklemekte olduğunuz veritabanının adı için bir yer tutucudur ve < BackupFile > yedekleme dosyasının tam yolu için bir yer tutucudur.
BACKUP LOG <DatabaseName> TO DISK = '<BackupFile>'
Örneğin, aşağıdaki Transact-SQL deyimini çalıştırın.
BACKUP LOG TestDB TO DISK='C:\TestDB1.bak'
- İşlem günlüğü dosyasını daraltın. Bunu yapmak için aşağıdaki Transact-SQL deyimini benzer bir Transact-SQL deyimini çalıştırın.Not: Bu ifade, < dosyaadı > işlem günlük dosyası adı için bir yer tutucudur ve < TargetSize > olarak işlem günlüğü dosyasını istediğiniz hedef boyutu için bir yer tutucudur. Hedef boyutuna uygun olmalıdır. Örneğin, sanal günlük dosyaları 2'den daha az bir boyutu için hareket günlük dosyası daraltılamıyor.
DBCC SHRINKFILE (<FileName>, <TargetSize>) WITH NO_INFOMSGS
- DBCC SHRINKFILE deyimi işlem günlük dosyası için hedef boyutu küçülmez, sanal günlük dosyaları daha etkin olmak için 1. adımda açıklanan BACKUP LOG deyimini çalıştırın.
- 2. adımda belirtilen DBCC SHRINKFILE deyimini çalıştırın. Bu işlemden sonra işlem günlüğü dosyasını hedef boyutuna yakın olması gerekir.
- Çok fazla boş alan bir günlük dosyası varsa, SQL Server 2005'te işlem günlük dosyası daraltılması SQL Server 2000'de işlem günlüğü dosyasının daraltma daha hızlıdır.
- Hiç boş alan bir günlük dosyası varsa, SQL Server 2005'te işlem günlük dosyası daraltılması SQL Server 2000'de işlem günlüğü dosyasının daraltma aynıdır.
- Bir günlük dosyası çok az boş alan varsa, SQL Server 2000'de gerçekleştirmek ' den SQL Server 2005'te bir ek günlük yedek işlemi gerçekleştirmek zorunda kalabilirsiniz.
DBCC SHRINKFILE deyimi hakkında daha fazla bilgi için DBCC SHRINKFILE Transact-SQL () MSDN Web sitesine gidin.
Hareket günlük kesilme hakkında daha fazla bilgi için Hareket günlüğü kesme MSDN Web sitesine gidin.
Makale No: 907511 - Son İnceleme: 1 Nis 2017 - Düzeltme: 1