Rumah  >  Artikel  >  pangkalan data  >  Teknologi sandaran pemampatan data dalam MySQL

Teknologi sandaran pemampatan data dalam MySQL

王林
王林asal
2023-06-15 17:23:211789semak imbas

Apabila jumlah data terus meningkat, sandaran pangkalan data menjadi semakin sukar. Sandaran bukan sahaja memerlukan integriti dan konsistensi data, tetapi juga memerlukan kelajuan sandaran dan saiz fail sandaran untuk memenuhi keperluan sebenar. Teknologi sandaran pemampatan data muncul mengikut keperluan masa dan telah menjadi salah satu cara teknikal yang sangat diperlukan untuk sandaran pangkalan data.

MySQL ialah salah satu pangkalan data hubungan yang paling popular pada masa ini. Alat sandaran rasmi mysqldump tidak dapat memenuhi keperluan sandaran termampat. Oleh itu, artikel ini akan memperkenalkan proses terperinci menggunakan perintah mampatan tar dan gzip pada sistem Linux dengan parameter yang sesuai untuk mencapai sandaran termampat MySQL.

  1. Perintah sandaran mampatan

Pada sistem Linux, tar ialah perintah mampatan yang sangat biasa digunakan. Penggunaannya adalah seperti berikut:

tar [cxtzJvfpP] [name-of-archive] [files-or-directories-to-archive]

Antaranya, maksud setiap parameter adalah seperti berikut:

  • c: Buat arkib baharu;
  • x: Ekstrak fail daripada arkib;
  • t: Senaraikan senarai fail dalam arkib; melalui bzip2;
  • v: Paparkan nama fail semasa memproses fail; p: Kekalkan kebenaran dan atribut asal fail;
  • P: Jangan gunakan laluan mutlak, kekalkan laluan relatif; >
  • fail-atau-direktori-untuk-arkib: Tentukan fail atau direktori untuk dimampatkan.
  • Apa yang ingin kami gunakan di sini ialah parameter czf, yang bermaksud mencipta pakej tar baharu, memampatkannya dengan gzip dan memaparkan nama fail semasa memproses fail. Perintah khusus adalah seperti berikut:
  • tar czf backup.tar.gz /path/to/backup/files/
  • Antaranya, /path/to/backup/files/ menentukan fail atau direktori untuk disandarkan.
  • Arahan sandaran MySQL
  • Sebelum menyandarkan MySQL, anda perlu mencipta pengguna dengan kebenaran SELECT, SHOW VIEW, RELOAD, SUPER dan LOCK TABLES. Mengambil pengguna root sebagai contoh, anda boleh menggunakan arahan berikut untuk mencipta pengguna sandaran:
  • CREATE USER 'backupuser'@'localhost' IDENTIFIED BY 'mypassword';
    GRANT SELECT, SHOW VIEW, RELOAD, SUPER, LOCK TABLES ON *.* TO 'backupuser'@'localhost';
    FLUSH PRIVILEGES;
Kemudian, anda boleh menggunakan arahan berikut untuk membuat sandaran pangkalan data:

mysqldump -u backupuser -p'mypassword' --single-transaction --skip-lock-tables dbname | gzip > backup.sql.gz

Antaranya , --single-transaction dan --skip- Parameter jadual kunci sepadan dengan tetapan sandaran transaksi MySQL dan kunci jadual masing-masing. dbname mewakili nama pangkalan data yang akan disandarkan, dan backup.sql.gz ialah nama penuh fail yang disimpan selepas sandaran.

    Sandaran automatik
Dalam aplikasi praktikal, sandaran automatik ialah kaedah sandaran yang paling biasa dan boleh dipercayai. Di bawah sistem Linux, anda boleh menggunakan arahan crontab untuk melaksanakan arahan sandaran secara kerap dan menyimpan fail sandaran ke direktori yang ditentukan. Berikut ialah contoh melakukan sandaran pada pukul 1 pagi setiap hari:

0 1 * * * tar czf /backup/dbbackup-`date +%Y-%m-%d`.tar.gz /path/to/backup/files/ && mysqldump -u backupuser -p'mypassword' --single-transaction --skip-lock-tables dbname | gzip > /backup/backup-`date +%Y-%m-%d`.sql.gz

Antaranya, %Y mewakili tahun, %m mewakili bulan dan %d mewakili tarikh mencipta sandaran baharu secara automatik berdasarkan maklumat tarikh.

Pulihkan sandaran

  1. Apabila anda perlu memulihkan pangkalan data, anda boleh menggunakan arahan berikut:
  2. gunzip backup.sql.gz
Ekstrak fail sandaran dan dapatkan sandaran fail dalam format .sql. Kemudian, import fail ini ke dalam pangkalan data MySQL:

mysql -u root -p dbname < backup.sql

Antaranya, dbname mewakili nama pangkalan data di mana data perlu dipulihkan.

    Ringkasan
Artikel ini memperkenalkan proses terperinci penggunaan tar dan gzip digabungkan dengan parameter yang sesuai untuk melaksanakan sandaran MySQL di bawah sistem Linux. Melalui sandaran automatik, pengurusan sandaran boleh dipermudahkan, kecekapan dan kebolehpercayaan pemulihan data boleh dipertingkatkan, dan pengguna boleh melindungi keselamatan data dengan lebih baik.

Atas ialah kandungan terperinci Teknologi sandaran pemampatan data dalam MySQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn