Bagikan melalui


Automated Backup untuk komputer virtual SQL Server 2014 (Resource Manager)

Berlaku untuk:SQL Server di Azure VM

Automated Backup secara otomatis mengonfigurasi Managed Microsoft Azure Backup ke Microsoft Azure untuk semua database yang sudah ada dan baru di komputer virtual Azure yang menjalankan SQL Server 2014 Standard atau Enterprise. Ini memungkinkan Anda mengonfigurasi cadangan database reguler yang menggunakan penyimpanan Azure Blob yang tahan lama. Automated Backup tergantung pada infrastruktur sebagai layanan (IaaS) SQL Server Agent Extension.

Catatan

Azure memiliki dua model penyebaran yang berbeda untuk membuat dan bekerja dengan sumber daya: Azure Resource Manager dan klasik. Artikel ini mencakup penggunaan model penyebaran Resource Manager. Kami merekomendasikan model penyebaran Resource Manager untuk penyebaran baru, bukan model penyebaran klasik.

Prasyarat

Untuk menggunakan Automated Backup, pertimbangkan prasyarat berikut:

Sistem operasi:

  • Windows Server 2012 dan yang lebih canggih

Versi/edisi SQL Server:

  • SQL Server 2014 Standard
  • SQL Server 2014 Enterprise

Catatan

Untuk SQL 2016 dan yang lebih canggih, lihat Automated Backup untuk SQL Server 2016.

Konfigurasi database:

  • Database pengguna target harus menggunakan model pemulihan penuh. Database sistem tidak harus menggunakan model pemulihan penuh. Namun, jika Anda mengharuskan pencadangan log diambil untuk model atau msdb, Anda harus menggunakan model pemulihan penuh. Untuk informasi selengkapnya tentang dampak model pemulihan penuh pada cadangan, lihat Microsoft Azure Backup di bawah model pemulihan penuh.
  • Komputer virtual SQL Server telah didaftarkan dengan ekstensi Agen IaaS SQL dan fitur pencadangan otomatis diaktifkan. Karena pencadangan otomatis bergantung pada ekstensi, pencadangan otomatis hanya didukung pada database target dari instans default, atau satu instans bernama. Jika tidak ada instans default, dan beberapa instans bernama, ekstensi Agen IaaS SQL gagal dan pencadangan otomatis tidak akan berfungsi.

Pengaturan

Tabel berikut ini menjelaskan opsi yang dapat dikonfigurasi untuk Automated Backup. Langkah-langkah konfigurasi aktual bervariasi tergantung pada apakah Anda menggunakan portal Microsoft Azure atau perintah Azure Windows PowerShell. Perhatikan bahwa Pencadangan otomatis menggunakan kompresi cadangan secara default dan Anda tidak dapat menonaktifkannya.

Pengaturan Rentang (Default) Deskripsi
Automated Backup Aktifkan/Nonaktifkan (Dinonaktifkan) Mengaktifkan atau menonaktifkan Automated Backup untuk komputer virtual Azure yang menjalankan SQL Server 2014 Standard atau Enterprise.
Periode Retensi 1-90 hari (90 hari) Jumlah hari untuk menyimpan cadangan.
Akun Azure Storage Akun penyimpanan Azure Akun penyimpanan Azure yang digunakan untuk menyimpan file Automated Backup dalam penyimpanan blob. Kontainer dibuat pada lokasi ini untuk menyimpan semua file cadangan. Konvensi penamaan file cadangan mencakup tanggal, waktu, dan nama mesin.
Enkripsi Aktifkan/Nonaktifkan (Dinonaktifkan) Mengaktifkan atau menonaktifkan enkripsi cadangan. Ketika enkripsi cadangan diaktifkan, sertifikat yang digunakan untuk memulihkan cadangan terletak di akun penyimpanan yang ditentukan dalam kontainer yang sama automaticbackup menggunakan konvensi penamaan yang sama. Jika kata sandi berubah, sertifikat baru dibuat dengan kata sandi tersebut, tetapi sertifikat lama tetap memulihkan cadangan sebelumnya.
Password Teks kata sandi Kata sandi untuk kunci enkripsi. Ini hanya diperlukan jika enkripsi diaktifkan. Untuk memulihkan cadangan terenkripsi, Anda harus memiliki kata sandi yang benar dan sertifikat terkait yang digunakan pada saat cadangan diambil.

Mengonfigurasi komputer virtual baru

Menggunakan portal Microsoft Azure untuk mengonfigurasi Automated Backup saat Anda membuat komputer virtual SQL Server 2014 baru dalam model penyebaran Resource Manager.

Pada tab pengaturan SQL Server, gulir ke bawah ke Automated backup dan pilih Aktifkan. Cuplikan layar portal Microsoft Azure berikut ini memperlihatkan pengaturan SQL Automated Backup.

Cuplikan layar konfigurasi SQL Automated Backup di portal Azure.

Mengonfigurasi komputer virtual yang ada

Untuk komputer virtual SQL Server yang ada, Anda dapat mengaktifkan dan menonaktifkan automated backup, mengubah periode retensi, menentukan akun penyimpanan, dan mengaktifkan enkripsi dari portal Microsoft Azure.

Navigasi ke sumber daya komputer virtual SQL untuk komputer virtual SQL Server 2014 Anda lalu pilih Cadangan.

Cuplikan layar SQL Automated Backup untuk VM yang ada.

Setelah selesai, pilih tombol Terapkan di bagian bawah halaman Backup untuk menyimpan perubahan Anda.

Jika Anda mengaktifkan Automated Backup untuk pertama kalinya, Azure mengonfigurasi SQL Server IaaS Agent di latar belakang. Selama waktu ini, portal Microsoft Azure mungkin tidak memperlihatkan bahwa Automated Backup dikonfigurasi. Tunggu beberapa menit agar agen diinstal dan dikonfigurasi. Setelah itu, portal Microsoft Azure akan mencerminkan pengaturan baru.

Catatan

Anda juga dapat mengonfigurasi Automated Backup menggunakan templat. Untuk informasi selengkapnya, lihat Templat mulai cepat Azure untuk Automated Backup.

Mengonfigurasi dengan PowerShell

Anda dapat menggunakan PowerShell untuk mengonfigurasi Automated Backup. Sebelum memulai, Anda harus:

Catatan

Artikel ini menggunakan modul Azure Az PowerShell, yang merupakan modul PowerShell yang direkomendasikan untuk berinteraksi dengan Azure. Untuk mulai menggunakan modul Az PowerShell, lihat Menginstal Azure PowerShell. Untuk mempelajari cara bermigrasi ke modul Az PowerShell, lihat Memigrasikan Azure PowerShell dari AzureRM ke Az.

Periksa pengaturan saat ini

Jika Anda mengaktifkan automated backup selama penyediaan, Anda dapat menggunakan PowerShell untuk memeriksa konfigurasi Anda saat ini. Jalankan perintah Get-AzVMSqlServerExtension dan periksa properti AutoBackupSettings:

$vmname = "yourvmname"
$resourcegroupname = "yourresourcegroupname"

(Get-AzVMSqlServerExtension -VMName $vmname -ResourceGroupName $resourcegroupname).AutoBackupSettings

Anda harus mendapatkan output yang mirip dengan yang berikut:

Enable                      : False
EnableEncryption            : False
RetentionPeriod             : -1
StorageUrl                  : NOTSET
StorageAccessKey            : 
Password                    : 
BackupSystemDbs             : False
BackupScheduleType          : 
FullBackupFrequency         : 
FullBackupStartTime         : 
FullBackupWindowHours       : 
LogBackupFrequency          : 

Jika output Anda memperlihatkan bahwa Aktifkan diatur ke Salah, maka Anda harus mengaktifkan automated backup. Kabar baiknya adalah Anda mengaktifkan dan mengonfigurasi Automated Backup dengan cara yang sama. Lihat bagian berikutnya untuk informasi ini.

Catatan

Jika Anda memeriksa pengaturan segera setelah melakukan perubahan, ada kemungkinan Anda akan mendapatkan kembali nilai konfigurasi lama. Tunggu beberapa menit dan periksa kembali pengaturan untuk memastikan bahwa perubahan Anda diterapkan.

Mengonfigurasi Automated Backup

Anda dapat menggunakan PowerShell untuk mengaktifkan Automated Backup serta mengubah konfigurasi dan perilakunya kapan saja.

Pertama, pilih atau buat akun penyimpanan untuk file cadangan. Skrip berikut memilih akun penyimpanan atau membuatnya jika tidak ada.

$vmname = "yourvmname"
$resourcegroupname = "yourresourcegroupname"
$storage_accountname = "yourstorageaccount"
$storage_url = "https://yourstorageaccount.blob.core.windows.net/"

$storage = Get-AzStorageAccount -ResourceGroupName $resourcegroupname `
    -Name $storage_accountname -ErrorAction SilentlyContinue
If (-Not $storage)
    { $storage = New-AzStorageAccount -ResourceGroupName $resourcegroupname `
    -Name $storage_accountname -SkuName Standard_GRS -Location $region }

Catatan

Automated Backup tidak mendukung penyimpanan cadangan dalam penyimpanan premium, tetapi dapat mengambil cadangan dari disk komputer virtual yang menggunakan Penyimpanan Premium.

Jika Anda ingin menggunakan kontainer kustom di akun penyimpanan untuk cadangan, gunakan skrip berikut untuk memeriksa kontainer atau membuatnya jika tidak ada.

$storage_container = "backupcontainer"

New-AzStorageContainer -Name $storage_container -Context $storage.Context

if (!(Get-AzStorageAccount -StorageAccountName $storage_accountname -ResourceGroupName $resourcegroupname | Get-AzStorageContainer | Where-Object { $_.Name -eq $storage_container })){ `
	New-AzStorageContainer -Name $storage_container -Context $storage.Context `
} `
 else `
{ `
	Write-Warning "Container $storage_container already exists." `
}

Selanjutnya, gunakan skrip berikut untuk mendapatkan kunci Akses untuk akun penyimpanan:

$accesskey = (Get-AzStorageAccountKey -ResourceGroupName $resourcegroupname  -Name $storage_accountname)[0].value

Kemudian gunakan perintah Update-AzSqlVM untuk mengaktifkan dan mengonfigurasi pengaturan Automated Backup untuk menyimpan cadangan di akun penyimpanan Azure. Dalam contoh ini, cadangan diatur untuk disimpan selama 10 hari.

Update-AzSqlVM -ResourceGroupName $resourcegroupname -Name $vmname -AutoBackupSettingEnable `
-AutoBackupSettingStorageAccessKey $accesskey `
-AutoBackupSettingStorageAccountUrl $storage_url `
-AutoBackupSettingRetentionPeriod 10 `
-AutoBackupSettingStorageContainerName $storage_container 

Ini bisa memakan waktu beberapa menit untuk menginstal dan mengonfigurasi SQL Server IaaS Agent.

Catatan

Ada pengaturan lain untuk Update-AzSqlVM* yang hanya berlaku untuk SQL Server 2016 dan Automated Backup. SQL Server 2014 tidak mendukung pengaturan berikut: -AutoBackupSettingBackupSystemDb, -AutoBackupSettingBackupScheduleType, -AutoBackupSettingFullBackupFrequency, -AutoBackupSettingFullBackupStartTime, -AutoBackupSettingFullBackupWindowHour, dan -AutoBackupSettingLogBackupFrequency. Jika Anda mencoba mengonfigurasi pengaturan tersebut pada komputer virtual SQL Server 2014, tidak ada kesalahan, tetapi pengaturan tidak diterapkan. Jika Anda ingin menggunakan pengaturan ini pada komputer virtual SQL Server 2016, lihat Pencadangan Otomatis untuk komputer virtual Azure SQL Server 2016.

Untuk mengaktifkan enkripsi, ubah skrip sebelumnya untuk meneruskan parameter -AutoBackupSettingEnableEncryption bersama dengan kata sandi (string aman) untuk parameter -AutoBackupSettingPassword . Skrip berikut ini mengaktifkan pengaturan Automated Backup dalam contoh sebelumnya dan menambahkan enkripsi.

$password = "r@ndom Va1ue"
$encryptionpassword = $password | ConvertTo-SecureString -AsPlainText -Force  

Update-AzSqlVM -ResourceGroupName $resourcegroupname -Name $vmname -AutoBackupSettingEnable `
-AutoBackupSettingStorageAccessKey $accesskey `
-AutoBackupSettingStorageAccountUrl $storage_url `
-AutoBackupSettingRetentionPeriod 10 `
-AutoBackupSettingEnableEncryption `
-AutoBackupSettingPassword $encryptionpassword `
-AutoBackupSettingStorageContainerName $storage_container 

Untuk mengonfirmasi bahwa pengaturan Anda diterapkan, verifikasi konfigurasi Automated Backup.

Menonaktifkan Automated Backup

Untuk menonaktifkan Automated Backup, jalankan skrip yang sama dengan parameter -AutoBackupSettingEnable yang diatur ke $false dalam perintah Update-AzSqlVM . Dengan mengatur nilai ke $false fitur dinonaktifkan. Seperti halnya pemasangan, dibutuhkan beberapa menit untuk menonaktifkan Automated Backup.

Update-AzSqlVM -ResourceGroupName $resourcegroupname -Name $vmname -AutoBackupSettingEnable:$false

Contoh skrip

Skrip berikut ini menyediakan set variabel yang dapat Anda kustomisasi untuk mengaktifkan dan mengonfigurasi Automated Backup untuk komputer virtual Anda. Dalam kasus Anda, Anda mungkin perlu menyesuaikan skrip berdasarkan kebutuhan Anda. Misalnya, Anda harus membuat perubahan jika ingin menonaktifkan cadangan database sistem atau mengaktifkan enkripsi.

$vmname = "yourvmname"
$resourcegroupname = "yourresourcegroupname"
$region = "Azure region name such as EASTUS2"
$storage_accountname = "yourstorageaccount"
$storage_url = "https://yourstorageaccount.blob.core.windows.net/"
$retentionperiod = 10

# ResourceGroupName is the resource group which is hosting the VM where you are deploying the SQL Server IaaS Extension

Set-AzVMSqlServerExtension -VMName $vmname `
    -ResourceGroupName $resourcegroupname -Name "SQLIaasExtension" `
    -Version "2.0" -Location $region

# Creates/use a storage account to store the backups

$storage = Get-AzStorageAccount -ResourceGroupName $resourcegroupname `
    -Name $storage_accountname -ErrorAction SilentlyContinue
If (-Not $storage)
    { $storage = New-AzStorageAccount -ResourceGroupName $resourcegroupname `
    -Name $storage_accountname -SkuName Standard_GRS -Location $region }

# Creates/uses a custom storage account container

$storage_container = "yourbackupcontainer"

if (!(Get-AzStorageAccount -StorageAccountName $storage_accountname -ResourceGroupName $resourcegroupname | Get-AzStorageContainer | Where-Object { $_.Name -eq $storage_container })){ `
	New-AzStorageContainer -Name $storage_container -Context $storage.Context `
} `
 else `
{ `
	Write-Warning "Container $storage_container already exists." `
}

# Get storage account access key
$accesskey = (Get-AzStorageAccountKey -ResourceGroupName $resourcegroupname  -Name $storage_accountname)[0].value

# Configure Automated Backup settings

Update-AzSqlVM -ResourceGroupName $resourcegroupname -Name $vmname -AutoBackupSettingEnable `
-AutoBackupSettingStorageAccessKey $accesskey `
-AutoBackupSettingStorageAccountUrl $storage_url `
-AutoBackupSettingRetentionPeriod $retentionperiod `
-AutoBackupSettingStorageContainerName $storage_container 

Pencadangan dengan sertifikat enkripsi

Jika Anda memutuskan untuk mengenkripsi cadangan Anda, sertifikat enkripsi akan dibuat dan disimpan di akun penyimpanan yang sama dengan cadangan. Dalam skenario ini, Anda juga perlu memasukkan kata sandi yang akan digunakan untuk melindungi sertifikat enkripsi yang digunakan untuk mengenkripsi dan mendekripsi cadangan Anda. Ini memungkinkan Anda untuk tidak khawatir tentang cadangan Anda di luar konfigurasi fitur ini, dan juga memastikan Anda dapat percaya bahwa cadangan Anda aman.

Ketika enkripsi cadangan diaktifkan, kami sangat menyarankan Anda memastikan apakah sertifikat enkripsi telah berhasil dibuat dan diunggah untuk memastikan pemulihan database Anda. Anda dapat melakukannya dengan segera membuat database dan memeriksa sertifikat dan data enkripsi dicadangkan ke kontainer yang baru dibuat dengan benar. Ini akan menunjukkan bahwa semuanya dikonfigurasi dengan benar dan tidak ada anomali yang terjadi.

Jika sertifikat gagal diunggah karena alasan tertentu, Anda dapat menggunakan manajer sertifikat untuk mengekspor sertifikat dan menyimpannya. Anda tidak ingin menyimpannya pada VM yang sama, namun, karena ini tidak memastikan Anda memiliki akses ke sertifikat ketika VM tidak berfungsi. Untuk mengetahui apakah sertifikat dicadangkan dengan benar setelah mengubah atau membuat konfigurasi Automated Backup, Anda dapat memeriksa log peristiwa di VM, dan jika gagal, Anda akan melihat pesan kesalahan ini:

Cuplikan layar pesan kesalahan yang ditampilkan di Log Peristiwa di VM.

Jika sertifikat dicadangkan dengan benar, Anda akan melihat pesan ini di Log Peristiwa:

Cuplikan layar pencadangan sertifikat enkripsi yang berhasil dalam log peristiwa.

Sebagai praktik umum, disarankan untuk memeriksa kesehatan cadangan Anda dari waktu ke waktu. Agar dapat memulihkan cadangan, Anda harus melakukan hal berikut:

  1. Konfirmasikan bahwa sertifikat enkripsi Anda telah dicadangkan dan Anda mengingat kata sandi Anda. Jika Anda tidak melakukan ini, Anda tidak akan dapat mendekripsi dan memulihkan cadangan Anda. Jika karena alasan tertentu sertifikat Anda tidak dicadangkan dengan benar, Anda dapat menyelesaikannya secara manual dengan menjalankan kueri T-SQL berikut:

    BACKUP MASTER KEY TO FILE = <file_path> ENCRYPTION BY PASSWORD = <password>
    BACKUP CERTIFICATE [AutoBackup_Certificate] TO FILE = <file_path> WITH PRIVATE KEY (FILE = <file_path>, ENCRYPTION BY PASSWORD = <password>)
    
  2. Konfirmasikan bahwa file cadangan Anda diunggah dengan setidaknya 1 pencadangan penuh. Karena kesalahan terjadi, Anda harus yakin bahwa Anda selalu memiliki setidaknya satu cadangan penuh sebelum menghapus VM Anda, atau jika VM Anda rusak, sehingga Anda tahu bahwa Anda masih dapat mengakses data Anda. Anda harus memastikan cadangan dalam penyimpanan aman dan dapat dipulihkan sebelum menghapus disk data VM Anda.

Pemantauan

Untuk memantau Automated Backup di SQL Server 2014, Anda memiliki dua opsi utama. Karena Automated Backup menggunakan fitur SQL Server Managed Microsoft Azure Backup, teknik pemantauan yang sama diterapkan untuk keduanya.

Pertama, Anda dapat melakukan polling status dengan memanggil msdb.smart_admin.sp_get_backup_diagnostics. Atau kueri fungsi bernilai tabel msdb.smart_admin.fn_get_health_status.

Catatan

Skema untuk Managed Microsoft Azure Backup di SQL Server 2014 msdb.smart_admin. Di SQL Server 2016 ini berubah menjadi msdb.managed_backup, dan topik referensi menggunakan skema yang lebih baru ini. Tetapi untuk SQL Server 2014, Anda harus terus menggunakan skema smart_admin untuk semua objek Managed Microsoft Azure Backup.

Opsi lain adalah memanfaatkan fitur Email Database bawaan untuk pemberitahuan.

  1. Hubungi msdb.smart_admin.sp_set_parameter yang disimpan untuk menetapkan alamat email ke parameter SSMBackup2WANotificationEmailIds.
  2. Aktifkan SendGrid untuk mengirim email dari komputer virtual Azure.
  3. Gunakan server SMTP dan nama pengguna untuk mengonfigurasi Email Database. Anda dapat mengonfigurasi Email Database di SQL Server Management Studio atau dengan perintah T-SQL. Untuk informasi selengkapnya, lihat Email Database.
  4. Mengonfigurasi SQL Server Agent untuk menggunakan Email Database.
  5. Verifikasi bahwa port SMTP diizinkan baik melalui firewall komputer virtual lokal dan grup keamanan jaringan untuk komputer virtual.

Langkah berikutnya

Automated Backup mengonfigurasi Managed Microsoft Azure Backup pada komputer virtual Azure. Jadi penting untuk mengulas dokumentasi untuk Managed Microsoft Azure Backup di SQL Server 2014.

Anda dapat menemukan panduan cadangan dan pemulihan tambahan untuk SQL Server di komputer virtual Azure di artikel berikut ini: Microsoft Azure Backup dan pemulihan untuk SQL Server pada komputer virtual Azure.

Untuk informasi tentang tugas otomatisasi lain yang tersedia, lihat SQL Server IaaS Agent Extension.

Untuk informasi selengkapnya tentang menjalankan SQL Server di komputer virtual Azure, lihat Gambaran umum SQL Server pada komputer virtual Azure.