Pencadangan database lengkap (SQL Server)

Berlaku untuk:SQL Server

Cadangan database lengkap mencadangkan seluruh database. Ini termasuk bagian dari log transaksi sehingga database lengkap dapat dipulihkan setelah pencadangan database lengkap dipulihkan. Pencadangan database lengkap mewakili database pada saat pencadangan selesai.

Seiring bertambahnya ukuran database, pencadangan database lengkap membutuhkan lebih banyak waktu untuk menyelesaikan dan membutuhkan lebih banyak ruang penyimpanan. Oleh karena itu, untuk database besar, Anda mungkin ingin melengkapi cadangan database lengkap dengan serangkaian cadangan database diferensial. Untuk informasi selengkapnya, lihat Pencadangan diferensial (SQL Server).

Penting

TRUSTWORTHY diatur ke NONAKTIF pada cadangan database. Untuk informasi tentang cara mengatur TRUSTWORTHY ke , lihat MENGUBAH OPSI SET DATABASE (Transact-SQL)ON.

Pencadangan database di bawah model pemulihan sederhana

Di bawah model pemulihan sederhana, setelah setiap cadangan, database terpapar potensi kehilangan kerja jika bencana terjadi. Paparan kehilangan kerja meningkat dengan setiap pembaruan hingga pencadangan berikutnya, ketika paparan kehilangan kerja kembali ke nol dan siklus baru paparan kehilangan kerja dimulai. Paparan kehilangan kerja meningkat dari waktu ke waktu antar cadangan. Ilustrasi berikut menunjukkan paparan kehilangan kerja untuk strategi pencadangan yang hanya menggunakan cadangan database penuh.

Diagram showing the work-loss exposure between database backups.

Contoh (Transact-SQL)

Contoh berikut menunjukkan cara membuat cadangan database lengkap dengan menggunakan WITH FORMAT untuk menimpa cadangan yang ada dan membuat set media baru.

-- Back up the AdventureWorks2022 database to new media set.
BACKUP DATABASE AdventureWorks2022
    TO DISK = 'Z:\SQLServerBackups\AdventureWorksSimpleRM.bak'
    WITH FORMAT;
GO

Pencadangan database di bawah model pemulihan penuh

Untuk database yang menggunakan pemulihan penuh dan dicatat secara massal, pencadangan database diperlukan tetapi tidak cukup. Pencadangan log transaksi juga diperlukan. Ilustrasi berikut menunjukkan strategi pencadangan paling kompleks yang dimungkinkan di bawah model pemulihan penuh.

Diagram showing the series of full database backups and log backups.

Untuk informasi tentang cara membuat cadangan log, lihat Pencadangan log transaksi (SQL Server).

Contoh (Transact-SQL)

Contoh berikut menunjukkan cara membuat cadangan database lengkap dengan menggunakan WITH FORMAT untuk menimpa cadangan yang ada dan membuat set media baru. Kemudian, contoh mencadangkan log transaksi. Dalam situasi kehidupan nyata, Anda harus melakukan serangkaian pencadangan log reguler. Untuk contoh ini, AdventureWorks2022 database sampel diatur untuk menggunakan model pemulihan penuh.

USE master;
GO
ALTER DATABASE AdventureWorks2022 SET RECOVERY FULL;
GO
-- Back up the AdventureWorks2022 database to new media set (backup set 1).
BACKUP DATABASE AdventureWorks2022
  TO DISK = 'Z:\SQLServerBackups\AdventureWorks2022FullRM.bak'
  WITH FORMAT;
GO
--Create a routine log backup (backup set 2).
BACKUP LOG AdventureWorks2022 TO DISK = 'Z:\SQLServerBackups\AdventureWorks2022FullRM.bak';
GO

Menggunakan cadangan database lengkap untuk memulihkan database

Anda dapat membuat ulang seluruh database dalam satu langkah dengan memulihkan database dari cadangan database lengkap ke lokasi mana pun. Cukup log transaksi yang disertakan dalam cadangan untuk memungkinkan Anda memulihkan database ke saat pencadangan selesai. Database yang dipulihkan cocok dengan status database asli ketika pencadangan database selesai, dikurangi transaksi yang tidak dilakukan. Di bawah model pemulihan penuh, Anda kemudian harus memulihkan semua cadangan log transaksi berikutnya. Saat database dipulihkan, transaksi yang tidak dilakukan akan digulung balik.

Untuk informasi selengkapnya, lihat Pemulihan Database Lengkap (Model Pemulihan Sederhana) atau Pemulihan Database Lengkap (Model Pemulihan Penuh).