Aracılığıyla paylaş


Linux'ta SQL Server veritabanlarını yedekleme ve geri yükleme

Şunlar için geçerlidir:Linux üzerinde SQL Server

Linux üzerinde SQL Server'dan veritabanlarının yedeklerini birçok farklı seçenekle alabilirsiniz. Linux sunucusunda sqlcmd kullanarak SQL Server'a bağlanabilir ve yedek alabilirsiniz. Windows'tan Linux üzerinde SQL Server'a bağlanabilir ve kullanıcı arabirimiyle yedekler alabilirsiniz. Yedekleme işlevi platformlar arasında aynıdır. Örneğin, veritabanlarını yerel olarak, uzak sürücülere veya SQL Server yedeklemesini Microsoft Azure Blob Depolama URL'sine yedekleyebilirsiniz.

Önemli

Linux üzerinde SQL Server yalnızca blok blobları kullanarak Azure Blob depolamaya yedeklemeyi destekler. Yedekleme ve geri yükleme için bir depolama anahtarı kullanılması, desteklenmeyen bir sayfa blogu kullanılmasına neden olur. Bunun yerine Paylaşılan Erişim İmzası kullanın. Blok blobları ile sayfa blobları arasındaki farklar hakkında bilgi için Blok blobuna karşı sayfa blobuna yedekleme başlığına bakın.

Veritabanını yedekleme

Aşağıdaki örnekte , sqlcmd yerel SQL Server örneğine bağlanır ve adlı demodbbir kullanıcı veritabanının tam yedeğini alır.

sqlcmd -S localhost -U sa -Q "BACKUP DATABASE [demodb] TO DISK = N'/var/opt/mssql/data/demodb.bak' WITH NOFORMAT, NOINIT, NAME = 'demodb-full', SKIP, NOREWIND, NOUNLOAD, STATS = 10"

Komutunu çalıştırdığınızda, SQL Server parola ister. Parolayı girdikten sonra, kabuk yedekleme ilerleme durumunun sonuçlarını döndürür. Mesela:

Password:
10 percent processed.
21 percent processed.
32 percent processed.
40 percent processed.
51 percent processed.
61 percent processed.
72 percent processed.
80 percent processed.
91 percent processed.
Processed 296 pages for database 'demodb', file 'demodb' on file 1.
100 percent processed.
Processed 2 pages for database 'demodb', file 'demodb_log' on file 1.
BACKUP DATABASE successfully processed 298 pages in 0.064 seconds (36.376 MB/sec).

İşlem günlüğünü yedekleme

Veritabanınız tam kurtarma modelindeyse, daha ayrıntılı geri yükleme seçenekleri için işlem günlüğü yedeklemeleri de yapabilirsiniz. Aşağıdaki örnekte , sqlcmd yerel SQL Server örneğine bağlanır ve bir işlem günlüğü yedeklemesi alır.

sqlcmd -S localhost -U sa -Q "BACKUP LOG [demodb] TO DISK = N'/var/opt/mssql/data/demodb_LogBackup.bak' WITH NOFORMAT, NOINIT, NAME = N'demodb_LogBackup', NOSKIP, NOREWIND, NOUNLOAD, STATS = 5"

Veritabanını geri yükleme

Aşağıdaki örnekte sqlcmd SQL Server'ın yerel örneğine bağlanır ve demodb veritabanını geri yükler. NORECOVERY seçeneği, günlük dosyası yedeklemelerinin ek geri yüklenmesine izin vermek için kullanılır. Ek günlük dosyalarını geri yüklemeyi planlamıyorsanız NORECOVERY seçeneğini kaldırın.

sqlcmd -S localhost -U sa -Q "RESTORE DATABASE [demodb] FROM DISK = N'/var/opt/mssql/data/demodb.bak' WITH FILE = 1, NOUNLOAD, REPLACE, NORECOVERY, STATS = 5"

Bahşiş

NORECOVERY'yi yanlışlıkla kullanıyorsanız ancak ek günlük dosyası yedeklemeleriniz yoksa, ek parametre olmadan RESTORE DATABASE demodb komutunu çalıştırın. Bu işlem geri yüklemeyi tamamlar ve veritabanınızı çalışır durumda bırakır.

İşlem günlüğünü geri yükleme

Aşağıdaki komut, önceki işlem günlüğü yedeklemesini geri yükler.

sqlcmd -S localhost -U sa -Q "RESTORE LOG demodb FROM DISK = N'/var/opt/mssql/data/demodb_LogBackup.bak'"

SQL Server Management Studio (SSMS) ile yedekleme ve geri yükleme

Linux veritabanına bağlanmak ve kullanıcı arabirimi aracılığıyla yedek almak için Windows bilgisayardan SQL Server Management Studio'yu (SSMS) kullanabilirsiniz.

Not

SQL Server Management Studio'nun (SSMS) en son sürümünü yükleyin. SSMS'yi kullanma hakkında daha fazla bilgi için bkz. Linux üzerinde SQL Server'ı yönetmek için Windows üzerinde SQL Server Management Studio kullanma.

Aşağıdaki adımlar, SSMS ile yedek alma sürecini adım adım açıklar.

  1. SSMS'yi başlatın ve Linux üzerinde SQL Server örneğine bağlanın.

  2. Nesne Gezgini'nde veritabanınıza sağ tıklayın, Görevler'i ve ardından Yedekle... öğesini seçin.

  3. Veritabanını Yedekle iletişim kutusunda parametreleri ve seçenekleri doğrulayın ve Tamam'ı seçin.

SQL Server veritabanı yedeklemesini tamamlar.

SQL Server Management Studio (SSMS) ile geri yükleme

Aşağıdaki adımlar SSMS ile veritabanını geri yükleme işleminde size yol gösterir.

  1. SSMS'de Veritabanları'a sağ tıklayın ve Veritabanlarını Geri Yükle... öğesini seçin.

  2. Kaynak altında Cihaz: seçin ve ardından üç noktayı (...) seçin.

  3. Veritabanı yedekleme dosyanızı bulun ve tamam seçin.

  4. Planı geri yükle'nin altında yedekleme dosyasını ve ayarlarını doğrulayın. Tamam'ı seçin.

  5. SQL Server veritabanını geri yükler.

SQL belgelerine katkıda bulunma

SQL içeriğini kendiniz düzenleyebildiğinizi biliyor muydunuz? Bunu yaparsanız, belgelerimizin geliştirilmesine yardımcı olmakla kalmaz, aynı zamanda sayfaya katkıda bulunan olarak da kabul edilirsiniz.

Daha fazla bilgi için Bkz. Microsoft Learn belgelerini düzenleme.