tencent cloud

TencentDB for MySQL

Mengembalikan Basis Data Menggunakan Cadangan Fisik

Download
Mode fokus
Ukuran font
Terakhir diperbarui: 2026-05-12 20:17:00

Skenario Penggunaan

Catatan:
Untuk menghemat ruang penyimpanan, file cadangan fisik dan logis dari Tencent Cloud Database MySQL akan dikompresi terlebih dahulu dengan qpress, kemudian dikemas dengan xbstream (xbstream adalah alat pengemasan/pembongkaran dari Percona) untuk kompresi dan pengemasan.
Perangkat lunak sumber terbuka Percona XtraBackup dapat digunakan untuk melakukan pencadangan dan pemulihan database. Artikel ini memperkenalkan cara menggunakan alat Percona XtraBackup untuk memulihkan file cadangan fisik MySQL ke database yang dibangun sendiri di host lain.
Catatan:
Jika menggunakan fitur enkripsi transparan atau Instant DDL, maka tidak dapat menggunakan cadangan fisik untuk melakukan pemulihan pada sistem yang dibangun sendiri.
Percona XtraBackup hanya mendukung platform Linux dan tidak mendukung platform Windows.
Untuk memulihkan data pada platform Windows, silakan merujuk ke Migrasi Data dengan Alat Baris Perintah.

Prasyarat

Unduh dan instal alat Percona XtraBackup.
Catatan:
Pastikan versi alat yang Anda unduh sesuai dengan versi database Anda. Misalnya, jika versi database instans Anda adalah MySQL 8.0.30, maka unduh alat Percona XtraBackup versi 8.0.30. Klik tautan unduhan untuk menelusuri versi dan mengunduh alat. Untuk petunjuk instalasi, silakan lihat Panduan Percona XtraBackup.
Versi instans yang didukung: MySQL dua node, tiga node.
Catatan:
Artikel ini menggunakan server cloud dengan sistem operasi CentOS dan versi MySQL 5.7 sebagai contoh untuk demonstrasi.

Langkah I:
Unduh file cadangan

Anda dapat mengunduh cadangan data dan cadangan log dari Tencent Cloud Database MySQL melalui konsol.
Catatan:
Secara default, setiap IP dibatasi hingga 10 koneksi, dan kecepatan unduhan setiap tautan dapat mencapai 20Mbps - 30Mbps.
1. Login ke Konsol MySQL, di daftar instans, klik ID instans atau Kelola pada kolom Operasi untuk masuk ke halaman manajemen instans.
2. Pada halaman manajemen instans, pilih Cadangan dan Pemulihan > halaman Daftar Cadangan Data, pilih cadangan yang ingin diunduh, lalu klik Unduh pada kolom Operasi.
3. Dalam dialog yang muncul, klik Salin di sebelah alamat unduhan untuk mendapatkan tautan unduhan.
4. Login ke server cloud Linux tempat MySQL lokal yang dibangun sendiri berada, lalu gunakan perintah wget untuk mengunduh cadangan fisik dengan kecepatan tinggi melalui jaringan internal.
Catatan:
Masa berlaku alamat unduhan adalah 12 jam, setelah kedaluwarsa harap segarkan halaman secara aktif untuk mendapatkan kembali.
Format perintah wget: wget -c 'alamat unduhan file cadangan' -O nama file kustom.xb
Contohnya adalah sebagai berikut:
wget -c 'https://mysql-database-backup-sh-1218.cos.ap-nanjing.myqcloud.com/12427%2Fmysql%2F0674-ffba-11e9-b592-70bd%2Fdata%2Fautomatic-delete%2F2019-12-03%2Fautomatic%2Fxtrabackup%2Fbk_61_156758150%2Fcdb-293fl9ya_backup_20191203000202.xb?sign=q-sign-algorithm%3Dsha1%26q-ak%3DAKzxfbLJ1%26q-sign-time%3D1575374119%3B1575417319%26q-key-time%3D1575374119%3B1575417319%26q-header-list%3D%26q-url-param-list%3D%26q-signature%3Dba959757&response-content-disposition=attachment%3Bfilename%3D%22yuan177685_backup_20191203000202.xb%22&response-content-type=application%2Foctet-stream' -O /data/test.xb

Catatan:

Anda dapat mengunduh kunci dekripsi cadangan data dari Tencent Cloud Database MySQL melalui konsol.
Catatan:
Kunci dekripsi untuk setiap cadangan database dihasilkan secara independen. Jika fitur enkripsi cadangan diaktifkan, saat mengunduh file cadangan, kunci dekripsi juga perlu diunduh dan disimpan.
1. Login ke Konsol MySQL, di daftar instans, klik ID instans atau Kelola pada kolom Operasi untuk masuk ke halaman manajemen instans.
2. Pada halaman manajemen instans, pilih Cadangan dan Pemulihan > halaman Daftar Cadangan Data, pilih kunci dekripsi yang sesuai dengan cadangan yang ingin diunduh, lalu klik Unduh Kunci pada kolom Operasi.


Catatan:

Catatan:

Menggunakan perintah xbstream untuk membongkar file cadangan data ke direktori tujuan.
xbstream -x --decrypt=AES256 --encrypt-key-file=<file kunci cadangan> --parallel=2 -C /data/mysql < /data/test.xb
Catatan:
Saat enkripsi cadangan tidak diaktifkan, perintah untuk membongkar file cadangan adalah: xbstream -x -C /data/mysql < /data/test.xb.
Direktori tujuan dalam artikel ini menggunakan /data/mysql sebagai penyimpanan pemulihan file data, Anda dapat menggantinya dengan jalur aktual sesuai kondisi sebenarnya.
/data/test.xb diganti dengan file cadangan Anda.
Hasil pembongkaran ditunjukkan pada gambar di bawah ini:

Jika file cadangan yang perlu dibongkar adalah cadangan binlog, perintahnya adalah sebagai berikut.
openssl enc -d -aes256 -k <encrypt_key> -in <download_binlog_name> -out <output_binlog_name>;
<encrypt_key>: diganti dengan konten file kunci cadangan yang sebenarnya.
<download_binlog_name>: diganti dengan nama file binlog terenkripsi yang sebenarnya.
<output_binlog_name>: diganti dengan nama file binlog terdekripsi yang sebenarnya.

Catatan:

1. Unduh alat qpress dengan perintah berikut.
wget -d --user-agent="Mozilla/5.0 (Windows NT x.y; rv:10.0) Gecko/20100101 Firefox/10.0" https://docs-tencentdb-1256569818.cos.ap-guangzhou.myqcloud.com/qpress-11-linux-x64.tar
Catatan:
Jika unduhan wget menunjukkan kesalahan, Anda dapat mengklik Unduh alat qpress untuk mengunduh ke lokal, kemudian mengunggah alat qpress ke server cloud Linux. Silakan lihat Mengunggah File ke Server Cloud Linux melalui SCP.
2. Ekstrak file biner qpress dengan perintah berikut.
tar -xf qpress-11-linux-x64.tar -C /usr/local/bin
source /etc/profile
3. Gunakan perintah berikut untuk mengekstrak semua file yang berakhiran .qp di direktori tujuan.
xtrabackup --decompress --target-dir=/data/mysql
Catatan:
/data/mysql adalah direktori tujuan yang sebelumnya digunakan untuk menyimpan file cadangan, Anda dapat menggantinya dengan jalur aktual sesuai kondisi sebenarnya.
Percona XtraBackup mendukung opsi --remove-original hanya pada versi 2.4.6 ke atas.
Secara default, xtrabackup tidak menghapus file kompresi asli saat dekompresi. Jika Anda ingin menghapus file kompresi asli setelah dekompresi, Anda dapat menambahkan parameter --remove-original pada perintah di atas.


Catatan:

Setelah cadangan berhasil diekstrak, jalankan perintah berikut untuk melakukan operasi apply log.
xtrabackup --prepare --target-dir=/data/mysql
Jika hasil eksekusi berisi output berikut, itu menandakan prepare berhasil.
prepare.png



Catatan:

1. Jalankan perintah berikut untuk membuka file backup-my.cnf.
vi /data/mysql/backup-my.cnf
Catatan:
Artikel ini menggunakan direktori tujuan /data/mysql sebagai contoh, Anda dapat menggantinya dengan jalur aktual sesuai kondisi sebenarnya.
2. Karena masalah versi yang ada, harap berikan komentar pada parameter berikut dalam file dekompresi backup-my.cnf.
innodb_checksum_algorithm
innodb_log_checksum_algorithm
innodb_fast_checksum
innodb_page_size
innodb_log_block_size
redo_log_version
server_uuid
master_key_id


Catatan:

Ubah atribut file, dan periksa apakah file tersebut dimiliki oleh pengguna mysql.
chown -R mysql:mysql /data/mysql


Catatan:

1. Mulai proses mysqld.
mysqld_safe --defaults-file=/data/mysql/backup-my.cnf --user=mysql --datadir=/data/mysql &
2. Klien masuk ke mysql untuk verifikasi.
mysql -uroot -p
Catatan:
Kata sandi yang dimasukkan setelah menjalankan perintah adalah kata sandi yang sesuai dengan akun root di database cloud tempat Anda memulihkan file cadangan.


Catatan:

Bantuan dan Dukungan

Apakah halaman ini membantu?

masukan