Aracılığıyla paylaş


Veritabanının kurtarma modelini görüntüleme veya değiştirme (SQL Server)

Şunlar için geçerlidir: SQL Server

Bu makalede, SQL Server Management Studio veya Transact-SQL kullanarak veritabanı kurtarma modelini görüntüleme veya değiştirme işlemi açıklanmaktadır.

Kurtarma modeli, işlemlerin günlüğe nasıl kaydedildiğini, işlem günlüğünün yedeklenmesi gerekip gerekmediğini (ve izin verip vermeyeceğini) ve ne tür geri yükleme işlemlerinin kullanılabilir olduğunu denetleyen bir veritabanı özelliğidir. Üç kurtarma modeli vardır: basit, tam ve toplu günlükleme. Genellikle bir veritabanı tam kurtarma modelini veya basit kurtarma modelini kullanır. Bir veritabanı istediğiniz zaman başka bir kurtarma modeline geçirilebilir. Veritabanı, model yeni veritabanlarının varsayılan kurtarma modelini ayarlar.

Ayrıntılı bir açıklama için bkz. kurtarma modelleri.

Başlamadan önce

  • Tam kurtarma veya toplu günlüğe kaydedilen kurtarma modelinden geçiş yapmadan önceişlem günlüğünü yedekleyin.

  • Toplu günlüğe kaydedilen modelde belirli bir noktaya kurtarma mümkün değildir. Toplu günlük tutulan kurtarma modeli altında ve işlem günlüğü geri yüklemesi gerektiren işlemleri çalıştırmak, bunları veri kaybına maruz bırakabilir. Felaket kurtarma senaryosunda veri kurtarılabilirliğini en üst düzeye çıkarmak için yalnızca aşağıdaki koşullar altında toplu günlükleme kurtarma modeline geçin:

    • Şu anda veritabanında kullanıcılara izin verilmiyor.

    • Toplu işlem sırasında yapılan tüm değişiklikler, günlük yedeği almaya bağlı olmadan kurtarılabilir; örneğin, toplu işlemleri yeniden çalıştırarak.

      Bu iki koşulu karşılarsanız, toplu günlüğe kaydedilen kurtarma modeli altında yedeklenmiş bir işlem günlüğünü geri yüklerken veri kaybına maruz kalmazsınız.

    Toplu işlem sırasında tam kurtarma modeline geçerseniz, toplu işlemleri günlüğe kaydetme minimum günlüğe kaydetmeden tam günlüğe kaydetmeye değişir ve tersi durumda da aynı şekilde değişir.

Permissions

Veritabanında ALTER izni gerektirir.

SQL Server Management Studio'yu kullanma

  1. SQL Server Veritabanı Altyapısı'nın uygun örneğine bağlandıktan sonra Nesne Gezgini'nde sunucu adını seçerek sunucu ağacını genişletin.

  2. Veritabanları'nı genişletin ve veritabanına bağlı olarak bir kullanıcı veritabanı seçin veya Sistem Veritabanları'nı genişletin ve bir sistem veritabanı seçin.

  3. Veritabanına sağ tıklayın ve ardından Veritabanı Özellikleri iletişim kutusunu açan Özellikler'i seçin.

  4. Sayfa seçin bölmesinde Seçenekler'i seçin.

  5. Geçerli kurtarma modeli Kurtarma modeli liste kutusunda görüntülenir.

  6. İsteğe bağlı olarak, kurtarma modelini değiştirmek için farklı bir model listesi seçin. Seçenekler Tam, Toplu günlüğe kaydedilen veya Basit seçenekleridir.

  7. Tamam'ı seçin.

Uyarı

Veritabanı için plan önbelleği girdileri silinir veya temizlenir.

Transact-SQL kullanma

Kurtarma modelini görüntüleme

  1. Veritabanı Altyapısı'na bağlanın.

  2. Standart çubuğundan Yeni Sorgu'yu seçin.

  3. Aşağıdaki örneği kopyalayıp sorgu penceresine yapıştırın ve Yürüt'e tıklayın. Bu örnekte, veritabanının kurtarma modelini öğrenmek için sys.databases katalog görünümünü sorgulama işlemi model gösterilmektedir.

SELECT name, recovery_model_desc
FROM sys.databases
WHERE name = 'model';
GO

Kurtarma modelini değiştirme

  1. Veritabanı Altyapısı'na bağlanın.

  2. Standart çubuğundan Yeni Sorgu'yu seçin.

  3. Aşağıdaki örneği kopyalayıp sorgu penceresine yapıştırın ve Yürüt'e tıklayın. Bu örnek, ALTER DATABASE deyiminin SET RECOVERY seçeneğini kullanarak model veritabanındaki kurtarma modelini FULL olarak nasıl değiştireceğinizi göstermektedir.

USE [master];
GO
ALTER DATABASE [model]
SET RECOVERY FULL;
GO

Uyarı

Veritabanı için plan önbelleği girdileri temizlenir veya sıfırlanır.

Öneriler: Kurtarma modelini değiştirdikten sonra

Full ve toplu günlük kurtarma modelleri arasında geçiş yaptıktan sonra

  • Toplu işlemleri tamamladıktan sonra hemen tam kurtarma modeline geri dönün.

  • Toplu günlüğe kaydedilen kurtarma modelinden tam kurtarma modeline geçtikten sonra günlüğü yedekleyin.

Yedekleme stratejiniz aynı kalır: Düzenli aralıklarla veritabanı, günlük ve değişiklik yedeklemeleri gerçekleştirmeye devam edin.

Basit kurtarma modelinden geçiş yaptıktan sonra

  • Tam kurtarma modeline veya yığın günlüğe kaydedilen kurtarma modeline geçtikten hemen sonra, günlük zincirini başlatmak için tam veya diferansiyel veritabanı yedeği alın.

    Tam veya toplu günlüğe alınan geri yükleme modeline geçiş yalnızca ilk veri yedeklemesinden sonra geçerli olur.

  • Normal günlük yedeklemeleri zamanlayın ve geri yükleme planınızı uygun şekilde güncelleştirin.

    Önemli

    Günlüklerinizi yedekleyin. Günlüğü yeterince sık yedeklemezseniz, işlem günlüğü disk alanı tükenene kadar genişleyebilir.

Basit kurtarma modeline geçtikten sonra

  • İşlem günlüğünü yedeklemek için zamanlanmış işleri sonlandırın.

  • Düzenli veritabanı yedeklemelerinin zamanlandığından emin olun. Veritabanınızın yedeklenmesi hem verilerinizi korumak hem de işlem günlüğünün etkin olmayan kısmının kesilmesi için gereklidir.