Pencadangan terkelola SQL Server ke Microsoft Azure

Berlaku untuk:SQL Server - Hanya Windows

Pencadangan terkelola SQL Server ke Microsoft Azure mengelola dan mengotomatiskan cadangan SQL Server ke penyimpanan Microsoft Azure Blob. Anda dapat memilih untuk mengizinkan SQL Server menentukan jadwal pencadangan berdasarkan beban kerja transaksi database Anda, atau 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.

Catatan

Di SQL Server 2016 (13.x), prosedur dan perilaku mendasar pencadangan terkelola SQL Server ke Microsoft Azure telah berubah. Untuk informasi selengkapnya, lihat Memigrasikan pengaturan pencadangan terkelola.

Pencadangan terkelola SQL Server 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 cadangan terkelola SQL Server 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.

Pencadangan terkelola SQL Server ke Microsoft Azure dapat dikonfigurasi di tingkat database atau di tingkat instans SQL Server. Saat dikonfigurasi 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 informasi selengkapnya tentang manfaat menggunakan penyimpanan Microsoft Azure Blob untuk cadangan SQL Server, lihat Pencadangan dan pemulihan SQL Server dengan Azure Blob Storage.

Prasyarat

Microsoft Azure Storage digunakan oleh cadangan terkelola SQL Server 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 Azure Blob Storage yang terkait dengan akun penyimpanan Azure. Untuk instruksi langkah demi langkah untuk membuat akun penyimpanan, lihat Membuat akun penyimpanan.
Kontainer blob Blob diatur dalam kontainer. Anda menentukan kontainer target untuk file cadangan. Anda dapat membuat kontainer di Portal Manajemen Azure, atau Anda menggunakan New-AzureStorageContainerperintah Azure PowerShell.
Tanda tangan akses bersama (SAS) Akses ke kontainer target dikontrol oleh Tanda Tangan Akses Bersama (SAS). Untuk gambaran umum SAS, lihat Memberikan akses terbatas ke sumber daya Azure Storage menggunakan tanda tangan akses bersama (SAS). Anda dapat membuat token SAS dalam kode atau dengan New-AzureStorageContainerSASToken perintah PowerShell. 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 cadangan terkelola SQL Server ke Microsoft Azure.
SQL Server Agent SQL Server Agent harus berjalan agar pencadangan terkelola SQL Server ke Microsoft Azure berfungsi. Pertimbangkan untuk mengatur opsi startup ke otomatis.

Komponen

Transact-SQL adalah antarmuka utama untuk berinteraksi dengan cadangan terkelola SQL Server ke Microsoft Azure. Prosedur tersimpan sistem digunakan untuk mengaktifkan, mengonfigurasi, dan memantau cadangan terkelola SQL Server 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. Daftar objek berikut menyertakan deskripsi fungsionalitasnya sehubungan dengan pencadangan terkelola SQL Server ke Microsoft Azure.

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

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

Strategi pencadangan

Bagian berikut menjelaskan strategi pencadangan untuk pencadangan terkelola SQL Server ke Microsoft Azure.

Penjadwalan pencadangan

Anda dapat menentukan jadwal pencadangan kustom menggunakan prosedur tersimpan sistem managed_backup.sp_backup_config_schedule. 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

Pencadangan terkelola SQL Server 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. .bak Ekstensi file digunakan untuk pencadangan penuh dan .log untuk pencadangan log. Untuk database dalam grup ketersediaan (AG), selain konvensi penamaan file yang dijelaskan sebelumnya, GUID database AG ditambahkan setelah 40 karakter nama database. Nilai GUID database AG adalah nilai untuk group_database_id di sys.databases.

Pencadangan database lengkap

Pencadangan terkelola SQL Server ke agen Microsoft Azure menjadwalkan pencadangan database lengkap jika salah satu kondisi berikut ini benar.

  • Database adalah cadangan terkelola SQL Server ke Microsoft Azure diaktifkan untuk pertama kalinya, atau ketika cadangan terkelola SQL Server 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. Pencadangan terkelola SQL Server ke Microsoft Azure secara berkala memeriksa untuk melihat apakah rantai log utuh dengan membandingkan LSN pertama dan terakhir dari file cadangan. Jika ada pemutusan dalam rantai log karena alasan apa pun, pencadangan terkelola SQL Server 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.

Cadangan log

Pencadangan terkelola SQL Server ke Microsoft Azure menjadwalkan pencadangan log jika salah satu kondisi berikut ini benar:

  • Tidak ada riwayat pencadangan log yang dapat ditemukan. Ini biasanya berlaku ketika pencadangan terkelola SQL Server 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 pencadangan, Anda harus mengatur periode retensi dalam hari: Minimumnya adalah 1 hari, dan maksimum adalah 90 hari.

Pencadangan terkelola SQL Server 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

Untuk database, jika ada pekerjaan pencadangan database lengkap yang berjalan, maka pencadangan terkelola SQL Server 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 Acara yang Diperluas. Pencadangan terkelola SQL Server ke Microsoft Azure kemudian mempertahankan antrean prioritas untuk database yang tersisa yang memerlukan cadangan hingga semua cadangan dijadwalkan dan selesai.

Catatan

Pencadangan terkelola SQL Server tidak didukung dengan server proksi.

Dukungan

Batasan dan pertimbangan dukungan berikut khusus untuk SQL Server:

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

  • 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.

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

  • Pencadangan terkelola SQL Server 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 batas ini, pertimbangkan untuk menggunakan kompresi, dan uji ukuran file cadangan sebelum menyiapkan cadangan terkelola SQL Server ke Microsoft Azure. Anda dapat menguji dengan mencadangkan ke disk lokal atau mencadangkan secara manual ke penyimpanan Microsoft Azure menggunakan BACKUP TO URL pernyataan Transact-SQL. Untuk informasi selengkapnya, lihat Pencadangan SQL Server ke URL untuk Microsoft Azure Blob Storage.

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

  • Cadangan database dalam grup ketersediaan adalah cadangan khusus salinan.