Pulihkan cadangan penuh database MySQL yang dikelola sendiri dari Object Storage Service (OSS) ke instans ApsaraDB RDS for MySQL baru menggunakan Konsol RDS.
Prasyarat
-
Database MySQL yang dikelola sendiri Anda harus memenuhi persyaratan migrasi ke cloud. Untuk detailnya, lihat Lampiran: batasan.
-
Anda harus memiliki bucket OSS di Wilayah tujuan. Jika belum memilikinya, lihat Buat bucket di konsol.
CatatanWilayah tujuan harus sama dengan wilayah tempat Anda akan membuat instans RDS.
Proses migrasi
Migrasi mencakup langkah-langkah berikut:
Langkah 1: Instal Percona Xtrabackup
Langkah 2: Instal MySQL Backup Helper
Langkah 3: Cadangkan database yang dikelola sendiri dan migrasikan ke cloud
Lingkungan tutorial
Tutorial ini menggunakan Instance ECS Alibaba Cloud yang menjalankan CentOS Linux release 8.3.2011. Jika Anda menggunakan versi berbeda, sesuaikan perintahnya. Untuk membuat Instance ECS, lihat Buat Instance ECS.
Langkah 1: Instal Percona XtraBackup
Percona XtraBackup adalah alat untuk membuat backup panas fisik database MySQL. Alat ini mendukung beberapa mesin database. Untuk Ubuntu, lihat Lampiran 1: Instal Percona XtraBackup di Ubuntu.
Pilih versi Percona XtraBackup yang sesuai dengan versi MySQL Anda.
MySQL 5.7
wget https://downloads.percona.com/downloads/Percona-XtraBackup-2.4/Percona-XtraBackup-2.4.29/binary/redhat/8/x86_64/percona-xtrabackup-24-2.4.29-1.el8.x86_64.rpm
yum localinstall percona-xtrabackup-24-2.4.29-1.el8.x86_64.rpm
MySQL 8.0
wget https://downloads.percona.com/downloads/Percona-XtraBackup-8.0/Percona-XtraBackup-8.0.35-31/binary/redhat/8/x86_64/percona-xtrabackup-80-8.0.35-31.1.el8.x86_64.rpm
yum localinstall percona-xtrabackup-80-8.0.35-31.1.el8.x86_64.rpm
Langkah 2: Instal MySQL Backup Helper
Prasyarat
-
Jika Golang belum terinstal, jalankan perintah berikut.
sudo yum install -y go -
Jika unzip belum terinstal, jalankan perintah berikut.
sudo yum install -y unzip
Perintah di atas berlaku untuk CentOS. Jika Anda menggunakan Ubuntu, lihat Lampiran 2: Instal Golang dan Unzip di Ubuntu.
Prosedur
-
Unduh paket kode sumber MySQL Backup Helper.
wget https://github.com/aliyun/mysql-backup-helper/archive/refs/heads/master.zipCatatanPaket kode sumber terbaru tersedia di mysql-backup-helper.
-
Ekstrak paket kode sumber MySQL Backup Helper.
unzip master.zip -
Buka direktori mysql-backup-helper-master dan kompilasi file main.go untuk menghasilkan executable backup_helper.
cd mysql-backup-helper-master go build -a -o backup_helper main.go -
Buka direktori oss_stream dan kompilasi file oss_stream.go untuk menghasilkan executable oss_stream.
cd oss_stream go build -a -o oss_stream oss_stream.go
Langkah 3: Cadangkan dan unggah database Anda
-
Gunakan MySQL Backup Helper untuk memverifikasi bahwa database MySQL yang dikelola sendiri Anda mendukung pencadangan.
cd ~/mysql-backup-helper-master && ./backup_helper -host <host_address> -port <port> -user <root_username> --password <root_password>
-
Setelah verifikasi selesai, lakukan cadangan penuh database yang dikelola sendiri dan unggah file cadangan ke OSS. Jika Anda belum membuat bucket OSS, lihat Prasyarat.
Pilih perintah yang sesuai dengan versi MySQL Anda.
MySQL 5.7
innobackupex --backup --host=<host_address> --port=<port> --user=<root_username> --password=<root_password> --stream=xbstream --compress <temp_backup_directory> | ./mysql-backup-helper-master/oss_stream/oss_stream -accessKeyId <access_key_id> -accessKeySecret <access_key_secret> -bucketName <bucket_name> -endpoint <bucket_endpoint> -objectName <custom_backup_filename>Contoh:
innobackupex --backup --host=127.0.0.1 --port=3306 --user=root --password=Aa123456@ --stream=xbstream --compress /root/mysql/data | ./mysql-backup-helper-master/oss_stream/oss_stream -accessKeyId LTAI**************** -accessKeySecret ****** -bucketName test -endpoint oss-********.aliyuncs.com -objectName backup_qp.xbPencadangan memerlukan waktu lebih lama untuk database yang besar. Jika database Anda besar, jalankan pencadangan di latar belakang menggunakan perintah
nohupuntuk mencegah gangguan akibat logout tak terduga. Contoh perintah berikut:nohup sh -c 'innobackupex --backup --host=127.0.0.1 --port=3306 --user=root --password=Aa123456@ --stream=xbstream --compress /root/mysql/data | ./mysql-backup-helper-master/oss_stream/oss_stream -accessKeyId LTAI**************** -accessKeySecret ****** -bucketName test -endpoint oss-ap-southeast-1.aliyuncs.com -objectName backup_qp.xb' &MySQL 8.0
xtrabackup --backup --host=<host_address> --port=<port> --user=<root_username> --password=<root_password> --stream=xbstream --compress <temp_backup_directory> | ./mysql-backup-helper-master/oss_stream/oss_stream -accessKeyId <access_key_id> -accessKeySecret <access_key_secret> -bucketName <bucket_name> -endpoint <bucket_endpoint> -objectName <custom_backup_filename>Contoh:
xtrabackup --backup --host=127.0.0.1 --port=3306 --user=root --password=Aa123456@ --stream=xbstream --compress /root/mysql/data | ./mysql-backup-helper-master/oss_stream/oss_stream -accessKeyId LTAI**************** -accessKeySecret ******** -bucketName test -endpoint oss-****.aliyuncs.com -objectName backup_qp.xbPencadangan memerlukan waktu lebih lama untuk database yang besar. Jika database Anda besar, jalankan pencadangan di latar belakang menggunakan perintah
nohupuntuk mencegah gangguan akibat logout tak terduga. Contoh perintah berikut:nohup sh -c 'xtrabackup --backup --host=127.0.0.1 --port=3306 --user=root --password=Aa123456@ --stream=xbstream /root/mysql/data | ./mysql-backup-helper-master/oss_stream/oss_stream -accessKeyId LTAI**************** -accessKeySecret ****** -bucketName test -endpoint oss-ap-southeast-1.aliyuncs.com -objectName backup_qp.xb' &Catatan-
Durasi pencadangan bergantung pada beban kerja instans. Misalnya, operasi write intensif yang menghasilkan banyak redo log atau transaksi besar yang sedang berjalan pada instans akan memperpanjang waktu pencadangan. Saat pencadangan selesai, pesan
completed OK !akan ditampilkan. -
Jika saat ini Anda tidak dapat mengakses OSS, Anda dapat mencadangkan database ke disk lokal dan mengunggah file tersebut nanti. Untuk detailnya, lihat Lampiran 3: Lakukan cadangan penuh dan unggah ke OSS dalam langkah terpisah.
-
Setelah menyelesaikan langkah ini, Anda dapat masuk ke Konsol OSS untuk mengonfirmasi pengunggahan. Jika pengunggahan gagal, ulangi Langkah 2.
-
-
Masuk ke Daftar Instans RDS, pilih wilayah di pojok kiri atas halaman, lalu klik Backups di panel navigasi sebelah kiri.
-
Pada tab User Backups, klik Import Backup.
-
Pada kotak dialog Import Backup, baca petunjuknya dan klik Next hingga Anda mencapai tab 3. Import Data.
CatatanWizard akan memandu Anda melalui proses impor backup. Untuk informasi lebih lanjut, lihat Lakukan cadangan penuh dan unggah ke OSS dalam langkah terpisah.
-
Step 1. Back Up Source Database: Lakukan cadangan penuh database yang dikelola sendiri Anda.
-
2. Upload Backup Files to OSS: Unggah file cadangan penuh ke OSS.
-
-
Pada tab Step 3: Import the data, konfigurasikan parameter berikut dan klik OK.
Parameter
Deskripsi
MySQL Version
Sistem secara otomatis menampilkan 5.7/8.0.
CatatanAnda hanya dapat mengimpor backup dari database yang dikelola sendiri yang menjalankan MySQL 5.7 atau 8.0.
Region
Wilayah yang dipilih di Langkah 1. Wilayah ini harus sesuai dengan wilayah bucket OSS yang berisi file backup.
OSS Bucket
Pilih bucket OSS yang berisi file backup. Untuk informasi lebih lanjut tentang bucket OSS, lihat Unggah file.
OSS File Name
Pilih file backup dari bucket OSS. Anda dapat mencari file dengan memasukkan namanya di kotak teks di samping OSS File Name. Pencocokan fuzzy dan eksak didukung.
CatatanFile backup di OSS harus dalam format
_QP.XB. Anda juga dapat mengompres file dalam format_QP.XBmenjadi fileTAR.GZuntuk penyimpanan. Untuk informasi lebih lanjut tentang batasan, lihat Lampiran: Batasan penggunaan.Description
Masukkan catatan khusus untuk file backup.
Zone
Pilih zona ketersediaan untuk backup pengguna. Setelah Anda memilih salah satu, sistem akan membuat snapshot di zona tersebut, yang secara signifikan mengurangi waktu impor backup.
CatatanSaat Anda memulihkan data dari backup pengguna ini ke instans baru, instans baru tersebut akan berada di zona ketersediaan ini.
Catatan-
Jika Anda belum memberikan otorisasi kepada RDS untuk mengakses OSS, klik Authorize di bagian bawah halaman 3. Import Data. Di halaman otorisasi, klik Authorize.
-
Untuk informasi lebih lanjut tentang impor backup, baca petunjuk di halaman ini.
-
-
Sistem membuat tugas verifikasi untuk file backup di halaman User Backups. Tunggu hingga Status tugas berubah dari Verifying menjadi Completed.
PentingWaktu verifikasi bergantung pada kondisi instans sumber selama pencadangan. Misalnya, operasi write intensif yang menghasilkan banyak redo log atau transaksi besar yang sedang berjalan pada instans sumber akan memperpanjang waktu verifikasi.
-
Temukan backup target dan klik Restore di kolom Actions untuk Backup ID/Name.
-
Konfigurasikan parameter berikut dan klik Next: Instance Configurations.
Kategori
Deskripsi
Zone of Primary Node
Pilih zona ketersediaan untuk instans utama.
CatatanParameter ini hanya muncul jika Anda tidak memilih zona ketersediaan saat mengimpor backup pengguna.
Storage Type
-
ESSD PL1: Disk cloud Enhanced SSD (ESSD) yang menyediakan performa PL1.
-
Standard SSD: Perangkat penyimpanan blok elastis berbasis arsitektur penyimpanan terdistribusi. Memilih disk cloud SSD memisahkan komputasi dari penyimpanan.
CatatanUntuk informasi lebih lanjut, lihat Jenis penyimpanan.
Instance Type
General-purpose (Entry-level): Menyediakan resource memori dan I/O khusus sekaligus berbagi resource CPU dan penyimpanan dengan instans tujuan umum lainnya di server yang sama.
CatatanSetiap tipe instans memiliki jumlah core CPU, ukuran memori, jumlah koneksi maksimum, dan IOPS maksimum tertentu. Untuk informasi lebih lanjut, lihat Tipe instans utama.
Storage Capacity
Ruang total untuk data, file sistem, file log, dan file transaksi. Anda dapat menyesuaikan ruang penyimpanan dalam penambahan 5 GB.
-
-
Konfigurasikan parameter berikut dan klik Next: Confirm Order.
Kategori
Deskripsi
Network Type
VPC: Lingkungan jaringan terisolasi yang menyediakan keamanan dan performa lebih tinggi dibandingkan jaringan klasik. Anda harus menentukan VPC dan vSwitch of Primary Node.
CatatanPastikan VPC-nya sama dengan yang digunakan oleh Instance ECS target. Jika tidak, instans RDS dan ECS tidak dapat berkomunikasi melalui jaringan internal.
Parameter Template
Tentukan templat parameter untuk instans. Anda dapat menggunakan templat sistem atau templat kustom untuk mengatur parameter instans sebelumnya. Untuk informasi lebih lanjut, lihat Gunakan templat parameter.
Time Zone
Atur zona waktu untuk instans.
Table Name Case Sensitivity
Tentukan apakah nama tabel dalam instans bersifat case-sensitive. Jika nama tabel di database sumber Anda case-sensitive, pilih Case-sensitive untuk memudahkan migrasi data.
-
Tinjau Parameter Configuration, pilih Quantity, baca dan terima syarat layanan, lalu klik Pay Now.
CatatanPembuatan instans memerlukan waktu 1 hingga 5 menit.
Operasi
Atur periode retensi
Backup pengguna yang diimpor disimpan selama 3 hari secara default. Anda dapat mengubah periode retensi ini sesuai kebutuhan bisnis Anda.
Jika Anda tidak lagi memerlukan backup pengguna, Anda dapat menghapusnya.
-
Masuk ke Daftar Instans RDS. Di pojok kiri atas halaman, pilih wilayah. Di panel navigasi sebelah kiri, klik Backups.
-
Klik Set Retention Period di kolom Expiration Time untuk Backup ID/Name target.
-
Di kotak dialog, pilih periode retensi preset dari daftar drop-down, atau centang kotak Custom Retention Period dan masukkan nilai.
CatatanExpiration Time menunjukkan waktu kedaluwarsa backup. Jika waktu kedaluwarsa setelah tahun 2099, akan ditampilkan sebagai Permanent.
-
Klik OK.
Tambahkan tag
Anda dapat menambahkan tag ke backup yang diimpor untuk memudahkan manajemen.
-
Masuk ke Daftar Instans RDS. Di pojok kiri atas halaman, pilih wilayah. Di panel navigasi sebelah kiri, klik Backups.
-
Klik +Add di kolom Tags untuk Backup ID/Name target.
-
Klik Create a label, masukkan Key dan Value, lalu klik OK di sebelah kanan kotak teks. Kemudian, klik OK di pojok kanan bawah kotak dialog.
CatatanJika Anda telah membuat tag sebelumnya, Anda dapat mengklik Select the label untuk menambahkan tag yang sudah ada.
-
Untuk mengubah tag yang sudah ada, arahkan kursor ke tag tersebut, klik edit di pop-up, lalu ulangi Langkah 3.
Lihat detail log
Jika database sumber dimodifikasi selama pencadangan database yang dikelola sendiri, file backup berisi informasi log yang dapat digunakan untuk memulihkan data inkremental.
-
Masuk ke Daftar Instans RDS. Di pojok kiri atas halaman, pilih wilayah. Di panel navigasi sebelah kiri, klik Backups.
-
Klik View Details di kolom Actions untuk Backup ID target.
-
Di kotak dialog, Anda dapat melihat detail log.
CatatanInformasi log mencakup bidang berikut:
-
Master_Log_File:: Nama file log tempat data inkremental dimulai.
-
Master_Log_Position:: Posisi awal data inkremental dalam file log.
-
Hapus backup pengguna
Hapus backup pengguna yang tidak lagi Anda perlukan untuk menghemat biaya.
-
Masuk ke Daftar Instans RDS. Di pojok kiri atas halaman, pilih wilayah. Di panel navigasi sebelah kiri, klik Backups.
-
Klik Delete di kolom Actions untuk Backup ID/Name target.
-
Di kotak dialog, klik OK.
Operasi lainnya
-
Filter Columns: Sesuaikan kolom yang ditampilkan dalam daftar backup.
-
Masuk ke Daftar Instans RDS. Di pojok kiri atas halaman, pilih wilayah. Di panel navigasi sebelah kiri, klik Backups.
-
Di sisi kanan halaman, klik ikon
. Di jendela pop-up, pilih kolom dan klik ikon
atau
untuk menampilkan atau menyembunyikan kolom.CatatanKolom di panel kiri disembunyikan. Kolom di panel kanan ditampilkan.
-
Klik OK.
-
-
Export Instance List: Ekspor daftar semua backup pengguna saat ini ke file CSV.
-
Masuk ke Daftar Instans RDS. Di pojok kiri atas halaman, pilih wilayah. Di panel navigasi sebelah kiri, klik Backups.
-
Di sisi kanan halaman, klik ikon
untuk mengekspor daftar resource.
-
-
Refresh: Memperbarui daftar backup pengguna.
-
Masuk ke Daftar Instans RDS. Di pojok kiri atas halaman, pilih wilayah. Di panel navigasi sebelah kiri, klik Backups.
-
Di sisi kanan halaman, klik ikon
untuk memperbarui daftar backup pengguna.
-