Rumah > pangkalan data > tutorial mysql > Penyelesaian sandaran dan pemulihan berbilang untuk MySql: Bagaimana untuk memulihkan pangkalan data MySQL daripada berbilang sandaran

Penyelesaian sandaran dan pemulihan berbilang untuk MySql: Bagaimana untuk memulihkan pangkalan data MySQL daripada berbilang sandaran

WBOY
Lepaskan: 2023-06-16 08:24:09
asal
2231 orang telah melayarinya

MySQL ialah sistem pengurusan pangkalan data sumber terbuka popular yang digunakan secara meluas dalam pelbagai projek dan perusahaan. Pangkalan data adalah teras projek, dan data di dalamnya juga merupakan bahagian yang sangat diperlukan dalam projek, jadi sandaran dan pemulihan pangkalan data sangat penting. Dalam artikel ini, kami akan meneroka cara memastikan keselamatan pangkalan data MySQL melalui pelbagai penyelesaian sandaran dan pemulihan.

Kaedah pertama: Gunakan arahan mysqldump untuk membuat sandaran pangkalan data

Mysqldump ialah arahan yang paling biasa digunakan untuk sandaran MySQL. Ia boleh menyandarkan keseluruhan pangkalan data atau jadual individu. Sintaks asas perintah mysqldump adalah seperti berikut:

 mysqldump -h host -u user -p database_name > backup.sql
Salin selepas log masuk

Penjelasan parameter:

  • -h: Tentukan hos di mana pangkalan data yang akan disandarkan terletak.
  • -u: Tentukan nama pengguna untuk disambungkan ke pangkalan data.
  • -p: Tentukan kata laluan pengguna untuk menyambung ke pangkalan data.
  • database_name: Tentukan nama pangkalan data untuk disandarkan.
  • : Simpan data yang disandarkan ke fail yang ditentukan.

Fail yang disandarkan boleh disimpan pada pelayan tempatan atau pada pelayan jauh. Apabila anda perlu memulihkan pangkalan data, hanya gunakan arahan berikut:

mysql -u user -p database_name < backup.sql
Salin selepas log masuk

Penjelasan parameter:

  • -u: Tentukan nama pengguna untuk disambungkan ke pangkalan data.
  • -p: Tentukan kata laluan pengguna untuk menyambung ke pangkalan data.
  • database_name: Tentukan nama pangkalan data untuk dipulihkan.
  • <: Baca data daripada fail sandaran yang ditentukan.

Kedua: Gunakan sandaran log binari MySQL

Log binari MySQL boleh digunakan untuk merekodkan semua perubahan pada data MySQL. Dengan menggunakan sandaran log binari, kami boleh memulihkan semua perubahan semasa memulihkan pangkalan data, bukan hanya data selepas sandaran. Untuk menjana sandaran log binari, sila ikuti langkah di bawah:

  1. Dayakan fungsi log binari.

Tambah baris berikut dalam fail konfigurasi MySQL:

[mysqld]
log-bin=/var/lib/mysql/binlog/mysql-bin.log
Salin selepas log masuk
  1. Mulakan semula perkhidmatan MySQL.
sudo /etc/init.d/mysql restart
Salin selepas log masuk
  1. Cipta sandaran log binari.

Anda boleh membuat sandaran log binari dengan melaksanakan arahan berikut:

SHOW MASTER STATUS;
Salin selepas log masuk

Selepas melaksanakan arahan ini, MySQL akan mengembalikan nama dan lokasi log binari.

  1. Gunakan sandaran log binari apabila memulihkan data.

Gunakan arahan berikut untuk memulihkan data:

mysqlbinlog --start-position=512 mysql-bin.000001 > backup.sql
Salin selepas log masuk

Arahan ini akan membaca semua perubahan daripada log binari dan menulisnya ke fail sandaran. Kami kemudiannya boleh menggunakan arahan mysqldump untuk memulihkan data sandaran ke dalam pangkalan data.

Jenis ketiga: Gunakan Percona XtraBackup untuk membuat sandaran dan memulihkan pangkalan data

Percona XtraBackup ialah alat untuk membuat sandaran dan memulihkan pangkalan data MySQL, yang boleh mengurangkan masa sandaran dan masa pemulihan serta mengurangkan masa sandaran dan risiko pemulihan. Ia adalah alat sumber terbuka percuma yang dibangunkan dan diselenggara oleh Percona. Berikut ialah langkah untuk membuat sandaran dan memulihkan data menggunakan Percona XtraBackup:

  1. Memasang Percona XtraBackup

Pada sistem Ubuntu, anda boleh menggunakan arahan berikut untuk memasang Percona XtraBackup:

sudo apt-get install percona-xtrabackup
Salin selepas log masuk
  1. Buat Sandaran

Buat sandaran menggunakan arahan berikut:

sudo innobackupex --user=root --password=yourpassword /var/backup/
Salin selepas log masuk

Ini akan mencipta fail sandaran lengkap dalam /var/backup/ direktori. Masa sandaran bergantung pada saiz pangkalan data.

  1. Pulihkan sandaran

Sebelum memulihkan sandaran, pelayan MySQL mesti dihentikan dan pangkalan data MySQL sedia ada dipadamkan. Selepas sandaran selesai, hentikan pelayan MySQL:

sudo /etc/init.d/mysql stop
Salin selepas log masuk

Kemudian, padam pangkalan data MySQL sedia ada:

sudo rm -rf /var/lib/mysql/*
Salin selepas log masuk

Akhir sekali, pulihkan pangkalan data daripada fail sandaran:

sudo innobackupex --user=root --password=yourpassword --copy-back /var/backup/
Salin selepas log masuk

Proses Pemulihan Ia akan mengambil sedikit masa, bergantung pada saiz data sandaran. Setelah selesai, anda boleh memulakan semula pelayan MySQL:

sudo /etc/init.d/mysql start
Salin selepas log masuk

Ringkasan:

Tidak kira kaedah sandaran yang anda gunakan, pastikan anda menggunakan kaedah dan alatan yang betul untuk membuat sandaran dan memulihkan pangkalan data anda. Bukan sahaja penyelesaian sandaran berbilang harus digunakan, tetapi sandaran juga harus diuji secara berkala untuk memastikan data boleh dipulihkan tepat pada masanya sekiranya berlaku bencana. Strategi sandaran dan pemulihan yang baik adalah kunci untuk memastikan keselamatan pangkalan data.

Atas ialah kandungan terperinci Penyelesaian sandaran dan pemulihan berbilang untuk MySql: Bagaimana untuk memulihkan pangkalan data MySQL daripada berbilang sandaran. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan