Bagikan sekarang:
Daftar Isi menyembunyikan

backup SQL Server basis data dengan panduan lengkap kami untuk tahun 2025. Petunjuk langkah demi langkah dan praktik terbaik untuk semua tingkat keahlian.

1. Pengantar SQL Server backup

1.1 Apa SQL Server Cadangan?

SQL Server Pencadangan adalah proses pembuatan salinan berkas basis data Anda untuk melindungi dari kehilangan data. Pencadangan merekam status basis data Anda pada titik waktu tertentu, memungkinkan Anda memulihkan data jika terjadi kegagalan perangkat keras, kesalahan manusia, atau bencana.

SQL Server menyimpan cadangan dalam file .bak secara default, yang berisi semua objek basis data termasuk tabel, prosedur tersimpan, tampilan, indeks, dan log transaksi.

1.2 Mengapa SQL Server Pencadangan Sangat Penting

Pencadangan basis data berfungsi sebagai garis pertahanan terakhir Anda terhadap kehilangan data. Tanpa pencadangan yang tepat, organisasi Anda berisiko:

  • Kehilangan data permanen dari kegagalan atau kerusakan perangkat keras
  • Waktu henti yang diperpanjang selama upaya pemulihan
  • Gangguan bisnis dan kehilangan pendapatan
  • Pelanggaran kepatuhan jika data tidak dapat dipulihkan
  • Kerusakan reputasi dari gangguan layanan

Reguler SQL Server pencadangan memastikan kelangsungan bisnis dan memenuhi persyaratan peraturan untuk perlindungan data.

1.3 Skenario Kehilangan Data Umum

Memahami kapan kehilangan data terjadi membantu Anda mengembangkan strategi pencadangan yang efektif:

  • Kegagalan perangkat keras: Kerusakan disk, malfungsi server, atau kegagalan sistem penyimpanan
  • Kesalahan manusia: Penghapusan yang tidak disengaja, pembaruan yang salah, atau tabel yang dijatuhkan
  • Masalah perangkat lunak: Bug aplikasi, pembaruan rusak, atau sistem crash
  • Pelanggaran keamanan: Serangan ransomware, penghapusan berbahaya, atau akses tidak sah
  • Bencana alam: Kebakaran, banjir, atau pemadaman listrik yang memengaruhi pusat data

2. Paham SQL Server Jenis Cadangan

SQL Server mendukung berbagai jenis pencadangan, masing-masing melayani kebutuhan pemulihan dan persyaratan penyimpanan yang berbeda.

2.1 Pencadangan Penuh

Pencadangan penuh membuat salinan lengkap seluruh basis data Anda, termasuk semua file data dan bagian log transaksi yang diperlukan untuk pemulihan.

2.1.1 Kapan Menggunakan Full Backup

Pencadangan penuh ideal untuk:

  • Menetapkan dasar untuk jenis cadangan lainnya
  • Basis data kecil hingga menengah yang waktu pencadangannya dapat diterima
  • Jadwal pencadangan mingguan atau bulanan
  • Basis data dengan perubahan yang jarang terjadi

2.1.2 Keuntungan dan Keterbatasan Full Backup

Keuntungan:

  • Proses pemulihan paling sederhana – satu file berisi semuanya
  • Mandiri dan independen dari cadangan lainnya
  • Waktu pemulihan tercepat untuk pemulihan basis data lengkap

Keterbatasan:

  • Membutuhkan ruang penyimpanan yang signifikan
  • Waktu pencadangan yang lebih lama untuk database besar
  • Konsumsi sumber daya yang lebih tinggi selama operasi pencadangan

2.2 Cadangan Diferensial

Pencadangan diferensial hanya menangkap perubahan data sejak pencadangan penuh terakhir, sehingga mengurangi waktu pencadangan dan kebutuhan penyimpanan.

2.2.1 Cara Kerja Pencadangan Diferensial

Pencadangan diferensial melacak modifikasi menggunakan ekstensi yang diubah. Saat Anda memulihkan, SQL Server menerapkan cadangan penuh terakhir terlebih dahulu, lalu menerapkan most cadangan diferensial terkini.

2.2.2 Cadangan Penuh vs. Cadangan Diferensial

Cadangan Penuh vs. Cadangan Diferensial

Aspek Cadangan Penuh Cadangan Diferensial
Ukuran Basis data lengkap Hanya perubahan sejak pencadangan penuh terakhir
Waktu Cadangan Paling lama Lebih cepat dari penuh
Kembalikan Proses Pemulihan file tunggal Membutuhkan diferensial penuh +
Penyimpanan Diperlukan Most ruang Ruang awalnya lebih kecil, namun tumbuh seiring waktu

2.3 Pencadangan Log Transaksi

Pencadangan log transaksi menangkap semua transaksi sejak pencadangan log terakhir, yang memungkinkan pemulihan pada titik waktu tertentu.

2.3.1 Memahami Log Transaksi

Log transaksi mencatat setiap modifikasi pada basis data Anda. Pencadangan log akan memotong bagian log yang tidak aktif, mencegahnya bertambah besar tanpa batas dan memenuhi disk Anda.

2.3.2 Pemulihan Titik Waktu

Pencadangan log transaksi memungkinkan Anda memulihkan basis data ke momen tertentu dalam pencadangan log. Hal ini penting untuk memulihkan data dari modifikasi atau penghapusan data yang tidak disengaja.

Untuk melakukan pemulihan point-in-time, Anda memerlukan:

  • Cadangan penuh terakhir
  • Most cadangan diferensial terkini (opsional)
  • Semua cadangan log transaksi dari cadangan penuh/diferensial ke tarmendapatkan waktu

2.4 Cadangan Log Ekor

Pencadangan tail-log menangkap catatan log yang belum dicadangkan, mencegah kehilangan data dan menjaga rantai log tetap utuh. Sebelum memulihkan SQL Server Untuk memulihkan basis data ke titik waktu terbarunya, Anda harus mencadangkan bagian ekor log transaksinya. Pencadangan tail-log adalah pencadangan terakhir yang penting dalam rencana pemulihan basis data.

Diagram yang menjelaskan pencadangan log ekor di SQL Server.

Catatan: Tidak semua skenario pemulihan memerlukan pencadangan tail-log. Anda tidak memerlukannya jika titik pemulihan terdapat dalam pencadangan log sebelumnya. Pencadangan tail-log juga tidak diperlukan jika Anda memindahkan atau mengganti (menimpa) basis data dan tidak perlu memulihkannya ke titik waktu setelah pencadangannya.ost cadangan terkini.

2.4.1 Kapan Pencadangan Log Ekor Diperlukan

Skenario berikut menjelaskan kapan Anda harus mengambil cadangan tail-log:

Pemulihan Basis Data Daring: Jika basis data sedang online dan Anda berencana melakukan operasi pemulihan pada basis data, mulailah dengan mencadangkan bagian ekor log. Untuk menghindari kesalahan pada basis data online, Anda harus menggunakan opsi WITH NORECOVERY dari pernyataan Transact-SQL BACKUP saat Anda mencadangkan. SQL Server database.

Pemulihan Basis Data Offline: Jika database sedang offline dan gagal untuk starJika Anda perlu memulihkan basis data, pertama-tama cadangkan bagian ekor log. Karena tidak ada transaksi yang dapat terjadi saat ini, penggunaan opsi WITH NORECOVERY bersifat opsional. NORECOVERY pada dasarnya sama dengan pencadangan log transaksi yang hanya menyalin dalam skenario ini.

Cadangan Basis Data yang Rusak: Jika basis data rusak, cobalah untuk membuat cadangan tail-log dengan menggunakan opsi WITH CONTINUE_AFTER_ERROR dari pernyataan BACKUP. Pada basis data yang rusak, pencadangan tail log hanya dapat berhasil jika berkas log tidak rusak, basis data berada dalam kondisi yang mendukung pencadangan tail-log, dan basis data tidak berisi perubahan yang dicatat secara massal. Jika cadangan tail-log tidak dapat dibuat, semua transaksi yang dilakukan setelah MS terakhir SQL Server database cadangan adalah lost.

2.4.2 Opsi Utama untuk Pencadangan Tail-Log

DENGAN NORECOVERY: Gunakan DENGAN NORECOVERY jika Anda mencadangkan sebagian log dari basis data daring yang ingin Anda pulihkan nanti. NORECOVERY akan membuat basis data offline. Anda juga dapat mencadangkan SQL Server Log ekor dari basis data luring. Jika Anda ingin membiarkan basis data luring, gunakan WITH NORECOVERY. Perhatikan bahwa log akan terpotong kecuali Anda menentukan opsi COPY_ONLY atau NO_TRUNCATE.

DENGAN LANJUTKAN_SETELAH_KESALAHAN: Gunakan CONTINUE_AFTER_ERROR hanya jika Anda mencadangkan bagian akhir dari basis data yang rusak. Saat Anda mencadangkan bagian akhir log pada basis data yang rusak, beberapa metadata yang biasanya tercatat dalam pencadangan log mungkin tidak tersedia.

2.5 Pencadangan Hanya Salin

Pencadangan khusus salinan menciptakan pencadangan independen tanpa memengaruhi urutan pencadangan normal. Pencadangan ini tidak mengganggu rantai pencadangan diferensial atau kontinuitas log transaksi.

Gunakan cadangan hanya-salinan untuk:

  • Membuat salinan basis data pengujian atau pengembangan
  • Pencadangan ad-hoc tanpa memengaruhi pencadangan terjadwal
  • Cadangkan sebelum perubahan besar atau pengujian

2.6 Pencadangan File dan Grup File

Pencadangan file dan grup file tarDapatkan berkas atau grup berkas basis data tertentu, alih-alih seluruh basis data. Pendekatan ini efektif untuk basis data yang sangat besar di mana pencadangan semuanya membutuhkan waktu terlalu lama.

Manfaat meliputi:

  • Operasi pencadangan yang lebih cepat untuk database besar
  • Pencadangan paralel beberapa grup file
  • Opsi pemulihan granular
  • Jadwal pencadangan yang dioptimalkan untuk grup file hanya-baca

2.7 Pencadangan Sebagian

Pencadangan parsial mencakup semua data dalam grup berkas utama dan semua grup berkas baca-tulis, kecuali grup berkas baca-saja. Hal ini mengurangi ukuran dan waktu pencadangan untuk basis data dengan data historis statis yang disimpan dalam grup berkas baca-saja.

3. SQL Server Model Pemulihan

SQL Server model pemulihan menentukan jenis cadangan mana yang tersedia dan bagaimana log transaksi dikelola.

3.1 Model Pemulihan Sederhana

3.1.1 Karakteristik dan Kasus Penggunaan

Pemulihan sederhana secara otomatis memotong log transaksi setelah setiap titik pemeriksaan, sehingga menghemat ruang tanpa memerlukan pencadangan log.

Terbaik untuk:

  • Pengembangan dan pengujian database
  • Basis data di mana kehilangan data antar pencadangan dapat diterima
  • Gudang data dengan proses ETL yang dapat dijalankan ulang
  • Database hanya baca atau pelaporan

3.1.2 Opsi Cadangan yang Tersedia

Dukungan pemulihan sederhana:

  • Pencadangan penuh
  • Cadangan diferensial
  • Pencadangan file dan grup file
  • Pencadangan hanya-salinan

Pencadangan log transaksi adalah tidak tersedia dalam model pemulihan sederhana.

3.2 Model Pemulihan Penuh

3.2.1 Fitur dan Manfaat

Pemulihan penuh mencatat semua transaksi dan menyimpan catatan log hingga Anda mencadangkannya. Hal ini memungkinkan pemulihan data lengkap kapan pun dalam pencadangan log transaksi.

Kunci Manfaat:

  • Potensi kehilangan data minimal
  • Kemampuan pemulihan titik waktu
  • Mendukung pengiriman log dan pencerminan basis data
  • Fleksibilitas pemulihan maksimum

3.2.2 Manajemen Log Transaksi

Dalam pemulihan penuh, Anda harus melakukan pencadangan log transaksi secara berkala untuk:

  • Mencegah log transaksi memenuhi ruang disk
  • Pertahankan rantai cadangan yang berkelanjutan
  • Aktifkan pemulihan titik waktu
  • Kontrol pertumbuhan file log

Jadwal pencadangan yang umum: pencadangan penuh setiap minggu, pencadangan diferensial setiap hari, pencadangan log setiap 15-30 menit.

3.3 Model Pemulihan yang Dicatat Secara Massal

3.3.1 Kapan Menggunakan Bulk-Logged

Pemulihan yang dicatat secara massal minimal mencatat operasi massal seperti BULK INSERT, SELECT INTO, dan pembuatan ulang indeks sambil mempertahankan pencatatan penuh untuk transaksi reguler.

Gunakan pemulihan yang dicatat secara massal ketika:

  • Melakukan operasi impor massal yang besar
  • Membangun kembali indeks pada tabel besar
  • Menjalankan operasi yang mendapatkan keuntungan dari pencatatan minimal
  • Perlu mengurangi ukuran log transaksi selama operasi tertentu

3.3.2 Keterbatasan dan Pertimbangan

Batasan penting:

  • Pemulihan titik waktu tidak tersedia selama operasi massal
  • Pencadangan log lebih besar ketika operasi massal terjadi
  • Harus beralih antara pencatatan penuh dan pencatatan massal sesuai kebutuhan

3.4 Memilih Model Pemulihan yang Tepat

Pilih model pemulihan Anda berdasarkan persyaratan bisnis:

Model Pemulihan Risiko Kehilangan Data Pemulihan Point-in-Time terbaik Untuk
Sederhana Perubahan sejak pencadangan terakhir Tidak Pengembangan/pengujian, kehilangan data dapat diterima
Penuh Minimal (biasanya menit) Ya Basis data produksi, data penting
Dicatat secara massal Perubahan sejak pencadangan log terakhir Terbatas selama operasi massal Wakturary digunakan selama operasi massal

4. backup SQL Server Basis Data Menggunakan SSMS

4.1 Prasyarat dan Persiapan

Sebelum mencadangkan SQL Server basis data, pastikan:

  • Anda memiliki izin yang sesuai (izin db_owner atau BACKUP DATABASE)
  • Ruang disk yang cukup untuk file cadangan
  • SQL Server Studio Manajemen (SSMS) terpasang
  • Jalur jaringan dapat diakses jika melakukan pencadangan ke lokasi jaringan

4.2 Langkah demi Langkah: Pencadangan Penuh dengan SSMS

Ikuti langkah-langkah berikut untuk membuat cadangan penuh SQL Server basis data menggunakan SSMS.

4.2.1 Pembukaan SQL Server Studio Manajemen

  1. Launch SQL Server Studio Manajemen
  2. Masukkan nama server Anda di Nama server bidang
  3. Pilih metode autentikasi Anda
  4. Klik Terhubung

4.2.2 Memilih Opsi Basis Data dan Cadangan

  1. In Penjelajah Objek, perluas Database simpul
  2. Klik kanan database yang ingin Anda backup
  3. Pilih Tasks -> Back Up
    Startugas cadangan ta untuk SQL Server basis data di SQL Server Studio Manajemen.
  4. Dalam majalah Cadangkan Basis Data jendela, verifikasi nama database
  5. Pilih Penuh sebagai Jenis cadangan
    Buat cadangan penuh dari SQL Server basis data di SQL Server Studio Manajemen.

4.2.3 Mengonfigurasi Tujuan Pencadangan

  1. Bawah Tujuanklik Hapus untuk menghapus jalur default (jika diperlukan)
  2. Klik Add untuk menentukan lokasi cadangan baru
  3. Masukkan jalur dan nama file dengan .bak perpanjangan
  4. Klik OK untuk mengkonfirmasi tujuan

Tetapkan tujuan pencadangan di SQL Server Studio Manajemen.

4.2.4 Advanced Backup Pengaturan

  1. Klik Opsi Media di panel kiri
  2. Pilih opsi cadangan:
    • Timpa semua set cadangan yang ada – Menggantikan cadangan yang ada
    • Tambahkan ke set cadangan yang ada – Menambahkan ke file cadangan yang ada

    Tetapkan opsi media cadangan di SQL Server Studio Manajemen.

  3. Klik Pilihan Backup di panel kiri
  4. Konfigurasikan pengaturan opsional:
    • Kompres cadangan – Mengurangi ukuran file cadangan
    • Enkripsi cadangan – Melindungi data sensitif
    • Verifikasi cadangan saat selesai – Memeriksa integritas cadangan

    Tetapkan opsi cadangan di SQL Server Studio Manajemen.

4.2.5 Menjalankan Pencadangan

  1. Tinjau semua pengaturan di Cadangkan Basis Data jendela
  2. Klik OK untuk starproses pencadangan
  3. Tunggu hingga pencadangan selesai
  4. Pesan sukses muncul ketika pencadangan selesai
  5. Klik OK untuk menutup dialog konfirmasi

4.3 Membuat Cadangan Diferensial dengan SSMS

Untuk membuat cadangan diferensial, ikuti langkah yang sama seperti cadangan penuh, tetapi pilih Diferensial sebagai jenis cadangan pada langkah 4.2.2. Ingatlah bahwa cadangan diferensial memerlukan cadangan penuh sebelumnya sebagai dasar.

Buat cadangan diferensial dari SQL Server basis data di SQL Server Studio Manajemen.

4.4 Membuat Cadangan Log Transaksi dengan SSMS

Pencadangan log transaksi hanya tersedia untuk basis data yang menggunakan model pemulihan Penuh atau Pencatatan Massal.

  1. Klik kanan database di Penjelajah Objek
  2. Pilih Tasks -> Back Up
  3. Pilih Log Transaksi sebagai tipe cadangan
  4. Konfigurasikan tujuan dan opsi sesuai kebutuhan
  5. Klik OK untuk membuat cadangan log

Buat cadangan log transaksi dari SQL Server basis data di SQL Server Studio Manajemen.

4.5 Membuat Cadangan Hanya Salin dengan SSMS

Pencadangan hanya-salinan tidak akan mengganggu urutan pencadangan rutin Anda.

  1. Ikuti langkah-langkah untuk membuat cadangan penuh
  2. Dalam majalah Pilihan Backup halaman
  3. Periksalah Pencadangan hanya-salinan Option
  4. Selesaikan proses pencadangan secara normal

Buat cadangan hanya salinan dari SQL Server basis data di SQL Server Studio Manajemen.

5. backup SQL Server Basis Data Menggunakan T-SQL

5.1 Sintaks Dasar DATABASE CADANGAN

Perintah T-SQL BACKUP DATABASE menyediakan kontrol terprogram atas SQL Server backup.

BACKUP DATABASE database_name
TO DISK = 'backup_file_path'
WITH options;

5.2 Perintah T-SQL Cadangan Penuh

5.2.1 Skrip Pencadangan Penuh Sederhana

Buat cadangan lengkap dasar dengan opsi minimal:

BACKUP DATABASE AdventureWorks
TO DISK = 'C:\Backups\AdventureWorks.bak'
GO

5.2.2 Pencadangan Penuh dengan Opsi

Tambahkan informasi deskriptif dan opsi pemformatan:

BACKUP DATABASE AdventureWorks
TO DISK = 'C:\Backups\AdventureWorks.bak'
WITH FORMAT,
     INIT,
     NAME = 'AdventureWorks-Full Database Backup',
     DESCRIPTION = 'Full backup of AdventureWorks database',
     STATS = 10
GO

Opsi dijelaskan:

  • FORMAT – Membuat set cadangan baru
  • INIT – Menimpa file cadangan yang ada
  • NAMA – Menetapkan nama set cadangan
  • DESKRIPSI – Menambahkan teks deskriptif
  • STATS – Menunjukkan kemajuan setiap 10%

5.3 Perintah T-SQL Cadangan Diferensial

Pencadangan diferensial menggunakan opsi DIFERENSIAL:

BACKUP DATABASE AdventureWorks
TO DISK = 'C:\Backups\AdventureWorks_Diff.bak'
WITH DIFFERENTIAL,
     INIT,
     NAME = 'AdventureWorks-Differential Backup',
     STATS = 10
GO

5.4 Perintah T-SQL Pencadangan Log Transaksi

Gunakan BACKUP LOG untuk pencadangan log transaksi:

BACKUP LOG AdventureWorks
TO DISK = 'C:\Backups\AdventureWorks_Log.trn'
WITH INIT,
     NAME = 'AdventureWorks-Transaction Log Backup',
     STATS = 10
GO

5.5 Opsi Pencadangan T-SQL Lanjutan

5.5.1 Pencadangan ke Beberapa File

Distribusikan cadangan ke beberapa file untuk kinerja yang lebih cepat:

BACKUP DATABASE AdventureWorks
TO DISK = 'C:\Backups\AdventureWorks_1.bak',
   DISK = 'D:\Backups\AdventureWorks_2.bak',
   DISK = 'E:\Backups\AdventureWorks_3.bak'
WITH FORMAT, INIT
GO

5.5.2 Pencadangan dengan Kompresi

Kurangi ukuran file cadangan dan lebar pita jaringan:

BACKUP DATABASE AdventureWorks
TO DISK = 'C:\Backups\AdventureWorks_Compressed.bak'
WITH COMPRESSION,
     INIT,
     STATS = 10
GO

5.5.3 Pencadangan dengan Enkripsi

Lindungi data sensitif dengan enkripsi:

BACKUP DATABASE AdventureWorks
TO DISK = 'C:\Backups\AdventureWorks_Encrypted.bak'
WITH COMPRESSION,
     ENCRYPTION (
         ALGORITHM = AES_256,
         SERVER CERTIFICATE = BackupCertificate
     ),
     STATS = 10
GO

5.5.4 Pencadangan dengan Perlindungan Kata Sandi

Tambahkan proteksi kata sandi (sudah tidak berlaku lagi, gunakan enkripsi sebagai gantinya):

BACKUP DATABASE AdventureWorks
TO DISK = 'C:\Backups\AdventureWorks.bak'
WITH PASSWORD = 'StrongPassword123!',
     INIT
GO

5.5.5 Pencadangan Cermin

Buat salinan simultan ke lokasi berbeda:

BACKUP DATABASE AdventureWorks
TO DISK = 'C:\Backups\AdventureWorks.bak'
MIRROR TO DISK = 'D:\Backups\AdventureWorks_Mirror.bak'
WITH FORMAT, INIT
GO

5.6 Contoh dan Skrip Pencadangan T-SQL

Skrip cadangan lengkap dengan penanganan kesalahan:

DECLARE @BackupPath NVARCHAR(500);
DECLARE @DatabaseName NVARCHAR(128) = 'AdventureWorks';
DECLARE @BackupDate NVARCHAR(20);

SET @BackupDate = CONVERT(NVARCHAR(20), GETDATE(), 112);
SET @BackupPath = 'C:\Backups\' + @DatabaseName + '_' + @BackupDate + '.bak';

BEGIN TRY
    BACKUP DATABASE @DatabaseName
    TO DISK = @BackupPath
    WITH COMPRESSION,
         INIT,
         NAME = @DatabaseName + '-Full Backup',
         STATS = 10;
    
    PRINT 'Backup completed successfully: ' + @BackupPath;
END TRY
BEGIN CATCH
    PRINT 'Backup failed: ' + ERROR_MESSAGE();
END CATCH
GO

6. backup SQL Server Basis Data Menggunakan PowerShell

6.1 Cmdlet Cadangan PowerShell

SQL Server Modul PowerShell menyediakan cmdlet untuk otomatisasi pencadangan:

  • Backup-SqlDatabase – Membuat cadangan basis data
  • Pulihkan-SqlDatabase – Mengembalikan cadangan basis data
  • Dapatkan-SqlDatabase – Mengambil informasi basis data

Impor SQL Server modul:

Import-Module SqlServer

6.2 Membuat Skrip Cadangan dengan PowerShell

Perintah pencadangan PowerShell dasar:

Backup-SqlDatabase -ServerInstance "localhost" `
                    -Database "AdventureWorks" `
                    -BackupFile "C:\Backups\AdventureWorks.bak" `
                    -BackupAction Database `
                    -CompressionOption On

Contoh cadangan diferensial:

Backup-SqlDatabase -ServerInstance "localhost" `
                    -Database "AdventureWorks" `
                    -BackupFile "C:\Backups\AdventureWorks_Diff.bak" `
                    -BackupAction Database `
                    -Incremental

Pencadangan log transaksi:

Backup-SqlDatabase -ServerInstance "localhost" `
                    -Database "AdventureWorks" `
                    -BackupFile "C:\Backups\AdventureWorks_Log.trn" `
                    -BackupAction Log

6.3 Mengotomatiskan Pencadangan dengan PowerShell

Buat skrip cadangan otomatis untuk beberapa basis data:

# Configuration
$ServerInstance = "localhost"
$BackupPath = "C:\Backups"
$Databases = @("AdventureWorks", "TestDB", "ProductionDB")
$Timestamp = Get-Date -Format "yyyyMMdd_HHmmss"

# Create backup directory if not exists
if (-not (Test-Path $BackupPath)) {
    New-Item -ItemType Directory -Path $BackupPath
}

# Backup each database
foreach ($Database in $Databases) {
    $BackupFile = Join-Path $BackupPath "$Database`_$Timestamp.bak"
    
    try {
        Backup-SqlDatabase -ServerInstance $ServerInstance `
                          -Database $Database `
                          -BackupFile $BackupFile `
                          -BackupAction Database `
                          -CompressionOption On
        
        Write-Host "Successfully backed up $Database to $BackupFile" -ForegroundColor Green
    }
    catch {
        Write-Host "Failed to backup $Database : $_" -ForegroundColor Red
    }
}

7. backup SQL Server Database Menggunakan Command Line

SQL Server menyediakan utilitas baris perintah yang memungkinkan Anda untuk membuat cadangan SQL Server basis data tanpa menggunakan SSMS atau antarmuka grafis. Alat-alat ini penting untuk skenario otomatisasi, skrip, dan administrasi jarak jauh.

7.1 Menggunakan Database Cadangan SQLCMD

SQLCMD adalah utilitas baris perintah modern untuk SQL Server yang menggantikan OSQL. OSQL menyediakan fungsionalitas yang ditingkatkan dan merupakan alat yang direkomendasikan untuk menjalankan perintah T-SQL dari command prompt.

7.1.1 Sintaks Dasar SQLCMD

sqlcmd -S ServerName -d DatabaseName -Q "BACKUP DATABASE statement"
  • -S: Menentukan SQL Server nama instans
  • -d: Menentukan nama basis data
  • -Q: Menjalankan kueri dan keluar
  • -DAN: Menggunakan Autentikasi Windows
  • -U: Menentukan SQL Server nama pengguna masuk
  • -P: Menentukan kata sandi untuk SQL Server masuk

7.1.2 Membuat Cadangan dengan SQLCMD

Untuk mencadangkan SQL Server menggunakan SQLCMD, ikuti langkah-langkah berikut:

  1. Open command Prompt or PowerShell
  2. Arahkan ke folder SQL Server direktori alat (biasanya ditambahkan ke PATH selama instalasi)
  3. Jalankan perintah database cadangan SQLCMD dengan parameter yang sesuai
  4. Verifikasi bahwa file cadangan telah berhasil dibuat

Contoh perintah pencadangan penuh menggunakan Autentikasi Windows:

sqlcmd -S localhost -E -Q "BACKUP DATABASE AdventureWorks TO DISK='C:\Backups\AdventureWorks.bak' WITH COMPRESSION, INIT"

Contoh penggunaan SQL Server Otentikasi:

sqlcmd -S localhost -U sa -P YourPassword -Q "BACKUP DATABASE AdventureWorks TO DISK='C:\Backups\AdventureWorks.bak' WITH COMPRESSION, INIT"

Membuat Cadangan Diferensial dengan SQLCMD

sqlcmd -S localhost -E -Q "BACKUP DATABASE AdventureWorks TO DISK='C:\Backups\AdventureWorks_Diff.bak' WITH DIFFERENTIAL, COMPRESSION, INIT"

Membuat Cadangan Log Transaksi dengan SQLCMD

sqlcmd -S localhost -E -Q "BACKUP LOG AdventureWorks TO DISK='C:\Backups\AdventureWorks_Log.trn' WITH COMPRESSION, INIT"

7.2 Menggunakan Basis Data Cadangan OSQL

OSQL adalah utilitas baris perintah lama untuk SQL ServerMeskipun Microsoft merekomendasikan penggunaan SQLCMD, OSQL tetap tersedia untuk kompatibilitas mundur dengan skrip dan sistem lama.

7.2.1 Sintaks Dasar OSQL

Sintaks OSQL mirip dengan SQLCMD:

osql -S ServerName -d DatabaseName -Q "BACKUP DATABASE statement"
  • -S: SQL Server nama instans
  • -d: Nama basis data
  • -Q: Menjalankan query dan keluar
  • -DAN: Menggunakan koneksi tepercaya (Autentikasi Windows)
  • -U: Login nama pengguna
  • -P: Kata sandi masuk

7.2.2 Membuat Cadangan dengan OSQL

Untuk melakukan operasi pencadangan basis data OSQL:

  1. Open command Prompt
  2. Verifikasi OSQL tersedia di SQL Server instalasi
  3. Jalankan perintah cadangan OSQL

Contoh cadangan penuh:

osql -S localhost -E -Q "BACKUP DATABASE AdventureWorks TO DISK='C:\Backups\AdventureWorks.bak' WITH INIT"

Contoh cadangan diferensial:

osql -S localhost -E -Q "BACKUP DATABASE AdventureWorks TO DISK='C:\Backups\AdventureWorks_Diff.bak' WITH DIFFERENTIAL, INIT"

8. Pihak Ketiga SQL Server Alat Cadangan

Sementara SQL Server Dilengkapi kemampuan pencadangan asli, alat pihak ketiga menawarkan fitur yang disempurnakan, otomatisasi, dan manajemen tingkat perusahaan untuk organisasi dengan persyaratan kompleks. Solusi ini menyediakan kompresi tingkat lanjut, manajemen terpusat, dan alur kerja yang efisien untuk pencadangan. SQL Server basis data di berbagai lingkungan.

8.1 Veeam Backup untuk SQL Server

Veeam menawarkan solusi perlindungan data komprehensif yang dirancang khusus untuk mencadangkan SQL Server basis data dengan dampak minimal pada sistem produksi.

Fitur Utama:

  • Pemrosesan yang sadar aplikasi untuk SQL Server konsistensi cadangan
  • Pencadangan dan manajemen log transaksi
  • Pemulihan titik waktu dengan opsi pemulihan terperinci
  • Integrasi dengan Veeam Backup & Replication untuk perlindungan data terpadu
  • Verifikasi dan validasi cadangan otomatis
  • Dukungan untuk Grup Ketersediaan Selalu Aktif
  • Tingkat VM dan tingkat aplikasi SQL Server opsi cadangan

8.2 Barracuda Backup untuk SQL Server

Barracuda menyediakan solusi cadangan terintegrasi cloud dengan manajemen yang disederhanakan untuk MS SQL Server operasi basis data cadangan.

Fitur Utama:

  • Otomatis SQL Server penjadwalan cadangan
  • Replikasi cloud bawaan ke Barracuda Cloud Storage
  • Deduplikasi dan kompresi global
  • Kemampuan pemulihan lokal instan
  • Konsol manajemen berbasis web
  • Dukungan untuk pencadangan log penuh, diferensial, dan transaksi
  • Perlindungan ransomware dengan cadangan yang tidak dapat diubah

8.3 Veritas NetBackup untuk SQL Server

Veritas NetBackup adalah platform cadangan tingkat perusahaan yang menyediakan perlindungan komprehensif untuk SQL Server basis data di seluruh lingkungan TI yang kompleks.

Fitur Utama:

  • Manajemen cadangan skala perusahaan untuk ribuan SQL Server contoh
  • Algoritma deduplikasi dan kompresi tingkat lanjut
  • Kebijakan dan penjadwalan pencadangan yang fleksibel
  • Dukungan untuk semua SQL Server model pemulihan
  • Integrasi dengan tape libraries dan penyimpanan cloud
  • Pemulihan granular database, tabel, dan objek
  • Dukungan multi-platform (Windows, Linux SQL Server)
  • Manajemen siklus hidup pencadangan otomatis

8.4 Commvault Complete Backup & Recovery untuk SQL Server

Commvault menghadirkan manajemen data cerdas dengan pencadangan komprehensif SQL Server kemampuan dan fitur otomatisasi tingkat lanjut.

Fitur Utama:

  • Optimalisasi cadangan berbasis AI dan deteksi anomali
  • Platform terpadu untuk pencadangan, pemulihan, dan pengarsipan
  • Advanced SQL Server kompresi cadangan (pengurangan hingga 90%)
  • Orkestrasi pemulihan bencana otomatis
  • Sinkronisasi Langsung untuk perlindungan RPO mendekati nol
  • Dukungan untuk SQL Server penerapan di tempat, cloud, dan hybrid
  • IntelliSnap untuk pencadangan berbasis snapshot
  • Kemampuan kepatuhan dan penemuan elektronik yang komprehensif

8.5 Cohesity DataProtect untuk SQL Server

Cohesity menyediakan manajemen data generasi berikutnya dengan infrastruktur hyperconverged untuk modern SQL Server operasi pencadangan.

Fitur Utama:

  • Arsitektur skala web untuk manajemen yang disederhanakan
  • Kemampuan pemulihan massa instan untuk SQL Server database
  • Snapshot yang konsisten dengan aplikasi
  • Deduplikasi global di seluruh cadangan
  • Integrasi cloud asli (AWS, Azure, Google Cloud)
  • Dasbor analitik dan pemantauan bawaan
  • Kemampuan kloning dan uji database
  • Perlindungan ransomware dengan snapshot yang tidak dapat diubah

8.6 Red Gate SQL Backup Pro

Red Gate SQL Backup Pro adalah alat khusus yang berfokus secara eksklusif pada pengoptimalan SQL Server operasi pencadangan dan pemulihan dengan kompresi dan kinerja yang unggul.

Fitur Utama:

  • Rasio kompresi terdepan di industri (hingga 95%)
  • Ketahanan jaringan untuk pencadangan SQL Server melalui koneksi yang tidak dapat diandalkan
  • Enkripsi cadangan dengan AES 256-bit
  • Verifikasi salinan cadangan dan pemeriksaan integritas
  • Riwayat pencadangan dan pelaporan terperinci
  • Integrasi dengan SQL Server Studio Manajemen
  • Dukungan untuk pencadangan ke lokasi jaringan dan penyimpanan cloud
  • Pencadangan dan pemulihan paralel untuk operasi yang lebih cepat

9. Cara Mengembalikan SQL Server Basis Data

9.1 Memahami Proses Pemulihan

Memulihkan a SQL Server Basis data membuat ulang basis data dari berkas cadangan. Proses pemulihan membaca berkas cadangan dan merekonstruksi basis data ke kondisi cadangannya.

Pertimbangan penting:

  • Memulihkan menimpa database yang ada
  • Pengguna terputus selama pemulihan
  • Pemulihan harus mengikuti urutan pencadangan (penuh, lalu diferensial, lalu log)
  • Basis data tidak tersedia selama operasi pemulihan

9.2 Memulihkan Cadangan Penuh Menggunakan SSMS

Ikuti langkah-langkah ini untuk memulihkan cadangan basis data lengkap.

9.2.1 Proses Pemulihan Langkah demi Langkah

  1. Open SQL Server Studio Manajemen dan terhubung ke server Anda
  2. In Penjelajah Objek, klik kanan Database
  3. Pilih Pulihkan Database
  4. Dalam majalah sumber bagian, pilih alat
  5. klik ... tombol untuk menelusuri file cadangan
  6. Klik Add dan navigasikan ke file .bak Anda
  7. Pilih file cadangan dan klik OK
  8. Dalam majalah Tujuan bagian, masukkan nama database
  9. Tinjau set cadangan untuk memulihkan
  10. Klik OK untuk staruntuk mengembalikan

9.2.2 Opsi dan Pengaturan Pemulihan

Klik Opsi di panel kiri untuk mengonfigurasi:

  • Timpa database yang ada (DENGAN REPLACE) – Memungkinkan pemulihan pada database yang ada
  • Pertahankan pengaturan replikasi (DENGAN KEEP_REPLICATION) – Mempertahankan konfigurasi replikasi
  • Batasi akses ke database yang dipulihkan (DENGAN PENGGUNA_TERBATAS) – Batas post-mengembalikan akses
  • Keadaan pemulihan – Pilih antara RESTORE WITH RECOVERY atau NORECOVERY

9.3 Memulihkan Cadangan Diferensial

Pemulihan diferensial memerlukan pencadangan penuh dan diferensial:

  1. Pertama, pulihkan cadangan penuh dengan TIDAK ADA PEMULIHAN Option
  2. Kemudian pulihkan cadangan diferensial dengan RECOVERY Option

Contoh T-SQL:

-- Restore full backup (NORECOVERY to allow differential)
RESTORE DATABASE AdventureWorks
FROM DISK = 'C:\Backups\AdventureWorks_Full.bak'
WITH NORECOVERY, REPLACE;

-- Restore differential backup (RECOVERY to complete)
RESTORE DATABASE AdventureWorks
FROM DISK = 'C:\Backups\AdventureWorks_Diff.bak'
WITH RECOVERY;
GO

9.4 Memulihkan dengan Cadangan Log Transaksi

Untuk pemulihan pada titik waktu tertentu, pulihkan secara berurutan:

  1. Pulihkan cadangan penuh dengan NORECOVERY
  2. Pulihkan cadangan diferensial dengan NORECOVERY (jika tersedia)
  3. Pulihkan cadangan log transaksi secara berurutan dengan NORECOVERY
  4. Pulihkan cadangan log akhir dengan RECOVERY
-- Restore full backup
RESTORE DATABASE AdventureWorks
FROM DISK = 'C:\Backups\AdventureWorks_Full.bak'
WITH NORECOVERY, REPLACE;

-- Restore first log backup
RESTORE LOG AdventureWorks
FROM DISK = 'C:\Backups\AdventureWorks_Log1.trn'
WITH NORECOVERY;

-- Restore second log backup with recovery
RESTORE LOG AdventureWorks
FROM DISK = 'C:\Backups\AdventureWorks_Log2.trn'
WITH RECOVERY;
GO

9.5 Pemulihan Titik Waktu

Pulihkan basis data ke titik waktu tertentu menggunakan opsi STOPAT:

-- Restore to specific time: January 15, 2025 at 2:30 PM
RESTORE DATABASE AdventureWorks
FROM DISK = 'C:\Backups\AdventureWorks_Full.bak'
WITH NORECOVERY, REPLACE;

RESTORE LOG AdventureWorks
FROM DISK = 'C:\Backups\AdventureWorks_Log.trn'
WITH RECOVERY, STOPAT = '2025-01-15 14:30:00';
GO

9.6 Pemulihan Tabel

SQL Server Tidak mendukung pemulihan langsung tingkat tabel dari file cadangan. Namun, masih ada beberapa solusi.

9.6.1 Metode 1: Cuplikan Basis Data (Terbaik untuk Pencegahan)

Snapshot basis data menyediakan cara tercepat untuk memulihkan data tabel jika dibuat sebelum masalah terjadi. Snapshot adalah tampilan statis basis data yang hanya dapat dibaca pada titik waktu tertentu.

Membuat Cuplikan Basis Data:

-- Create snapshot before making changes
CREATE DATABASE ProductionDB_Snapshot_20250107
ON
( NAME = ProductionDB_Data, 
  FILENAME = 'C:\Snapshots\ProductionDB_Snapshot.ss' )
AS SNAPSHOT OF ProductionDB;
GO

Memulihkan Data Tabel dari Snapshot:

USE ProductionDB;
GO

-- Replace entire table content
BEGIN TRANSACTION;

-- Disable constraints temporarily
ALTER TABLE dbo.Orders NOCHECK CONSTRAINT ALL;

-- Clear current data
TRUNCATE TABLE dbo.Orders;

-- Restore from snapshot
INSERT INTO dbo.Orders
SELECT * FROM ProductionDB_Snapshot_20250107.dbo.Orders;

-- Re-enable constraints
ALTER TABLE dbo.Orders CHECK CONSTRAINT ALL;

COMMIT TRANSACTION;
GO

Persyaratan Versi: Cuplikan basis data tersedia di SQL Server Edisi Perusahaan (semua versi), dan Edisi Standartarting dengan SQL Server 2016SP1.

9.6.2 Metode 2: Mengembalikan TemporarBasis Data y (M)ost Umum)

Metode ini berfungsi ketika Anda perlu memulihkan data tabel setelah terjadi masalah dan tidak ada snapshot yang tersedia:

  1. Pulihkan cadangan ke temporarbasis data y
  2. Salin data tabel dari temporarbasis data y ke basis data saat ini

9.7 Pemulihan Halaman

Pemulihan halaman memperbaiki halaman individual yang rusak tanpa memulihkan seluruh basis data, meminimalkan waktu henti dengan tarhanya mendapatkan halaman yang rusak. Fitur ini hanya tersedia pada model pemulihan Full atau Bulk-Logged dan memerlukan rantai cadangan log transaksi yang tidak terputus dari cadangan halaman hingga file log saat ini.

Untuk melakukan pemulihan halaman, pertama-tama identifikasi halaman yang rusak, ambil cadangan log ekor (tail-log backup), pulihkan halaman-halaman tertentu, lalu terapkan semua log transaksi:

-- Identify damaged pages
SELECT * FROM msdb.dbo.suspect_pages
WHERE database_id = DB_ID('AdventureWorks');

-- Take tail-log backup
BACKUP LOG AdventureWorks
TO DISK = 'C:\Backups\AdventureWorks_TailLog.trn'
WITH NORECOVERY;

-- Restore damaged pages
RESTORE DATABASE AdventureWorks
PAGE = '1:123, 1:456'
FROM DISK = 'C:\Backups\AdventureWorks_Full.bak'
WITH NORECOVERY;

-- Apply transaction logs
RESTORE LOG AdventureWorks
FROM DISK = 'C:\Backups\AdventureWorks_Log1.trn'
WITH NORECOVERY;

RESTORE LOG AdventureWorks
FROM DISK = 'C:\Backups\AdventureWorks_TailLog.trn'
WITH RECOVERY;
GO

Catatan: Pemulihan halaman tidak tersedia dalam model pemulihan Sederhana. Anda tidak dapat memulihkan halaman dari tabel sistem atau metadata grup file utama.

9.8 Pemulihan Bertahap

Pemulihan bertahap (pemulihan parsial) memulihkan basis data secara bertahap pada tingkat grup file, stardengan grup file utama. Ini membuat data penting langsung online sementara data yang kurang penting dipulihkan di latar belakang. Di bawah model pemulihan Sederhana, semua grup file baca-tulis harus dipulihkan bersama dengan grup file utama; hanya grup file baca-saja yang dapat dipulihkan secara terpisah. Di bawah model pemulihan Penuh atau Massal-Logged, setiap grup file dapat diaktifkan secara independen setelah menerapkan log transaksi.

Model Pemulihan Pemulihan Perilaku Secara Bertahap
Sederhana Grup file utama dan semua grup file baca-tulis dipulihkan bersamaan. Grup file hanya baca dipulihkan secara terpisah.
Pencatatan Lengkap/Massal Setiap grup file dipulihkan secara independen pada tingkat grup file.

Contoh untuk model pemulihan penuh – pulihkan grup file utama terlebih dahulu untuk mengaktifkan basis data, kemudian pulihkan grup file sekunder sementara basis data tetap beroperasi:

-- Stage 1: Restore primary filegroup (database comes online)
RESTORE DATABASE AdventureWorks
FILEGROUP = 'PRIMARY'
FROM DISK = 'C:\Backups\AdventureWorks_Full.bak'
WITH PARTIAL, NORECOVERY;

RESTORE LOG AdventureWorks
FROM DISK = 'C:\Backups\AdventureWorks_Log1.trn'
WITH RECOVERY;
GO

-- Stage 2: Restore secondary filegroup (database stays online)
RESTORE DATABASE AdventureWorks
FILEGROUP = 'HistoricalData'
FROM DISK = 'C:\Backups\AdventureWorks_Full.bak'
WITH NORECOVERY;

RESTORE LOG AdventureWorks
FROM DISK = 'C:\Backups\AdventureWorks_Log1.trn'
WITH RECOVERY;
GO

Contoh model pemulihan sederhana:

-- Restore primary with all read-write filegroups
RESTORE DATABASE AdventureWorks
FILEGROUP = 'PRIMARY'
FROM DISK = 'C:\Backups\AdventureWorks_Full.bak'
WITH PARTIAL, RECOVERY;

-- Restore read-only filegroup separately
RESTORE DATABASE AdventureWorks
FILEGROUP = 'ReadOnlyArchive'
FROM DISK = 'C:\Backups\AdventureWorks_ReadOnly.bak'
WITH RECOVERY;
GO

9.9 Memulihkan Menggunakan Perintah T-SQL

Skrip pemulihan lengkap dengan relokasi file:

RESTORE DATABASE AdventureWorks
FROM DISK = 'C:\Backups\AdventureWorks.bak'
WITH MOVE 'AdventureWorks_Data' TO 'D:\Data\AdventureWorks.mdf',
     MOVE 'AdventureWorks_Log' TO 'E:\Logs\AdventureWorks.ldf',
     REPLACE,
     STATS = 10;
GO

9.10 Memverifikasi Integritas Cadangan Sebelum Pemulihan

Periksa validitas cadangan tanpa memulihkan:

RESTORE VERIFYONLY
FROM DISK = 'C:\Backups\AdventureWorks.bak';
GO

Perintah ini memverifikasi bahwa set cadangan lengkap dan dapat dibaca tanpa benar-benar memulihkan basis data.

10. SQL Server Praktik Terbaik Cadangan

10.1 Mengembangkan Strategi Cadangan

10.1.1 Menilai Persyaratan Bisnis

Sebelum menerapkan pencadangan, evaluasi:

  • Kekritisan data: Seberapa penting data ini untuk operasi?
  • Ubah frekuensi: Seberapa sering data berubah?
  • Ukuran basis data: Seberapa besar basis datanya?
  • Sumber daya yang tersedia: Penyimpanan dan bandwidth apa yang tersedia?
  • Kebutuhan kepatuhan: Peraturan apa yang harus Anda ikuti?

10.1.2 Mendefinisikan RTO dan RPO

Tujuan Waktu Pemulihan (RTO): Waktu henti maksimum yang dapat diterima. Menentukan seberapa cepat Anda perlu memulihkan operasi.

Tujuan Titik Pemulihan (RPO): Kehilangan data maksimum yang dapat diterima. Menentukan frekuensi pencadangan.

Persyaratan RTO/RPO Strategi Pencadangan yang Direkomendasikan
RPO: Jam, RTO: Jam Log transaksi harian penuh + setiap 1-2 jam
RPO: Menit, RTO: Jam Pencadangan log penuh + harian setiap 15-30 menit
RPO: Hampir nol, RTO: Menit Grup Ketersediaan Selalu Aktif + pencadangan log yang sering
RPO: Hari, RTO: Hari Selisih mingguan penuh + harian

10.2 Membuat Jadwal Pencadangan

10.2.1 Rekomendasi Frekuensi

Jadwal pencadangan umum untuk basis data produksi:

  • Pencadangan penuh: Mingguan (Minggu malam saat aktivitas rendah)
  • Cadangan diferensial: Setiap hari (setiap malam)
  • Pencadangan log transaksi: Setiap 15-30 menit selama jam kerja
  • Pencadangan hanya-salinan: Sesuai kebutuhan untuk pengujian atau pengembangan

10.2.2 Menyeimbangkan Kinerja dan Perlindungan

Pertimbangkan faktor-faktor ini saat menjadwalkan:

  • Jam di luar jam sibuk: Jalankan pencadangan penuh selama periode aktivitas rendah
  • Dampak sumber daya: Kompresi mengurangi I/O tetapi meningkatkan penggunaan CPU
  • Bandwidth jaringan: Jadwalkan pencadangan jaringan saat lalu lintas rendah
  • Jendela cadangan: Pastikan pencadangan selesai sebelum jam kerja

10.3 Praktik Terbaik Penyimpanan Cadangan

10.3.1 Penyimpanan di Lokasi vs. Penyimpanan di Luar Lokasi

Pencadangan di tempat:

  • Waktu pencadangan dan pemulihan lebih cepat
  • c . lebih rendahost untuk akses frekuensi tinggi
  • Rentan terhadap bencana lokal
  • Terbaik untuk skenario pemulihan cepat

Pencadangan di luar lokasi:

  • Perlindungan dari bencana spesifik lokasi
  • Kepatuhan terhadap persyaratan redundansi geografis
  • Waktu pemulihan lebih lambat
  • Penting untuk pemulihan bencana

10.3.2 Opsi Pencadangan Cloud

Keuntungan penyimpanan cloud:

  • Penyimpanan Blob Azure: Asli SQL Server integrasi, cost-efektif untuk akses yang jarang
  • Amazon S3: Tingkat penyimpanan yang sangat tahan lama dan fleksibel
  • Penyimpanan Awan Google: Harga kompetitif, ketersediaan global

10.3.3 Kebijakan Retensi Cadangan

Kebijakan penyimpanan sampel:

  • Simpan cadangan harian selama 7 hari
  • Simpan cadangan mingguan selama 4 minggu
  • Simpan cadangan bulanan selama 12 bulan
  • Simpan cadangan tahunan selama 7 tahun (kepatuhan)

10.4 Kompresi dan Enkripsi Cadangan

Manfaat kompresi:

  • Mengurangi ukuran file cadangan sebesar 50-70%
  • Mengurangi waktu pencadangan
  • Menurunkan penyimpanan costs
  • Mengurangi bandwidth jaringan untuk pencadangan jarak jauh

Praktik terbaik enkripsi:

  • Selalu enkripsi cadangan yang berisi data sensitif
  • Gunakan enkripsi AES 256-bit
  • Sertifikat aman atau manajemen kunci
  • Dokumentasikan kunci enkripsi dan simpan secara terpisah

10.5 Menguji dan Memverifikasi Cadangan

10.5.1 Pengujian Pemulihan Reguler

Prosedur pemulihan pengujian triwulanan atau bulanan:

  1. Pulihkan cadangan ke lingkungan pengujian
  2. Verifikasi integritas dan kelengkapan data
  3. Periksa fungsionalitas aplikasi
  4. Waktu pemulihan dokumen (validasi RTO)
  5. Identifikasi dan selesaikan masalah apa pun

10.5.2 Menggunakan RESTORE VERIFYONLY

Otomatisasi validasi cadangan:

-- Verify backup integrity
RESTORE VERIFYONLY
FROM DISK = 'C:\Backups\AdventureWorks.bak'
WITH CHECKSUM;
GO

Jalankan verifikasi segera setelah pencadangan selesai atau sebagai bagian dari pemeliharaan terjadwal.

10.6 Otomatisasi dan Pemantauan Pencadangan

10.6.1 SQL Server Pekerjaan Agen

Buat pekerjaan pencadangan otomatis:

  1. Lihat lebih lanjut SQL Server AgenExternal Link di SSMS
  2. Klik kanan Jobs dan pilih Pekerjaan Baru
  3. Beri nama pekerjaan (misalnya, “Pencadangan Penuh Harian”)
  4. Tambahkan Langkah dengan perintah cadangan T-SQL
  5. Membuat Susunan acara untuk waktu eksekusi
  6. Konfigurasi Pemberitahuan untuk keberhasilan/kegagalan

10.6.2 Rencana Pemeliharaan

SQL Server Rencana Pemeliharaan menyediakan antarmuka visual untuk otomatisasi pencadangan:

  1. Navigasi ke Pengelolaan -> Rencana Pemeliharaan
  2. Klik kanan dan pilih Panduan Rencana Pemeliharaan
  3. Pilih tugas cadangan untuk diotomatisasi
  4. Konfigurasikan jadwal dan opsi pencadangan
  5. Siapkan pelaporan dan pencatatan

10.6.3 Peringatan dan Notifikasi Cadangan

Konfigurasikan notifikasi email:

  • Siapkan Database Mail di SQL Server
  • Buat peringatan untuk kegagalan pencadangan
  • Memantau riwayat pekerjaan pencadangan
  • Kirim laporan ringkasan ke administrator

10.7 Dokumentasi dan Perencanaan Pemulihan Bencana

Pertahankan dokumentasi yang komprehensif:

  • Jadwal pencadangan: Kapan dan apa yang dicadangkan
  • Kebijakan penyimpanan: Berapa lama cadangan disimpan
  • Lokasi penyimpanan: Di mana cadangan disimpan
  • Prosedur pemulihan: Petunjuk pemulihan langkah demi langkah
  • Informasi kontak: Personel dan vendor kunci
  • Hasil uji pemulihan: Hasil tes yang terdokumentasi

11. Maju SQL Server Skenario Cadangan

11.1 Pencadangan Basis Data Sangat Besar (VLDB)

11.1.1 Strategi File dan Filegroup

Untuk basis data yang melebihi beberapa ratus gigabyte:

  • Pisahkan data baca-saja dan baca-tulis ke dalam grup file yang berbeda
  • Cadangkan grup file hanya-baca secara jarang
  • Fokuskan pencadangan rutin pada grup file aktif
  • Gunakan pencadangan tingkat file untuk kontrol terperinci

Contoh berkas cadangan:

-- Back up specific file
BACKUP DATABASE LargeDB 
FILE = 'LargeDB_Data1'
TO DISK = 'C:\Backups\LargeDB_File1.bak'
WITH COMPRESSION;
GO

11.1.2 Optimasi Kinerja Pencadangan

Meningkatkan kinerja pencadangan VLDB:

  • Cadangan bergaris: Menulis ke beberapa file secara bersamaan
  • Kompresi: Mengurangi persyaratan I/O dan penyimpanan
  • Beberapa perangkat cadangan: Paralelisasikan operasi pencadangan
  • Penyimpanan cepat: Gunakan SSD untuk pementasan cadangan
  • Jumlah penyangga: Tingkatkan opsi BUFFERCOUNT
  • Ukuran transfer maksimum: Optimalkan pengaturan MAXTRANSFERSIZE
-- Optimized VLDB backup
BACKUP DATABASE LargeDB
TO DISK = 'C:\Backups\LargeDB_1.bak',
   DISK = 'D:\Backups\LargeDB_2.bak',
   DISK = 'E:\Backups\LargeDB_3.bak'
WITH COMPRESSION,
     BUFFERCOUNT = 100,
     MAXTRANSFERSIZE = 4194304;
GO

11.2 Pencadangan dalam Grup Ketersediaan Selalu Aktif

Grup Ketersediaan Selalu Aktif mendistribusikan beban cadangan di seluruh replika:

  • Konfigurasikan preferensi cadangan (primer, sekunder, atau replika apa pun)
  • Memindahkan cadangan ke replika sekunder untuk mengurangi beban kerja utama
  • Gunakan cadangan COPY_ONLY pada replika sekunder
  • Pantau pengaturan prioritas pencadangan
-- Check backup preferences
SELECT 
    ag.name AS AvailabilityGroup,
    ar.replica_server_name,
    ar.backup_priority
FROM sys.availability_replicas ar
INNER JOIN sys.availability_groups ag ON ar.group_id = ag.group_id;
GO

11.3 Pencadangan untuk Pencerminan Basis Data

Dalam skenario pencerminan basis data:

  • Cadangkan database utama secara teratur
  • Pencadangan log transaksi sangat penting untuk pencerminan
  • Basis data cermin dalam status PEMULIHAN (tidak dapat dicadangkan secara langsung)
  • Pertimbangkan untuk mencadangkan cermin setelah failover

11.4 Pencadangan ke Azure Blob Storage

SQL Server dapat mencadangkan langsung ke Azure Blob Storage:

  1. Buat Akun Penyimpanan Azure
  2. membuat SQL Server kredensial untuk autentikasi Azure
  3. Gunakan sintaks URL untuk tujuan pencadangan
-- Create credential for Azure
CREATE CREDENTIAL [https://mystorageaccount.blob.core.windows.net/backups]
WITH IDENTITY = 'SHARED ACCESS SIGNATURE',
SECRET = 'your_SAS_token';
GO

-- Backup to Azure
BACKUP DATABASE AdventureWorks
TO URL = 'https://mystorageaccount.blob.core.windows.net/backups/AdventureWorks.bak'
WITH COMPRESSION,
     STATS = 10;
GO

11.5 Pencadangan ke URL

Manfaat melakukan pencadangan ke URL:

  • Kapasitas penyimpanan cloud tak terbatas
  • Redundansi geografis ditangani secara otomatis
  • Model penetapan harga bayar sesuai pemakaian
  • Tidak diperlukan ruang disk lokal
  • Mendukung hingga 64 URL per cadangan (striping)

11.6 Cadangan Bergaris untuk Performa

Pencadangan bergaris membagi data ke beberapa file untuk I/O yang lebih cepat:

-- Striped backup to 4 files
BACKUP DATABASE AdventureWorks
TO DISK = 'C:\Backups\AW_Stripe1.bak',
   DISK = 'D:\Backups\AW_Stripe2.bak',
   DISK = 'E:\Backups\AW_Stripe3.bak',
   DISK = 'F:\Backups\AW_Stripe4.bak'
WITH COMPRESSION, FORMAT;
GO

Catatan: Semua berkas stripe diperlukan untuk pemulihan. Jika ada berkas yang hilang, cadangan tidak dapat digunakan.

12. Penyelesaian masalah SQL Server Masalah Pencadangan

12.1 Kesalahan Umum dalam Pencadangan dan Solusinya

Kesalahan: “Kesalahan sistem operasi 5: Akses ditolak”

  • Sebab: SQL Server akun layanan tidak memiliki izin
  • Larutan: Berikan izin Menulis ke SQL Server akun layanan di folder cadangan

Kesalahan: “Tidak dapat membuka perangkat cadangan… Kesalahan perangkat atau perangkat offline”

  • Sebab: Jalur tidak valid atau berbagi jaringan tidak tersedia
  • Larutan: Verifikasi keberadaan jalur, periksa konektivitas jaringan, pastikan ruang disk cukup

Kesalahan: “Tidak cukup ruang pada disk”

  • Sebab: Ruang disk tidak cukup untuk pencadangan
  • Larutan: Kosongkan ruang disk, gunakan kompresi, cadangkan ke lokasi berbeda

Kesalahan: "Basis data sedang digunakan. Basis data sedang digunakan oleh pengguna lain."

  • Sebab: Koneksi aktif selama pemulihan
  • Larutan: Gunakan opsi WITH REPLACE atau putuskan sambungan pengguna terlebih dahulu

12.2 Masalah Kinerja Pencadangan

Diagnosis pencadangan yang lambat:

  • Periksa kinerja I/O disk menggunakan Monitor Kinerja
  • Pantau kemajuan pencadangan dengan opsi STATS
  • ULASAN SQL Server log kesalahan untuk kemacetan
  • Pertimbangkan kompresi untuk mengurangi I/O
  • Gunakan cadangan bergaris di beberapa disk

Kueri untuk memantau kemajuan pencadangan:

SELECT 
    session_id,
    command,
    percent_complete,
    CAST(((DATEDIFF(s,start_time,GetDate()))/3600) as varchar) + ' hour(s), '
    + CAST((DATEDIFF(s,start_time,GetDate())%3600)/60 as varchar) + 'min, '
    + CAST((DATEDIFF(s,start_time,GetDate())%60) as varchar) + ' sec' as running_time,
    CAST((estimated_completion_time/3600000) as varchar) + ' hour(s), '
    + CAST((estimated_completion_time %3600000)/60000 as varchar) + 'min, '
    + CAST((estimated_completion_time %60000)/1000 as varchar) + ' sec' as est_time_to_go,
    dateadd(second,estimated_completion_time/1000, getdate()) as est_completion_time
FROM sys.dm_exec_requests 
WHERE command LIKE 'BACKUP%';
GO

12.3 Masalah Ruang dan Penyimpanan

Mencegah masalah penyimpanan:

  • Terapkan kebijakan retensi: Hapus cadangan lama secara otomatis
  • Gunakan kompresi: Kurangi ukuran file cadangan sebesar 50-70%
  • Arsipkan ke penyimpanan yang lebih murah: Pindahkan cadangan lama ke penyimpanan arsip
  • Pantau ruang disk: Siapkan peringatan untuk ruang disk rendah
  • Perkirakan ukuran cadangan: Hitung ukuran yang diharapkan sebelum melakukan pencadangan

Perkirakan ukuran cadangan:

-- Estimate full backup size
EXEC sp_spaceused;
GO

12.4 Masalah Izin dan Akses

Izin yang diperlukan untuk pencadangan:

  • DATABASE CADANGAN izin
  • db_backupoperator keanggotaan peran
  • sysadmin peran server (untuk semua operasi pencadangan)

Berikan izin pencadangan:

-- Grant backup permission to user
GRANT BACKUP DATABASE TO [BackupUser];
GRANT BACKUP LOG TO [BackupUser];
GO

-- Add user to backup operator role
ALTER ROLE db_backupoperator ADD MEMBER [BackupUser];
GO

12.5 File Cadangan yang Rusak

Deteksi dan tangani cadangan yang rusak:

Verifikasi integritas cadangan:

RESTORE VERIFYONLY 
FROM DISK = 'C:\Backups\AdventureWorks.bak'
WITH CHECKSUM;
GO

Aktifkan CHECKSUM untuk pencadangan mendatang:

BACKUP DATABASE AdventureWorks
TO DISK = 'C:\Backups\AdventureWorks.bak'
WITH CHECKSUM, INIT;
GO

Strategi pencegahan:

  • Selalu gunakan opsi CHECKSUM selama pencadangan
  • Verifikasi cadangan segera setelah dibuat
  • Uji pemulihan secara teratur
  • Simpan cadangan pada penyimpanan yang andal
  • Pertahankan beberapa salinan cadangan

12.6 Memulihkan Data dari File Cadangan yang Rusak

Jika file cadangan Anda rusak dan Anda masih ingin memulihkan data darinya, Anda dapat menggunakan alat pihak ketiga seperti DataNumen SQL Recovery, seperti di bawah ini:

  1. Start DataNumen SQL Recovery.
  2. Pilih file cadangan yang rusak sebagai file sumber dengan mengubah filter menjadi “Semua file (*.*)”:
    Pilih file cadangan yang rusak (*.bak) sebagai file sumber yang akan dipulihkan.
  3. Atur file .MDF keluaran jika diperlukan.
  4. Klik “Start Pemulihan” dan ikuti petunjuk untuk memulihkan basis data.
  5. Setelah proses pemulihan, database pemulihan baru akan muncul di SQL Server yang berisi semua data yang dipulihkan.

penggunaan DataNumen SQL Recovery untuk memulihkan data dari yang rusak SQL Server berkas cadangan (*.bak).

13. SQL Server Keamanan Cadangan

13.1 Mengamankan File Cadangan

Lindungi file cadangan dari akses tidak sah:

  • Izin sistem berkas: Batasi akses hanya untuk administrator yang berwenang
  • Keamanan jaringan: Gunakan protokol aman untuk pencadangan jaringan
  • Keamanan fisik: Simpan media cadangan di lokasi yang aman
  • Akses pencatatan: Akses file cadangan audit

13.2 Opsi Enkripsi

SQL Server mendukung enkripsi cadangan transparan:

Buat sertifikat untuk enkripsi:

-- Create master key
USE master;
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'StrongP@ssw0rd!';
GO

-- Create certificate
CREATE CERTIFICATE BackupCertificate
WITH SUBJECT = 'Database Backup Certificate',
EXPIRY_DATE = '2026-12-31';
GO

Cadangan terenkripsi:

BACKUP DATABASE AdventureWorks
TO DISK = 'C:\Backups\AdventureWorks_Encrypted.bak'
WITH COMPRESSION,
     ENCRYPTION (
         ALGORITHM = AES_256,
         SERVER CERTIFICATE = BackupCertificate
     );
GO

Penting: Cadangkan sertifikat dan kunci pribadi secara terpisah. Tanpa keduanya, cadangan terenkripsi tidak dapat dipulihkan.

-- Backup certificate
BACKUP CERTIFICATE BackupCertificate
TO FILE = 'C:\Certificates\BackupCertificate.cer'
WITH PRIVATE KEY (
    FILE = 'C:\Certificates\BackupCertificate.key',
    ENCRYPTION BY PASSWORD = 'C3rt!f!c@t3P@ss'
);
GO

13.3 Kontrol Akses dan Izin

Terapkan prinsip hak istimewa paling rendah:

  • Berikan izin pencadangan hanya ke akun yang diperlukan
  • Gunakan akun terpisah untuk operasi pencadangan dan pemulihan
  • Hindari menggunakan akun sa untuk pencadangan
  • Audit izin pencadangan secara berkala
  • Hapus izin ketika tidak lagi diperlukan

13.4 Pertimbangan Kepatuhan

Memenuhi persyaratan peraturan:

  • GDPR: Enkripsi cadangan yang berisi data pribadi, terapkan kebijakan penyimpanan
  • HIPA: Enkripsi PHI dalam cadangan, kontrol akses, pertahankan jejak audit
  • DSS PCI: Enkripsi cadangan data pemegang kartu, penyimpanan cadangan yang aman
  • SOX: Pertahankan integritas cadangan, kebijakan penyimpanan dokumen

14. Pemantauan dan Pemeliharaan Operasi Pencadangan

14.1 Melacak Riwayat Cadangan

SQL Server menyimpan riwayat cadangan dalam database msdb:

-- View recent backup history
SELECT 
    bks.database_name,
    bks.backup_start_date,
    bks.backup_finish_date,
    CASE bks.type
        WHEN 'D' THEN 'Full'
        WHEN 'I' THEN 'Differential'
        WHEN 'L' THEN 'Log'
        ELSE 'Other'
    END AS backup_type,
    bks.backup_size / 1024 / 1024 AS backup_size_mb,
    bkmf.physical_device_name
FROM msdb.dbo.backupset bks
INNER JOIN msdb.dbo.backupmediafamily bkmf ON bks.media_set_id = bkmf.media_set_id
WHERE bks.backup_start_date >= DATEADD(DAY, -7, GETDATE())
ORDER BY bks.backup_start_date DESC;
GO

Temukan basis data tanpa cadangan terkini:

SELECT 
    d.name AS database_name,
    MAX(bs.backup_finish_date) AS last_backup_date,
    DATEDIFF(DAY, MAX(bs.backup_finish_date), GETDATE()) AS days_since_last_backup
FROM sys.databases d
LEFT JOIN msdb.dbo.backupset bs ON d.name = bs.database_name
WHERE d.database_id > 4  -- Exclude system databases
GROUP BY d.name
HAVING MAX(bs.backup_finish_date) < DATEADD(DAY, -7, GETDATE())
    OR MAX(bs.backup_finish_date) IS NULL
ORDER BY last_backup_date;
GO

14.2 Menggunakan SQL Server Laporan

SQL Server Management Studio menyertakan laporan cadangan bawaan:

  1. Klik kanan pada database di Object Explorer
  2. Pilih Laporan -> Laporan Standar
  3. Pilih dari laporan yang tersedia:
    • Peristiwa Pencadangan dan Pemulihan
    • Semua Cadangan
    • Log Transaksi Status Pengiriman

14.3 Alat Pemantauan Pihak Ketiga

Solusi pemantauan komersial:

  • SQL Sentry: Pemantauan dan peringatan yang komprehensif
  • Pemantau SQL Redgate: Pemantauan dan diagnosis waktu nyataostics
  • Penganalisis Kinerja Basis Data SolarWinds: Pemantauan kinerja dan cadangan
  • Diagnosis SQL IderaostManajer ic: Validasi dan peringatan cadangan

14.4 Pemeriksaan Kesehatan Cadangan

Buat prosedur pemeriksaan kesehatan:

-- Backup health check procedure
CREATE PROCEDURE sp_BackupHealthCheck
AS
BEGIN
    -- Check for databases without recent full backup
    SELECT 
        'Missing Recent Full Backup' AS issue,
        d.name AS database_name,
        ISNULL(CAST(MAX(bs.backup_finish_date) AS VARCHAR), 'Never') AS last_backup
    FROM sys.databases d
    LEFT JOIN msdb.dbo.backupset bs 
        ON d.name = bs.database_name AND bs.type = 'D'
    WHERE d.database_id > 4
    GROUP BY d.name
    HAVING MAX(bs.backup_finish_date) < DATEADD(DAY, -7, GETDATE()) OR MAX(bs.backup_finish_date) IS NULL; -- Check for failed backup jobs SELECT 'Failed Backup Job' AS issue, j.name AS job_name, jh.run_date, jh.run_time, jh.message FROM msdb.dbo.sysjobs j INNER JOIN msdb.dbo.sysjobhistory jh ON j.job_id = jh.job_id WHERE jh.run_status = 0 -- Failed AND jh.step_id = 0 AND jh.run_date >= CONVERT(INT, CONVERT(VARCHAR, GETDATE()-7, 112))
        AND j.name LIKE '%backup%';
END
GO

15. SQL Server FAQ Pencadangan

15.1 Seberapa Sering Saya Harus Melakukan Backup SQL Server?

Frekuensi pencadangan bergantung pada Tujuan Titik Pemulihan (RPO) Anda:

  • Basis data produksi penting: Mingguan penuh, diferensial harian, log setiap 15-30 menit
  • Basis data produksi standar: Mingguan penuh, diferensial harian, log setiap 1-2 jam
  • Basis data pengembangan: Penuh harian atau mingguan
  • Basis data hanya-baca: Penuh setelah setiap perubahan data

15.2 Apa Perbedaan Antara Pencadangan Penuh dan Pencadangan Diferensial?

Cadangan penuh menyalin seluruh basis data, sementara cadangan diferensial hanya mencatat perubahan sejak cadangan penuh terakhir. Cadangan diferensial lebih kecil dan lebih cepat, tetapi memerlukan cadangan penuh dasar untuk pemulihan.

15.3 Bisakah Saya Mencadangkan SQL Server Saat Sedang Berjalan?

Ya, SQL Server Mendukung pencadangan daring. Pengguna dapat terus bekerja selama proses pencadangan. SQL Server menggunakan log transaksinya untuk menjaga konsistensi, memastikan cadangan tetap valid bahkan dengan modifikasi bersamaan.

15.4 Berapa Lama SQL Server Ambil Cadangan?

Durasi pencadangan bervariasi berdasarkan:

  • Ukuran basis data: Basis data yang lebih besar membutuhkan waktu lebih lama
  • Jenis cadangan: Pencadangan penuh membutuhkan waktu paling lama
  • Kompresi: Dapat meningkatkan waktu CPU tetapi mengurangi durasi keseluruhan
  • Kecepatan penyimpanan: SSD jauh lebih cepat dibandingkan HDD
  • Beban server: Aktivitas yang lebih tinggi memperlambat pencadangan

Kisaran umum: Basis data 10GB mungkin memerlukan waktu 5-15 menit untuk pencadangan penuh dengan kompresi pada perangkat keras modern.

15.5 Di Mana Saya Harus Menyimpannya SQL Server Cadangan?

Praktik terbaik: Ikuti aturan 3-2-1:

  • 3 salinan data Anda
  • 2 berbagai jenis penyimpanan (misalnya, disk dan tape/cloud)
  • 1 menyalin di luar situs

Lokasi yang direkomendasikan:

  • Disk lokal untuk pemulihan cepat
  • Penyimpanan jaringan untuk manajemen terpusat
  • Penyimpanan cloud (Azure, AWS) untuk pemulihan bencana

15.6 Apa itu Ekstensi File .bak?

Ekstensi .bak adalah ekstensi file default untuk SQL Server file cadangan. Ini adalah konvensi, bukan persyaratan – SQL Server Pencadangan dapat dilakukan dengan ekstensi berkas apa pun. Namun, penggunaan .bak membuat berkas cadangan mudah diidentifikasi dan merupakan praktik standar industri.

15.7 Cara Melakukan Backup SQL Server ke Network Drive?

Untuk mencadangkan ke drive jaringan:

  1. Memastikan SQL Server akun layanan memiliki izin menulis pada berbagi jaringan
  2. Gunakan jalur UNC dalam perintah pencadangan: \\ServerName\ShareName\BackupFile.bak
  3. Uji konektivitas sebelum menjadwalkan pencadangan otomatis
BACKUP DATABASE AdventureWorks
TO DISK = '\\BackupServer\SQLBackups\AdventureWorks.bak'
WITH COMPRESSION, INIT;
GO

15.8 Bisakah Saya Mengompres SQL Server Cadangan?

Ya, SQL Server mendukung kompresi cadangan asli (Edisi Perusahaan, atau Edisi Standar)tarting SQL Server 2016 SP1). Kompresi biasanya mengurangi ukuran cadangan sebesar 50-70% dan seringkali mengurangi waktu cadangan dengan mengurangi I/O, meskipun meningkatkan penggunaan CPU.

BACKUP DATABASE AdventureWorks
TO DISK = 'C:\Backups\AdventureWorks.bak'
WITH COMPRESSION;
GO

16. Kesimpulan

16.1 Poin Penting

Efektif SQL Server Strategi pencadangan melindungi data Anda dan memastikan kelangsungan bisnis. Ingat poin-poin penting ini:

  • Memahami jenis-jenis cadangan: Pilih jenis cadangan yang sesuai (penuh, diferensial, log transaksi) berdasarkan persyaratan pemulihan Anda
  • Pilih model pemulihan yang tepat: Pemulihan penuh untuk data penting, sederhana untuk pengembangan database
  • Terapkan jadwal pencadangan: Pencadangan penuh secara teratur dikombinasikan dengan pencadangan diferensial dan log meminimalkan kehilangan data
  • Prosedur pemulihan pengujian: Cadangan hanya berharga jika dapat dipulihkan dengan sukses
  • Otomatisasi dan pantau: penggunaan SQL Server Agen, rencana pemeliharaan, dan alat pemantauan
  • Cadangan aman: Enkripsi data sensitif dan kendalikan akses ke file cadangan
  • Simpan salinan di luar lokasi: Lindungi dari bencana di seluruh situs dengan penyimpanan cloud atau jarak jauh
  • Dokumentasikan semuanya: Pertahankan dokumentasi yang jelas tentang prosedur pencadangan dan pemulihan

16.2 Langkah Berikutnya dan Sumber Daya

Untuk meningkatkan Anda SQL Server implementasi cadangan:

  • Menilai strategi pencadangan Anda saat ini terhadap praktik terbaik
  • Hitung kebutuhan RTO dan RPO Anda
  • Prosedur pemulihan pengujian pada sistem non-produksi
  • Tinjau dan perbarui jadwal pencadangan secara berkala
  • Terapkan pemantauan dan peringatan otomatis
  • Melatih anggota tim tentang prosedur pemulihan

Sumber daya tambahan:

  • Microsoft SQL Server Dokumentasi: Panduan pencadangan dan pemulihan resmi
  • SQL Server forum komunitas cadangan: Berbagi pengalaman dan solusi
  • Sertifikasi profesional: Microsoft Certified: Azure Database Administrator Associate

16.3 Alat dan Solusi yang Direkomendasikan

Berdasarkan berbagai skenario:

Usaha kecil:

  • Asli SQL Server pencadangan dengan jadwal SQL Server Pekerjaan agen
  • SQLBackupAndFTP untuk integrasi cloud
  • Azure Backup untuk SQL Server

Perusahaan menengah:

  • SQL Server Rencana Pemeliharaan
  • Alat pihak ketiga seperti Redgate SQL Backup Pro
  • Veeam Backup untuk SQL Server

Perusahaan besar:

  • Quest LiteSpeed ​​untuk kompresi maksimum
  • Commvault atau Veritas NetBackup untuk manajemen cadangan perusahaan
  • Grup Ketersediaan Selalu Aktif untuk ketersediaan tinggi

SQL Server Pencadangan data sangat penting untuk administrasi basis data. Dengan perencanaan, implementasi, dan pengujian yang tepat, Anda dapat memastikan data Anda tetap terlindungi dan dapat dipulihkan saat dibutuhkan.tarmenerapkan praktik terbaik ini hari ini untuk mengamankan SQL Server database.


tentang Penulis

Yuan Sheng adalah administrator basis data senior (DBA) dengan lebih dari 10 tahun pengalaman di SQL Server lingkungan dan manajemen basis data perusahaan. Ia telah berhasil menyelesaikan ratusan skenario pemulihan basis data di berbagai organisasi jasa keuangan, layanan kesehatan, dan manufaktur.

Yuan mengkhususkan diri dalam SQL Server Pemulihan basis data, solusi ketersediaan tinggi, dan optimasi kinerja. Pengalaman langsungnya yang luas mencakup pengelolaan basis data multi-terabyte, penerapan Always On Availability Group, dan pengembangan strategi pencadangan dan pemulihan otomatis untuk sistem bisnis yang sangat penting.

Melalui keahlian teknis dan pendekatan praktisnya, Yuan berfokus pada pembuatan panduan komprehensif yang membantu administrator basis data dan profesional TI memecahkan masalah kompleks SQL Server tantangan secara efisien. Dia selalu mengikuti perkembangan terbaru SQL Server rilis dan teknologi basis data Microsoft yang terus berkembang, secara berkala menguji skenario pemulihan untuk memastikan rekomendasinya mencerminkan praktik terbaik di dunia nyata.

Memiliki pertanyaan tentang SQL Server pemulihan atau butuh panduan pemecahan masalah basis data tambahan? Yuan menyambut masukan dan saran untuk meningkatkan sumber daya teknis ini.

Bagikan sekarang: