Ikhtisar
Keterangan:
Untuk menghemat kapasitas penyimpanan, cadangan fisik dan logis di TencentDB for MySQL harus dikompresi dengan qpress lalu dikemas dengan xbstream yang ditawarkan oleh Percona.
Percona XtraBackup sumber terbuka dapat digunakan untuk mencadangkan dan memulihkan database. Dokumen ini menjelaskan cara menggunakan XtraBackup untuk memulihkan file cadangan fisik instans TencentDB for MySQL ke database yang dibuat sendiri di CVM.
XtraBackup hanya mendukung sistem operasi Linux.
Prasyarat
Unduh dan instal XtraBackup.
Arsitektur instans yang didukung: MySQL dua node atau tiga node
Instans dengan enkripsi data yang diaktifkan tidak dapat dipulihkan dari cadangan fisik.
Keterangan:
Dokumen ini mengambil instans CVM yang menjalankan CentOS dan instans MySQL v5.7 sebagai contoh.
Petunjuk
Langkah 1. Mengunduh file cadangan
Anda dapat mengunduh pencadangan data dan pencadangan log instans TencentDB for MySQL di konsol.
Keterangan:
Setiap IP dapat memiliki hingga 10 tautan unduhan secara default, dengan batas kecepatan unduh masing-masing 20-30 Mbps.
1. Login ke konsol TencentDB for MySQL. Dalam daftar instans, klik ID instans atau Manage (Kelola) di kolom Operation (Operasi) untuk masuk ke halaman manajemen instans. 2. Pada tab Backup and Restore (Cadangkan dan Pulihkan) > Data Backup List (Daftar Cadangan Data), cari file cadangan yang akan diunduh dan klik Download (Unduh) di kolom Operation (Operasi).
Keterangan:
Anda juga dapat mengklik Download (Unduh) untuk mengunduhnya secara langsung. Namun, ini mungkin memakan waktu lebih lama.
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
Etapa 2: Baixe a chave de descriptografia do backup (esta etapa é necessária apenas se o recurso de criptografia de backup estiver ativado)
Você pode baixar a chave de descriptografia do backup de dados do banco de dados em nuvem MySQL pelo console.
Nota:
A chave de descriptografia de cada backup do banco de dados é gerada individualmente. Se a criptografia de backup estiver ativada, você precisará baixar e salvar a chave junto com o arquivo de backup ao realizar o download.
1. Login ke konsol TencentDB for MySQL. Dalam daftar instans, klik ID instans atau Manage (Kelola) di kolom Operation (Operasi) untuk masuk ke halaman manajemen instans. 2. Na página de gerenciamento de instâncias, acesse Fazer backup e restaurar > Lista de backup de dados, selecione a chave de descriptografia correspondente ao backup que deseja baixar e clique em Download na coluna Operação.
3. Na caixa de diálogo pop-up, selecione o caminho do arquivo onde deseja salvar a chave e clique em Download.
Langkah 3. Memulihkan data
3.1 Buka paket file cadangan
Jalankan perintah xbstream untuk membuka file cadangan ke direktori target.
xbstream -x --parallel=2 -C /data/mysql < /data/test.xb
Keterangan:
Direktori target /data/mysql digunakan sebagai contoh dalam dokumen ini. Anda dapat menggantinya dengan direktori yang sebenarnya Anda gunakan untuk menyimpan file cadangan.
Ganti /data/test.xb dengan file cadangan Anda.
Hasil file yang dibuka ditampilkan di bawah ini:
Se o arquivo de backup a ser descompactado for um backup de binlog, utilize o comando abaixo:
openssl enc -d -aes256 -k <encrypt_key> -in <download_binlog_name> -out <output_binlog_name>;
<encrypt_key>: substitua pelo conteúdo real do arquivo de chave de backup.
<download_binlog_name>: substitua pelo nome real do arquivo binlog criptografado.
<output_binlog_name>: substitua pelo nome real do arquivo binlog descriptografado.
3.2 Dekompresi file cadangan
1. Unduh qpress dengan menjalankan perintah berikut:
wget -d --user-agent="Mozilla/5.0 (Windows NT x.y; rv:10.0) Gecko/20100101 Firefox/10. http://www.quicklz.com/qpress-11-linux-x64.tar
2. Ekstrak file biner qpress dengan menjalankan perintah berikut.
tar -xf qpress-11-linux-x64.tar -C /usr/local/bin
source /etc/profile
3. Dekompresi semua file .qp di direktori tujuan dengan menjalankan perintah qpress berikut:
xtrabackup --decompress --target-dir=/data/mysql
Keterangan:
/data/mysql adalah direktori target tempat file cadangan disimpan sebelumnya. Anda dapat menggantinya dengan direktori yang sebenarnya Anda gunakan.
Opsi --remove-original hanya didukung di Percona Xtrabackup v2.4.6 dan yang lebih baru.
xtrabackup tidak akan menghapus file asli selama dekompresi secara default. Jika Anda ingin menghapusnya setelah dekompresi selesai, tambahkan parameter --remove-original ke perintah di atas.
3.3 Siapkan file cadangan
Setelah file cadangan didekompresi, Anda perlu menjalankan operasi "apply log" dengan menjalankan perintah berikut.
xtrabackup --prepare --target-dir=/data/mysql
Jika hasil eksekusi berisi output berikut, berarti persiapan berhasil.
3.4 Modifikasi file konfigurasi
1. Jalankan perintah berikut untuk membuka file backup-my.cnf.
vi /data/mysql/backup-my.cnf
Keterangan:
Direktori target /data/mysql digunakan sebagai contoh dalam dokumen ini. Anda dapat menggantinya dengan direktori yang sebenarnya Anda gunakan.
2. Mengingat masalah versi yang ada, parameter berikut perlu diberi komentar dari file yang diekstrak 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
3.5 Modifikasi atribut file
Modifikasi atribut file dan periksa apakah file dimiliki oleh pengguna mysql.
chown -R mysql:mysql /data/mysql
Langkah 4. Memulai proses mysqld dan login untuk verifikasi
1. Mulai proses mysqld.
mysqld_safe --defaults-file=/data/mysql/backup-my.cnf --user=mysql --datadir=/data/mysql &
2. Login ke klien untuk verifikasi.
Nota:
A senha inserida após executar o comando é a senha da conta root do banco de dados na nuvem para o qual você está restaurando o arquivo de backup.
Pertanyaan Umum terkait Cadangan