Share via


Tam Veritabanı Yedeği Oluşturma (SQL Server)

Bu konuda, SQL Server Management Studio veya Transact-SQL kullanılarak SQL Server 2012'da nasıl tam bir veritabanı yedeklemesi oluşturulacağı açıklanmaktadır.

Bu Konuda

  • Başlamadan Önce

    Sınırlamalar ve Kısıtlamalar

    Öneriler

    Güvenlik

  • Aşağıdakileri kullanarak tam veritabanı yedeklemesi oluşturma:

    SQL Server Management Studio

    Transact-SQL

Başlamadan Önce

Sınırlamalar ve Kısıtlamalar

  • Bir açık veya örtük işlemde BACKUP deyimine izin verilmez.

  • SQL Server'ın daha yeni bir sürümü tarafından oluşturulan yedeklemeler, SQL Server'ın daha önceki sürümlerinde geri yüklenemez.

  • Daha fazla bilgi için, bkz. Yedekleme Özet (SQL Server).

Öneriler

  • Veritabanının boyutu arttıkça, tam veritabanı yedeklemelerinin tamamlanması daha uzun sürer ve daha fazla depolama alanı gerektirir. Bundan dolayı büyük bir veritabanı için, tam veritabanı yedeklemesini bir dizi farklı veritabanı yedeklemesi ile desteklemek isteyebilirsiniz. Daha fazla bilgi için, bkz. Fark yedekleme (SQL Server).

  • sp_spaceused sistem saklı yordamını kullanarak tam veritabanı yedeklemesinin boyutunu tahmin edebilirsiniz.

  • Varsayılan olarak, her başarılı yedekleme işlemi, SQL Server hata günlüğüne ve sistem olay günlüğüne bir girdi ekler. Günlük çok sık yedeklenirse, bu başarı iletileri çabucak birikir ve diğer iletileri bulmayı güçleştiren büyük hata günlüklerine yol açar. Böyle durumlarda, eğer komut dosyalarınızın hiçbiri bu günlük girdilerine bağımlı değilse, 3226 izleme bayrağını kullanarak bu girdileri gizleyebilirsiniz. Daha fazla bilgi için, bkz. İzleme Bayrakları (Transact-SQL).

Güvenlik

Bir veritabanı yedeklemesinde TRUSTWORTHY, OFF olarak ayarlanır. TRUSTWORTHY'nin nasıl ON olarak ayarlanacağıyla ilgili daha fazla bilgi için bkz. alter database set seçenekleri (Transact-sql).

SQL Server 2012 ile başlayarak, yedeklemeler oluşturmak için PASSWORD ve MEDIAPASSWORD seçenekleri sonlandırılır. Parolalarla oluşturulan yedeklemeleri geri yükleyemeye devam edersiniz.

İzinler

BACKUP DATABASE ve BACKUP LOG izinleri, sysadmin sabit sunucu rolü ve db_owner ve db_backupoperator sabit veritabanı rollerinin üyeleri için varsayılan izinlerdir.

Yedekleme aygıtının fiziksel dosyasındaki sahiplik ve izin sorunları, yedekleme işleminde aksamaya yol açabilir. SQL Server aygıtı okuyup yazabilmeli; SQL Server hizmetini çalıştıran hesap ise yazma izinlerine sahip olmalıdır. Ancak sistem tablolarına yedekleme aygıtı için bir girdi ekleyen sp_addumpdevice, dosya erişim izinlerini kontrol etmez. Yedekleme veya geri yüklemeye girişildiğinde fiziksel kaynağa erişilene kadar, yedekleme aygıtının fiziksel dosyasındaki bu tür sorunlar ortaya çıkmayabilir.

Başa Dön bağlantısıyla kullanılan ok simgesi[Top]

SQL Server Management Studio Kullanarak

[!NOT]

SQL Server Management Studio kullanarak bir yedekleme görevi belirttiğinizde, Komut dosyası düğmesini tıklatıp bir komut dosyası hedefi seçerek ilgili Transact-SQL BACKUP komut dosyasını oluşturabilirsiniz.

Bir veritabanını yedeklemek için

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

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

  3. Veritabanını sağ tıklatın, Görevler’in üzerine gelin, ardından Yedekle'yi tıklatın. Veritabanını Yedekle iletişim kutusu görüntülenir.

  4. Veritabanı liste kutusunda, veritabanı adını doğrulayın. İsteğe bağlı olarak listeden farklı bir veritabanı seçebilirsiniz.

  5. Her kurtarma modeli için bir veritabanı yedeklemesi gerçekleştirebilirsiniz (FULL, BULK_LOGGED veya SIMPLE).

  6. Yedekleme türü liste kutusunda, Tam'ı seçin.

    Tam bir veritabanı yedeği oluşturduktan sonra, farklı bir veritabanı yedeği oluşturabileceğinizi unutmayın; daha fazla bilgi için bkz. Fark veritabanı yedekleme (SQL Server) oluşturma.

  7. İsterseniz, bir salt kopya yedeği oluşturmak için Salt Kopya Yedekleme'yi seçebilirsiniz. Bir salt kopya yedekleme, geleneksel SQL Server yedeklemelerinin sırasından bağımsız olan bir SQL Server yedeklemesidir. Daha fazla bilgi için, bkz. Yalnızca kopya yedekleme (SQL Server).

    [!NOT]

    Farklı seçeneği seçildiğinde, salt kopya yedeği oluşturamazsınız.

  8. Yedekleme bileşeni için, Veritabanı'nı tıklatın.

  9. Ya Ad metin kutusunda önerilen varsayılan yedekleme kümesi adını kabul edin ya da yedekleme kümesi için farklı bir ad girin.

  10. İsterseniz, Açıklama metin kutusuna, yedekleme kümesinin açıklamasını girin.

  11. Süre sonu verilerinin doğrulanmasını açıkça atlamadan, yedekleme kümesinin süresinin ne zaman dolacağını ve ne zaman üzerine yazılabileceğini belirtin.

    • Yedekleme kümesinin süresinin belli sayıda gün sonra dolmasını sağlamak için, Sonra'yı (varsayılan seçenek) tıklatın ve kümenin oluşturulduktan sonra kaçıncı günde süresinin dolacağını yazın. Bu değer 0'dan 99999 güne kadar bir değer olabilir; 0 gün değeri, yedekleme kümesinin süresinin hiçbir zaman dolmayacağı anlamına gelir.

      Varsayılan değer, Sunucu Özellikleri iletişim kutusunun (Veritabanı Ayarları Sayfası) Varsayılan yedekleme ortam beklemesi (gün) seçeneğinde ayarlanır. Buna erişmek için, Nesne Gezgini'nde sunucu adını sağ tıklatın ve özellikleri seçin; sonra Veritabanı Ayarları sayfasını seçin.

    • Yedekleme kümesinin belli bir tarihte süresinin dolmasını sağlamak için, Tarih'i tıklatın ve kümenin süresinin dolacağı tarihi girin.

      Yedekleme süre sonu tarihleri hakkında daha fazla bilgi için bkz. Yedekleme (Transact-sql).

  12. Disk veya Teyp'i tıklatarak yedekleme hedefinin türünü seçin. Tek bir medya kümesi içeren 64'e kadar disk veya teyp sürücüsü yolu seçmek için, Ekle'yi tıklatın. Seçilen yollar, Yedekleme konumu liste kutusunda görüntülenir.

    Bir yedekleme hedefini kaldırmak için, hedefi seçin ve Kaldır'ı tıklatın. Bir yedekleme hedefinin içeriğini görüntülemek için, hedefi seçin ve İçerik'i tıklatın.

  13. Gelişmiş seçenekleri görüntülemek veya seçmek için, Bir sayfa seçin bölmesindeki Seçenekler'i tıklatın.

  14. Aşağıdakilerden birini tıklatarak bir Üzerine Yazılacak Medya seçeneği seçin:

    • Var olan medya kümesine yedekleme

      Bu seçenek için, ya Var olan yedekleme kümesine ekle'yi ya da Tüm var olan yedekleme kümelerinin üzerine yaz'ı tıklatın. Daha fazla bilgi için, bkz. Appending to Existing Backup Sets ve Overwriting Backup Sets.

      İsterseniz, yedekleme işleminin, medya kümesi ve yedekleme kümesinin süresinin dolacağı tarih ve saati doğrulamasını sağlamak için, Medya kümesi adı ve yedekleme kümesi süre sonunu denetle'yi seçin.

      İsterseniz, Medya kümesi adı metin kutusuna bir ad girin. Bir ad belirtilmezse, boş adla bir medya kümesi oluşturulur. Bir medya kümesi adı belirtirseniz, gerçek adın buraya girdiğiniz adla eşleşip eşleşmediğini görmek için medya (teyp veya disk) kontrol edilir.

    • Yeni bir medya kümesine yedekleme ve tüm var olan yedekleme kümelerini silme

      Bu seçenek için, Yeni medya kümesi adı metin kutusuna bir ad girin ve isterseniz, Yeni medya kümesi açıklaması metin kutusunda medya kümesini açıklayın. Daha fazla bilgi için, bkz. Creating a New Media Set.

  15. Güvenilirlik bölümünde isterseniz şunları denetleyin:

  16. Bir teyp sürücüne yedekleme yapıyorsanız (Genel sayfasının Hedef bölümünde belirtildiği gibi), Yedeklemeden sonra teybi kaldır seçeneği etkin olur. Bu seçeneğin tıklanması, Kaldırmadan önce teybi geri sar seçeneğini etkin hale getirir.

    [!NOT]

    Bir işlem günlüğünü yedeklemediğiniz sürece (Genel sayfasının Yedekleme türü bölümünde belirtildiği şekilde), İşlem günlüğü bölümündeki seçenekler etkin olmaz.

  17. SQL Server 2008 Enterprise ve sonrası, yedekleme sıkıştırmayı destekler. Varsayılan olarak, bir yedeklemenin sıkıştırılıp sıkıştırılmayacağı, backup-compression default sunucu yapılandırma seçeneğinin değerine bağlıdır. Ancak geçerli sunucu düzeyi varsayılanına bakmaksızın, Yedeklemeyi sıkıştır'ı işaretleyerek bir yedeklemeyi sıkıştırabilir ve Yedeklemeyi sıkıştırma'yı işaretleyerek sıkıştırmayı engelleyebilirsiniz.

    Geçerli yedekleme sıkıştırma varsayılanını görüntülemek için

[!NOT]

Alternatif olarak, veritabanı yedeklemeleri oluşturmak için Bakım Planı Sihirbazı'nı kullanabilirsiniz.

Başa Dön bağlantısıyla kullanılan ok simgesi[Top]

Transact-SQL'i Kullanma

Tam veritabanı yedeklemesi oluşturmak için

  1. Tam veritabanı yedeklemesi oluşturmak için BACKUP DATABASE deyimini yürütün ve şunları belirtin:

    • Yedeklenecek veritabanının adı

    • Tam veritabanı yedeklemesinin yazıldığı yedekleme aygıtı

    Tam veritabanı yedeklemesi için temel Transact-SQL sözdizimi şudur:

    BACKUP DATABASE database

    TO backup_device [ ,...n ]

    [ WITH with_options [ ,...o ] ] ;

    Seçenek

    Açıklama

    database

    Yedeklenecek veritabanıdır.

    backup_device [ ,...n ]

    Yedekleme işlemi için kullanılacak, 1'den 64'e kadar yedekleme aygıtının bulunduğu listeyi belirtir. Fiziksel bir yedekleme aygıtı belirtebileceğiniz gibi, eğer tanımlanmışsa, buna karşılık gelen mantıksal bir yedekleme aygıtı da belirtebilirsiniz. Fiziksel bir yedekleme aygıtı belirtmek için, DISK veya TAPE seçeneğini kullanın:

    { DISK | TAPE } = physical_backup_device_name

    Daha fazla bilgi için, bkz. Yedekleme aygıtı (SQL Server).

    WITH with_options [ ,...o ]

    İsteğe bağlı olarak, bir veya daha fazla seçeneği belirtir: o. Seçeneklerle bazı temeller hakkında bilgi için adım 2'ye bakın.

  2. İsteğe bağlı olarak bir veya daha fazla WITH seçeneği belirtin. Burada birkaç temel WITH seçeneği açıklanmıştır. Tüm WITH seçenekleri hakkında bilgi için bkz. Yedekleme (Transact-sql).

    • WITH seçenekleriyle temel yedekleme:

      • { COMPRESSION | NO_COMPRESSION }
        Sadece SQL Server 2008 Enterprise ve daha sonrasında, bu yedeklemede yedekleme sıkıştırma yapılıp yapılmayacağını ve sunucu düzeyinde varsayılan geçersiz kılınıp kılınmayacağını belirtir.

        [!NOT]

        Sunucu düzeyi varsayılanı, yedekleme sıkıştırma varsayılanı seçeneği kullanılarak ayarlanır.

      • DESCRIPTION = { 'text' | **@**text_variable }
        Yedekleme kümesini açıklayan serbest formlu metni belirtir. Dizede maksimum 255 karakter bulunabilir.

      • NAME = { backup_set_name | **@**backup_set_name_var }
        Yedekleme kümesinin adını belirtir. Adlarda maksimum 128 karakter bulunabilir. NAME belirtilmezse ad boş kalır.

    • WITH seçenekleriyle temel yedekleme:

      Varsayılan olarak, BACKUP, yedeklemeyi var olan bir medya kümesine ekler ve var olan yedekleme kümelerini korur. Bunu açıkça belirtmek için NOINIT seçeneğini kullanın. Daha fazla bilgi için, bkz. Appending to Existing Backup Sets.

      Alternatif olarak, yedekleme medyasını biçimlendirmek için FORMAT seçeneğini kullanın.

      • FORMAT [ , MEDIANAME**=** { media_name | **@**media_name_variable } ] [ , MEDIADESCRIPTION = { text | **@**text_variable } ]
        Medyayı ilk kez kullanıyorsanız ya da var olan tüm verilerin üstüne yazmak istiyorsanız FORMAT yan tümcesini kullanın. İsterseniz, yeni medyaya bir medya adı ve açıklaması atayın.

        Önemli notÖnemli

        BACKUP deyiminin FORMAT yan tümcesini kullanırken çok dikkatli olun çünkü bu, daha önce yedekleme medyasında depolanmış olan tüm yedeklemeleri siler.

Örnekler (Transact-SQL)

A.Bir disk aygıtına yedekleme

Aşağıdaki örnek, yeni bir medya kümesi oluşturmak için FORMAT'ı kullanarak tüm AdventureWorks2012 veritabanını diske yedeklemektedir.

USE AdventureWorks2012;
GO
BACKUP DATABASE AdventureWorks2012
TO DISK = 'Z:\SQLServerBackups\AdventureWorks2012.Bak'
   WITH FORMAT,
      MEDIANAME = 'Z_SQLServerBackups',
      NAME = 'Full Backup of AdventureWorks2012';
GO

B.Bir teyp aygıtına yedekleme

Aşağıdaki örnek, yedeklemeyi daha önceki yedeklemelere ekleyerek tüm AdventureWorks2012 veritabanını yedeklemektedir.

USE AdventureWorks2012;
GO
BACKUP DATABASE AdventureWorks2012
   TO TAPE = '\\.\Tape0'
   WITH NOINIT,
      NAME = 'Full Backup of AdventureWorks2012';
GO

C.Mantıksal bir teyp aygıtına yedekleme

Aşağıdaki örnekte bir teyp sürücüsü için mantıksal bir yedekleme aygıtı oluşturulmaktadır. Örnek daha sonra tüm AdventureWorks2012 veritabanını bu aygıta yedekler.

-- Create a logical backup device, 
-- AdventureWorks2012_Bak_Tape, for tape device \\.\tape0.
USE master;
GO
EXEC sp_addumpdevice 'tape', 'AdventureWorks2012_Bak_Tape', '\\.\tape0'; 
USE AdventureWorks2012;
GO
BACKUP DATABASE AdventureWorks2012
   TO AdventureWorks2012_Bak_Tape
   WITH FORMAT,
      MEDIANAME = 'AdventureWorks2012_Bak_Tape',
      MEDIADESCRIPTION = '\\.\tape0', 
      NAME = 'Full Backup of AdventureWorks2012';
GO

Başa Dön bağlantısıyla kullanılan ok simgesi[Top]

Ayrıca bkz.

Görevler

Bir veritabanı yedekleme (SQL Server Management Studio'yu) geri yükleme

Başvuru

sp_addumpdevice (Transact-sql)

Yedekleme (Transact-sql)

(Genel sayfası) veritabanını yedekleyin

(Seçenekler sayfa) veritabanını yedekleyin

Kavramlar

Yedekleme Özet (SQL Server)

Overwriting Backup Sets

Tam Veritabanı Yedeği Oluşturma (SQL Server)

Appending to Existing Backup Sets

Fark yedekleme (SQL Server)

Tam veritabanı yedekleme (SQL Server)

Tam veritabanı (tam kurtarma modeli) yükler

Tam veritabanı (Basit kurtarma modeli) yükler

Bakım planı Sihirbazı'nı kullanın

Fark veritabanı yedekleme (SQL Server) oluşturma

Diğer Kaynaklar

Working with Transaction Log Backups

Maintenance Plan Wizard