Pencadangan terkelola SQL Server ke Microsoft Azure

Berlaku untuk:yes SQL Server (semua versi yang didukung)

SQL Server Managed Backup ke Microsoft Azure mengelola dan mengotomatiskan pencadangan SQL Server ke penyimpanan Microsoft Azure Blob. Anda dapat memilih untuk mengizinkan SQL Server menentukan jadwal pencadangan berdasarkan beban kerja transaksi database Anda. Atau Anda dapat menggunakan opsi tingkat lanjut untuk menentukan jadwal. Pengaturan retensi menentukan berapa lama cadangan disimpan di penyimpanan Azure Blob. Pencadangan Terkelola SQL Server ke Microsoft Azure mendukung pemulihan titik waktu untuk periode waktu retensi yang ditentukan.

Dimulai dengan SQL Server 2016 (13.x), prosedur dan perilaku mendasar SQL Server Managed Backup ke Microsoft Azure telah berubah. Untuk informasi selengkapnya, lihat Memigrasikan Pengaturan pencadangan terkelola SQL Server 2014 ke SQL Server 2016.

Tip

SQL Server Managed Backup ke Microsoft Azure direkomendasikan untuk instans SQL Server yang berjalan di komputer virtual Microsoft Azure.

Keuntungan

Saat ini mengotomatiskan pencadangan untuk beberapa database memerlukan pengembangan strategi pencadangan, menulis kode kustom, dan menjadwalkan pencadangan. Dengan menggunakan SQL Server Managed Backup ke Microsoft Azure, Anda dapat membuat rencana pencadangan dengan hanya menentukan periode retensi dan lokasi penyimpanan. Meskipun pengaturan tingkat lanjut tersedia, pengaturan tersebut tidak diperlukan. Pencadangan Terkelola SQL Server ke Microsoft Azure menjadwalkan, melakukan, dan memelihara cadangan.

SQL Server Managed Backup ke Microsoft Azure dapat dikonfigurasi di tingkat database atau di tingkat instans SQL Server. Saat mengonfigurasi di tingkat instans, database baru apa pun juga dicadangkan secara otomatis. Pengaturan di tingkat database dapat digunakan untuk mengambil alih default tingkat instans pada kasus individual.

Anda juga dapat mengenkripsi cadangan untuk keamanan tambahan, dan Anda dapat menyiapkan jadwal kustom untuk mengontrol kapan cadangan diambil. Untuk detail selengkapnya tentang manfaat menggunakan penyimpanan Microsoft Azure Blob untuk pencadangan SQL Server, lihat Pencadangan dan Pemulihan SQL Server dengan Microsoft Azure Blob Storage Service

Prasyarat

Microsoft Azure Storage digunakan oleh SQL Server Managed Backup ke Microsoft Azure untuk menyimpan file cadangan. Prasyarat berikut diperlukan:

Prasyarat Deskripsi
Akun Microsoft Azure Anda dapat mulai menggunakan Azure dengan uji coba gratis sebelum menjelajahi opsi pembelian.
Akun Azure Storage Cadangan disimpan di penyimpanan blob Azure yang terkait dengan akun penyimpanan Azure. Untuk instruksi langkah demi langkah untuk membuat akun penyimpanan, lihat Tentang Akun Azure Storage.
Kontainer Blob Blob diatur dalam kontainer. Anda menentukan kontainer target untuk file cadangan. Anda dapat membuat kontainer di Portal Manajemen Azure, atau Anda menggunakan perintah New-AzureStorageContainerAzure PowerShell .
Tanda Tangan Akses Bersama (SAS) Akses ke kontainer target dikendalikan oleh Tanda Tangan Akses Bersama (SAS). Untuk gambaran umum SAS, lihat Tanda Tangan Akses Bersama, Bagian 1: Memahami Model SAS. Anda dapat membuat token SAS dalam kode atau dengan perintah PowerShell New-AzureStorageContainerSASToken . Untuk skrip PowerShell yang menyederhanakan proses ini, lihat Menyederhanakan pembuatan Kredensial SQL dengan token Tanda Tangan Akses Bersama (SAS) di Azure Storage dengan Powershell. Token SAS dapat disimpan dalam Kredensial SQL untuk digunakan dengan SQL Server Managed Backup ke Microsoft Azure.
SQL Server Agent SQL Server Agent harus berjalan agar SQL Server Managed Backup ke Microsoft Azure berfungsi. Pertimbangkan untuk mengatur opsi startup ke otomatis.

Komponen

Transact-SQL adalah antarmuka utama untuk berinteraksi dengan SQL Server Managed Backup ke Microsoft Azure. Prosedur tersimpan sistem digunakan untuk mengaktifkan, mengonfigurasi, dan memantau SQL Server Managed Backup ke Microsoft Azure. Fungsi sistem digunakan untuk mengambil pengaturan konfigurasi, nilai parameter, dan informasi file cadangan yang ada. Peristiwa yang diperluas digunakan untuk memunculkan kesalahan dan peringatan. Mekanisme pemberitahuan diaktifkan melalui pekerjaan SQL Agent dan Manajemen Berbasis Kebijakan SQL Server. Berikut ini adalah daftar objek dan deskripsi fungsionalitasnya sehubungan dengan SQL Server Managed Backup ke Microsoft Azure.

Cmdlet PowerShell juga tersedia untuk mengonfigurasi SQL Server Managed Backup ke Microsoft Azure. SQL Server Management Studio mendukung pemulihan cadangan yang dibuat oleh SQL Server Managed Backup ke Microsoft Azure dengan menggunakan tugas Pulihkan Database

Objek Sistem Deskripsi
MSDB Menyimpan metadata, riwayat pencadangan untuk semua cadangan yang dibuat oleh SQL Server Managed Backup ke Microsoft Azure.
managed_backup.sp_backup_config_basic (Transact-SQL) Mengaktifkan SQL Server Managed Backup ke Microsoft Azure.
managed_backup.sp_backup_config_advanced (Transact-SQL) Mengonfigurasi pengaturan tingkat lanjut untuk SQL Server Managed Backup ke Microsoft Azure, seperti enkripsi.
managed_backup.sp_backup_config_schedule (Transact-SQL) Membuat jadwal kustom untuk SQL Server Managed Backup ke Microsoft Azure.
managed_backup.sp_ backup_master_switch (Transact-SQL) Menjeda dan melanjutkan SQL Server Managed Backup ke Microsoft Azure.
managed_backup.sp_set_parameter (Transact-SQL) Mengaktifkan dan mengonfigurasi pemantauan untuk SQL Server Managed Backup ke Microsoft Azure. Contoh: mengaktifkan peristiwa yang diperluas, pengaturan email untuk pemberitahuan.
managed_backup.sp_backup_on_demand (Transact-SQL) Melakukan pencadangan ad-hoc untuk database yang diaktifkan untuk menggunakan SQL Server Managed Backup ke Microsoft Azure tanpa memutus rantai log.
managed_backup.fn_backup_db_config (Transact-SQL) Mengembalikan SQL Server Managed Backup saat ini ke status Microsoft Azure dan nilai konfigurasi untuk database, atau untuk semua database pada instans.
managed_backup.fn_is_master_switch_on (Transact-SQL) Mengembalikan status sakelar master.
managed_backup.sp_get_backup_diagnostics (Transact-SQL) Mengembalikan peristiwa yang dicatat oleh Kejadian yang Diperluas.
managed_backup.fn_get_parameter (Transact-SQL) Mengembalikan nilai saat ini untuk pengaturan sistem cadangan seperti pemantauan dan pengaturan email untuk pemberitahuan.
managed_backup.fn_available_backups (Transact-SQL) Mengambil cadangan yang tersedia untuk database tertentu atau untuk semua database dalam instans.
managed_backup.fn_get_current_xevent_settings (Transact-SQL) Mengembalikan pengaturan kejadian yang diperluas saat ini.
managed_backup.fn_get_health_status (Transact-SQL) Mengembalikan jumlah agregat kesalahan yang dicatat oleh Kejadian yang Diperluas untuk periode tertentu.

Strategi Pencadangan

Penjadwalan Cadangan

Anda dapat menentukan jadwal pencadangan kustom menggunakan prosedur tersimpan sistem managed_backup.sp_backup_config_schedule (Transact-SQL). Jika Anda tidak menentukan jadwal kustom, jenis cadangan yang dijadwalkan dan frekuensi pencadangan ditentukan berdasarkan beban kerja database. Pengaturan periode retensi digunakan untuk menentukan lamanya waktu file cadangan harus dipertahankan dalam penyimpanan dan kemampuan untuk memulihkan database ke titik waktu dalam periode retensi.

Konvensi Penamaan File Cadangan

SQL Server Managed Backup ke Microsoft Azure menggunakan kontainer yang Anda tentukan, sehingga Anda memiliki kontrol atas nama kontainer. Untuk file cadangan, database non-ketersediaan diberi nama menggunakan konvensi berikut: Nama dibuat menggunakan 40 karakter pertama dari nama database, GUID database tanpa '-', dan tanda waktu. Karakter garis bawah disisipkan di antara segmen sebagai pemisah. Ekstensi file .bak digunakan untuk pencadangan penuh dan .log untuk pencadangan log. Untuk database Grup Ketersediaan, selain konvensi penamaan file yang dijelaskan di atas, GUID database Grup Ketersediaan ditambahkan setelah 40 karakter nama database. Nilai GUID database Grup Ketersediaan adalah nilai untuk group_database_id dalam sys.databases.

Pencadangan Database Penuh

SQL Server Managed Backup ke agen Microsoft Azure menjadwalkan pencadangan database lengkap jika salah satu hal berikut ini benar.

  • Database adalah SQL Server Managed Backup ke Microsoft Azure diaktifkan untuk pertama kalinya, atau ketika SQL Server Managed Backup ke Microsoft Azure diaktifkan dengan pengaturan default di tingkat instans.

  • Pertumbuhan log sejak pencadangan database penuh terakhir sama dengan atau lebih besar dari 1 GB.

  • Interval waktu maksimum satu minggu telah berlalu sejak pencadangan database penuh terakhir.

  • Rantai log rusak. SQL Server Managed Backup ke Microsoft Azure secara berkala memeriksa apakah rantai log utuh dengan membandingkan LSN pertama dan terakhir dari file cadangan. Jika ada pemutusan rantai log karena alasan apa pun, SQL Server Managed Backup ke Microsoft Azure menjadwalkan pencadangan database lengkap. Alasan paling umum untuk pemutusan rantai log mungkin adalah perintah cadangan yang dikeluarkan menggunakan Transact-SQL atau melalui tugas Pencadangan di SQL Server Management Studio. Skenario umum lainnya termasuk penghapusan file log cadangan yang tidak disengaja, atau penimpaan cadangan yang tidak disengaja.

Pencadangan Log Transaksi

SQL Server Managed Backup ke Microsoft Azure menjadwalkan pencadangan log jika salah satu hal berikut ini benar:

  • Tidak ada riwayat pencadangan log yang dapat ditemukan. Ini biasanya berlaku ketika SQL Server Managed Backup ke Microsoft Azure diaktifkan untuk pertama kalinya.

  • Ruang log transaksi yang digunakan adalah 5 MB atau lebih besar.

  • Interval waktu maksimum 2 jam sejak pencadangan log terakhir tercapai.

  • Setiap kali pencadangan log transaksi tertinggal dari cadangan database lengkap. Tujuannya adalah untuk menjaga rantai log di depan pencadangan penuh.

Pengaturan Periode Retensi

Saat mengaktifkan cadangan, Anda harus mengatur periode retensi dalam hari: Minimumnya adalah 1 hari, dan maksimum adalah 30 hari.

SQL Server Managed Backup ke Microsoft Azure berdasarkan pengaturan periode retensi, menilai kemampuan untuk memulihkan ke titik waktu dalam waktu yang ditentukan, untuk menentukan file cadangan apa yang akan disimpan dan mengidentifikasi file cadangan yang akan dihapus. Backup_finish_date cadangan digunakan untuk menentukan dan mencocokkan waktu yang ditentukan oleh pengaturan periode retensi.

Pertimbangan Penting

Untuk database, jika ada pekerjaan pencadangan database lengkap yang berjalan, maka SQL Server Managed Backup ke Microsoft Azure menunggu pekerjaan saat ini selesai sebelum melakukan pencadangan database lengkap lain untuk database yang sama. Demikian pula, hanya satu pencadangan log transaksi yang dapat berjalan pada waktu tertentu. Namun, pencadangan database lengkap dan pencadangan log transaksi dapat berjalan bersamaan. Kegagalan dicatat sebagai Kejadian yang Diperluas.

Jika lebih dari 10 pencadangan database lengkap bersamaan dijadwalkan, peringatan dikeluarkan melalui saluran debug Extended Events. SQL Server Managed Backup ke Microsoft Azure kemudian mempertahankan antrean prioritas untuk database yang tersisa yang memerlukan cadangan hingga semua pencadangan dijadwalkan dan selesai.

Catatan

Pencadangan terkelola SQL Server tidak didukung dengan server proksi.

Dukungan

Batasan dan pertimbangan dukungan berikut ini khusus untuk SQL Server 2019 (15.x):

  • Pencadangan database sistem master, model, dan msdb didukung. Pencadangan tempdb tidak didukung.

  • Untuk SQL Server 2019 (15.x), semua model pemulihan didukung (Penuh, Dicatat massal, dan Sederhana).

  • Pencadangan Terkelola SQL Server ke agen Microsoft Azure hanya mendukung pencadangan penuh dan log database. Otomatisasi pencadangan file tidak didukung.

  • Layanan Microsoft Azure Blob Storage adalah satu-satunya opsi penyimpanan cadangan yang didukung. Pencadangan ke disk atau pita tidak didukung.

  • SQL Server Managed Backup ke Microsoft Azure menggunakan fitur Backup to Block Blob. Ukuran maksimum blob blok adalah 200 GB. Tetapi dengan memanfaatkan striping, ukuran maksimum cadangan individu bisa hingga 12 TB. Jika persyaratan pencadangan Anda melebihi ini, pertimbangkan untuk menggunakan kompresi, dan uji ukuran file cadangan sebelum menyiapkan SQL Server Managed Backup ke Microsoft Azure. Anda dapat menguji dengan mencadangkan ke disk lokal atau mencadangkan secara manual ke penyimpanan Microsoft Azure menggunakan pernyataan BACKUP TO URL Transact-SQL. Untuk informasi selengkapnya, lihat Pencadangan SQL Server ke URL.

  • SQL Server Managed Backup ke Microsoft Azure mungkin memiliki beberapa batasan ketika dikonfigurasi dengan teknologi lain yang mendukung pencadangan, ketersediaan tinggi, atau pemulihan bencana.

Lihat juga