Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk menggunakan replikasi tuan-hamba dalam MySQL untuk mencapai sandaran dan pemulihan data?

Bagaimana untuk menggunakan replikasi tuan-hamba dalam MySQL untuk mencapai sandaran dan pemulihan data?

王林
王林asal
2023-07-30 10:49:481321semak imbas

Bagaimana untuk menggunakan replikasi tuan-hamba dalam MySQL untuk mencapai sandaran dan pemulihan data?

Sandaran dan pemulihan data adalah bahagian yang sangat penting dalam pengurusan pangkalan data. MySQL menyediakan fungsi Replikasi Master-Slave, yang boleh merealisasikan sandaran automatik dan pemulihan data. Artikel ini akan memperkenalkan secara terperinci cara mengkonfigurasi dan menggunakan fungsi replikasi tuan-hamba dalam MySQL.

1. Konfigurasikan pelayan induk (Master)

  1. Dalam fail konfigurasi my.cnf, tambahkan konfigurasi berikut:
[mysqld]
server-id = 1
log-bin = mysql-bin
binlog-do-db = your_database_name

Antaranya, server-id ialah ID pelayan dan boleh ditetapkan kepada mana-mana integer positif; log-bin ialah binari Awalan nama fail log binlog-do-db menentukan nama pangkalan data yang perlu disegerakkan.

  1. Mulakan semula perkhidmatan MySQL.
sudo service mysql restart
  1. Buat akaun untuk replikasi tuan-hamba dan berikan kebenaran replikasi.
CREATE USER 'replication_user'@'%' IDENTIFIED BY 'your_password';
GRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'%';
FLUSH PRIVILEGES;
  1. Semak status pelayan utama.
SHOW MASTER STATUS;

Rekodkan nilai Fail dan Kedudukan untuk kegunaan kemudian.

2. Konfigurasikan pelayan hamba (Slave)

  1. Dalam fail konfigurasi my.cnf, tambahkan konfigurasi berikut:
[mysqld]
server-id = 2

Antaranya, server-id ialah ID pelayan dan boleh ditetapkan kepada mana-mana integer positif.

  1. Mulakan semula perkhidmatan MySQL.
sudo service mysql restart
  1. Sambung ke pelayan hamba dan laksanakan arahan berikut:
CHANGE MASTER TO MASTER_HOST='master_ip', MASTER_USER='replication_user', MASTER_PASSWORD='your_password', MASTER_LOG_FILE='master_log_file', MASTER_LOG_POS=master_log_pos;

Ganti master_ip dengan alamat IP pelayan induk, replication_user dengan akaun replikasi pelayan induk, kata laluan anda dengan kata laluan akaun replikasi, dan master_log_file dengan nilai fail pelayan induk, master_log_pos digantikan dengan nilai Kedudukan pelayan induk.

  1. Mulakan replikasi dari pelayan.
START SLAVE;
  1. Semak status pelayan hamba.
SHOW SLAVE STATUSG

Jika nilai Slave_IO_Running dan Slave_SQL_Running kedua-duanya "Ya", ini bermakna konfigurasi replikasi tuan-hamba berjaya.

3. Sandaran dan pemulihan data

  1. Sandaran data

Apabila data pada pelayan induk berubah, MySQL akan merekodkan perubahan ini dalam fail log binari, dan pelayan hamba akan membaca fail log binari pelayan induk Segerakkan data.

  1. Data Recovery

Jika pelayan induk gagal, ia perlu ditukar kepada pelayan hamba untuk menyediakan perkhidmatan. Pada ketika ini, anda hanya perlu menaik taraf pelayan hamba kepada pelayan induk.

STOP SLAVE;
RESET SLAVE;  -- 清除从服务器的主从配置
RESET MASTER; -- 清除主服务器的主从配置

Kemudian ubah suai konfigurasi pelayan hamba, tetapkan id pelayannya kepada 1, dan mulakan semula perkhidmatan MySQL.

Dengan cara ini, pelayan hamba dinaik taraf kepada pelayan induk baharu Selepas pelayan induk asal dibaiki, ia boleh dikonfigurasikan sebagai pelayan hamba semula.

Setakat ini, kami telah mempelajari cara menggunakan replikasi tuan-hamba dalam MySQL untuk melaksanakan sandaran dan pemulihan data. Dengan mengkonfigurasi pelayan tuan-hamba dengan betul, anda boleh memastikan keselamatan dan ketersediaan data, mengurangkan risiko kehilangan data, dan meningkatkan kebolehpercayaan dan kecekapan sistem.

Atas ialah kandungan terperinci Bagaimana untuk menggunakan replikasi tuan-hamba dalam MySQL untuk mencapai sandaran dan pemulihan data?. 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