Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk: ✔️ mesin virtual Linux
Artikel ini menunjukkan penggunaan Azure Files sebagai media untuk mencadangkan dan memulihkan database Oracle yang berjalan pada komputer virtual (VM) Azure. Langkah-langkah dalam artikel ini diuji terhadap Oracle 12.1 dan yang lebih baru.
Dalam artikel ini, Anda menggunakan Oracle Recovery Manager (RMAN) untuk mencadangkan database ke berbagi file Azure yang dipasang ke VM melalui protokol Blok Pesan Server (SMB). Menggunakan Azure Files untuk media cadangan hemat biaya dan berkinerja. Namun, untuk database besar, Azure Backup memberikan solusi yang lebih baik.
Prasyarat
Gunakan lingkungan Bash di Azure Cloud Shell. Untuk informasi selengkapnya, lihat Mulai menggunakan Azure Cloud Shell.
Jika Anda lebih suka menjalankan perintah referensi CLI secara lokal, instal Azure CLI. Jika Anda menjalankan Windows atau macOS, pertimbangkan untuk menjalankan Azure CLI dalam kontainer Docker. Untuk informasi lebih lanjut, lihat Cara menjalankan Azure CLI di kontainer Docker.
Jika Anda menggunakan instalasi lokal, masuk ke Azure CLI dengan menggunakan perintah login az. Untuk menyelesaikan proses autentikasi, ikuti langkah-langkah yang ditampilkan di terminal Anda. Untuk opsi masuk lainnya, lihat Mengautentikasi ke Azure menggunakan Azure CLI.
Saat Anda diminta, instal ekstensi Azure CLI pada penggunaan pertama. Untuk informasi selengkapnya tentang ekstensi, lihat Menggunakan dan mengelola ekstensi dengan Azure CLI.
Jalankan versi az untuk menemukan versi dan pustaka dependen yang diinstal. Untuk meningkatkan ke versi terbaru, jalankan peningkatan az.
Untuk melakukan proses pencadangan dan pemulihan, Anda harus terlebih dahulu membuat mesin virtual Linux yang memiliki instans Oracle Database yang sudah dipasang. Sebaiknya gunakan Oracle 12.x atau yang lebih baru.
Buat instans Oracle Database dengan mengikuti langkah-langkah dalam Membuat instans Oracle Database di Azure VM.
Menyiapkan lingkungan database
Untuk membuat sesi Secure Shell (SSH) dengan VM, gunakan perintah berikut. Ganti
<publicIpAddress>dengan nilai alamat publik untuk VM Anda.ssh azureuser@<publicIpAddress>Beralih ke pengguna root:
sudo su -oracleTambahkan pengguna ke file /etc/sudoers:echo "oracle ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoersLangkah ini mengasumsikan bahwa Anda memiliki instans Oracle (pengujian) yang berjalan pada VM bernama vmoracle19c.
Beralih ke
oraclepengguna:sudo su - oracleSebelum Anda terhubung, atur variabel
ORACLE_SIDlingkungan :export ORACLE_SID=test;Anda juga harus menambahkan
ORACLE_SIDvariabel keoraclefile .bashrc pengguna untuk masuk di masa mendatang dengan menggunakan perintah berikut:echo "export ORACLE_SID=test" >> ~oracle/.bashrcMulai pendengar Oracle jika belum berjalan:
lsnrctl startOutput akan terlihat mirip dengan contoh berikut:
LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 18-SEP-2020 03:23:49 Copyright (c) 1991, 2019, Oracle. All rights reserved. Starting /u01/app/oracle/product/19.0.0/dbhome_1/bin/tnslsnr: please wait... TNSLSNR for Linux: Version 19.0.0.0.0 - Production System parameter file is /u01/app/oracle/product/19.0.0/dbhome_1/network/admin/listener.ora Log messages written to /u01/app/oracle/diag/tnslsnr/vmoracle19c/listener/alert/log.xml Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=vmoracle19c.eastus.cloudapp.azure.com)(PORT=1521))) Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521))) Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=vmoracle19c.eastus.cloudapp.azure.com)(PORT=1521))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 19.0.0.0.0 - Production Start Date 18-SEP-2020 03:23:49 Uptime 0 days 0 hr. 0 min. 0 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /u01/app/oracle/product/19.0.0/dbhome_1/network/admin/listener.ora Listener Log File /u01/app/oracle/diag/tnslsnr/vmoracle19c/listener/alert/log.xml Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=vmoracle19c.eastus.cloudapp.azure.com)(PORT=1521))) (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521))) The listener supports no services The command completed successfullyBuat lokasi untuk area pemulihan cepat:
mkdir /u02/fast_recovery_areaSambungkan ke database:
sqlplus / as sysdbaMulai database jika belum berjalan:
SQL> startupAtur variabel lingkungan database untuk area pemulihan cepat:
SQL> alter system set db_recovery_file_dest_size=4096M scope=both; SQL> alter system set db_recovery_file_dest='/u02/fast_recovery_area' scope=both;Verifikasi bahwa database dalam
ARCHIVELOGmode untuk mengaktifkan pencadangan online.Periksa status arsip log:
SQL> SELECT log_mode FROM v$database; LOG_MODE ------------ NOARCHIVELOGJika arsip log dalam
NOARCHIVELOGmode, jalankan perintah berikut di SQL Plus:SQL> SHUTDOWN IMMEDIATE; SQL> STARTUP MOUNT; SQL> ALTER DATABASE ARCHIVELOG; SQL> ALTER DATABASE OPEN; SQL> ALTER SYSTEM SWITCH LOGFILE;Buat tabel untuk menguji operasi pencadangan dan pengembalian:
SQL> create user scott identified by tiger quota 100M on users; SQL> grant create session, create table to scott; SQL> connect scott/tiger SQL> create table scott_table(col1 number, col2 varchar2(50)); SQL> insert into scott_table VALUES(1,'Line 1'); SQL> commit; SQL> quit
Mencadangkan ke Azure Files
Untuk mencadangkan ke Azure Files, selesaikan langkah-langkah berikut ini:
- Siapkan Azure Files .
- Memasang berbagi file Azure ke mesin virtual Anda.
- Cadangkan databasenya.
- Memulihkan dan memulihkan database.
Menyiapkan Azure Files
Di bagian ini, Anda mencadangkan database Oracle ke Azure Files dengan menggunakan Oracle RMAN. Berbagi file Azure adalah berbagi file yang dikelola sepenuhnya yang tetap berada di cloud. Anda dapat mengaksesnya dengan menggunakan protokol SMB atau protokol Network File System (NFS).
Prosedur berikut mencakup pembuatan berbagi file yang menggunakan protokol SMB untuk dipasang ke VM Anda. Untuk informasi tentang cara memasang dengan menggunakan NFS, lihat Membuat berbagi NFS.
Saat Anda memasang berbagi file Azure, gunakan cache=none opsi untuk menonaktifkan penembolokan data berbagi file. Untuk memastikan bahwa pengguna memiliki oracle file yang dibuat dalam berbagi, atur uid=oracle opsi dan gid=oinstall .
Siapkan akun penyimpanan Anda:
Di portal Azure, pilih + Buat sumber daya, lalu cari dan pilih Akun Penyimpanan.
Cuplikan layar yang memperlihatkan tempat membuat sumber daya dan memilih akun penyimpanan.Pada panel Buat akun penyimpanan:
- Untuk Grup sumber daya, pilih grup sumber daya yang ada, rg-oracle.
- Untuk Nama akun penyimpanan, masukkan oracbkup1.
- Pastikan Lokasi diatur ke wilayah yang sama dengan semua sumber daya Anda yang lain di grup sumber daya.
- Atur Performa ke Standar.
- Untuk Jenis akun, pilih StorageV2 (tujuan umum v2).
- Untuk Replikasi, pilih Penyimpanan lokal berlebihan (LRS).
Cuplikan layar yang memperlihatkan informasi dasar untuk membuat akun penyimpanan.Pilih tab Tingkat Lanjut. Di bawah Azure Files, atur Berbagi file besar ke Diaktifkan. Pilih Tinjauan + Buat, kemudian pilih Buat.
Cuplikan layar yang memperlihatkan tab untuk mengaktifkan berbagi file besar.Saat akun penyimpanan dibuat, buka sumber daya dan pilih Berbagi file.
Cuplikan layar yang memperlihatkan tempat memilih berbagi file untuk sumber daya.Pilih + Berbagi file, lalu pada panel Berbagi file baru:
Untuk Nama, masukkan orabkup1.
Atur Kuota ke 10240 gibibyte (GiB).
Kuota mencerminkan batas atas yang dapat bertambah bagikan file. Karena Anda menggunakan penyimpanan standar dalam contoh ini, sumber daya adalah prabayar dan tidak disediakan. Mengatur kuota ke 10 tebibyte (TiB) tidak dikenakan biaya di luar apa yang Anda gunakan. Jika strategi pencadangan Anda memerlukan lebih banyak penyimpanan, atur kuota ke tingkat yang sesuai untuk menyimpan semua cadangan.
Di bawah Tingkatan, pilih Transaksi dioptimalkan.
Pilih Buat.
Cuplikan layar yang memperlihatkan pilihan untuk menambahkan berbagi file baru.Saat berbagi file dibuat, pilih orabkup1 pada panel Pengaturan berbagi file.
Pilih tab Sambungkan untuk membuka panel Sambungkan , lalu pilih tab Linux . Salin perintah yang disediakan untuk memasang berbagi file dengan menggunakan protokol SMB.
Cuplikan layar yang memperlihatkan panel untuk mengakses perintah untuk menyambungkan berbagi file ke komputer Linux.
Memasang berbagi file Azure ke VM Anda
Membuat titik pemasangan:
sudo mkdir /mnt/orabackupMenyiapkan info masuk:
if [ ! -d "/etc/smbcredentials" ]; then sudo mkdir /etc/smbcredentials fiJalankan perintah berikut. Ganti
<Your Storage Account Key1>dengan kunci akun penyimpanan yang Anda ambil sebelumnya.if [ ! -f "/etc/smbcredentials/orabackup1.cred" ]; then sudo bash -c 'echo "username=orabackup1" >> /etc/smbcredentials/orabackup1.cred' sudo bash -c 'echo "password=<Your Storage Account Key1>" >> /etc/smbcredentials/orabackup1.cred' fiMengubah izin pada berkas mandat:
sudo chmod 600 /etc/smbcredentials/orabackup1.credTambahkan pemasangan ke file /etc/fstab :
sudo bash -c 'echo "//orabackup1.file.core.windows.net/orabackup /mnt/orabackup cifs nofail,vers=3.0,credentials=/etc/smbcredentials/orabackup1.cred,dir_mode=0777,file_mode=0777,serverino,cache=none,uid=oracle,gid=oinstall" >> /etc/fstab'Jalankan perintah untuk memasang berbagi file Azure dengan menggunakan protokol SMB:
sudo mount -t cifs //orabackup1.file.core.windows.net/orabackup /mnt/orabackup -o vers=3.0,credentials=/etc/smbcredentials/orabackup1.cred,dir_mode=0777,file_mode=0777,serverino,cache=none,uid=oracle,gid=oinstallJika Anda mendapatkan kesalahan yang mirip dengan contoh berikut, paket Common Internet File System (CIFS) mungkin tidak diinstal pada host Linux Anda:
mount: wrong fs type, bad option, bad superblock on //orabackup1.file.core.windows.net/orabackupUntuk memeriksa apakah paket CIFS diinstal, jalankan perintah berikut:
sudo rpm -qa|grep cifs-utilsJika perintah tidak mengembalikan output, instal paket CIFS dengan menggunakan perintah berikut. Kemudian jalankan
mountulang perintah untuk memasang berbagi file Azure.sudo yum install cifs-utilsPeriksa apakah berbagi file dipasang dengan benar dengan menggunakan perintah berikut:
df -hOutput akan terlihat mirip dengan contoh ini:
$ df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 3.3G 0 3.3G 0% /dev tmpfs 3.3G 0 3.3G 0% /dev/shm tmpfs 3.3G 17M 3.3G 1% /run tmpfs 3.3G 0 3.3G 0% /sys/fs/cgroup /dev/sda2 30G 9.1G 19G 34% / /dev/sdc1 59G 2.7G 53G 5% /u02 /dev/sda1 497M 199M 298M 41% /boot /dev/sda15 495M 9.7M 486M 2% /boot/efi tmpfs 671M 0 671M 0% /run/user/54321 /dev/sdb1 14G 2.1G 11G 16% /mnt/resource tmpfs 671M 0 671M 0% /run/user/54322 //orabackup1.file.core.windows.net/orabackup 10T 0 10T 0% /mnt/orabackup
Mencadangkan database
Di bagian ini, Anda menggunakan Oracle RMAN untuk mengambil cadangan penuh database dan log arsip. Anda kemudian menulis cadangan sebagai cadangan yang diatur ke berbagi file Azure yang Anda pasang sebelumnya.
Mengonfigurasi RMAN untuk mencadangkan ke titik kait Azure Files:
rman target / RMAN> configure snapshot controlfile name to '/mnt/orabkup/snapcf_ev.f'; RMAN> configure channel 1 device type disk format '/mnt/orabkup/%d/Full_%d_%U_%T_%s'; RMAN> configure channel 2 device type disk format '/mnt/orabkup/%d/Full_%d_%U_%T_%s';Dalam contoh ini, Anda membatasi ukuran potongan cadangan RMAN hingga 4 GiB. Namun, nilai cadangan
maxpiecesizeRMAN dapat mencapai 4 TiB, yang merupakan batas ukuran file untuk berbagi file standar Azure dan berbagi file premium. Untuk informasi selengkapnya, lihat Target skalabilitas dan performa Azure Files.RMAN> configure channel device type disk maxpiecesize 4000G;Konfirmasikan detail perubahan konfigurasi:
RMAN> show all;Jalankan pencadangan. Perintah berikut mengambil cadangan database lengkap, termasuk file log arsip, sebagai kumpulan cadangan dalam format terkompresi:
RMAN> backup as compressed backupset database plus archivelog;
Anda mencadangkan database secara online dengan menggunakan Oracle RMAN, dengan cadangan yang terletak di Azure Files. Karena Anda menyimpan cadangan di Azure Files, Anda dapat mengaksesnya dari VM lain jika Anda perlu mengkloning database.
Menggunakan RMAN dan Azure Files untuk pencadangan database memiliki banyak keuntungan. Waktu pencadangan dan pemulihan ditautkan ke ukuran database. Untuk database besar, operasi ini dapat memakan waktu yang cukup lama.
Alternatifnya adalah menggunakan cadangan VM yang konsisten dengan aplikasi melalui Azure Backup. Mekanisme ini menggunakan teknologi rekam jepret untuk melakukan pencadangan cepat terlepas dari ukuran database. Integrasi dengan vault Layanan Pemulihan menyediakan penyimpanan cloud cadangan Oracle Database Anda, sehingga Anda dapat mengaksesnya dari VM lain dan wilayah Azure lainnya.
Memulihkan dan memulihkan database
Matikan instans Oracle:
sqlplus / as sysdba SQL> shutdown abort ORACLE instance shut down.Menghapus file data database:
cd /u02/oradata/TEST rm -f *.dbfPerintah berikut menggunakan RMAN untuk memulihkan file datat yang hilang dan memulihkan database:
rman target / RMAN> startup mount; RMAN> restore database; RMAN> recover database; RMAN> alter database open;Periksa apakah konten database sepenuhnya dipulihkan:
RMAN> SELECT * FROM scott.scott_table;
Pencadangan dan pemulihan database Oracle Database 19c pada VM Linux Azure sekarang selesai.
Menghapus VM
Saat Anda tidak lagi memerlukan VM, Anda bisa menggunakan perintah berikut untuk menghapus grup sumber daya, VM, dan semua sumber daya terkait:
az group delete --name rg-oracle