Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk melaksanakan replikasi tuan-hamba pangkalan data MySQL dalam PHP
Dengan perkembangan pesat Internet, aplikasi web semakin menyepadukan operasi pangkalan data. MySQL ialah sistem pangkalan data hubungan yang terkenal di dunia yang digunakan secara meluas. Dalam aplikasi web yang sangat serentak, replikasi tuan-hamba MySQL adalah cara penting untuk meningkatkan prestasi dan ketersediaan pangkalan data. Artikel ini akan memperkenalkan cara menggunakan PHP untuk melaksanakan replikasi master-slave pangkalan data MySQL.
1. Apakah replikasi master-slave MySQL
Replikasi master-slave MySQL merujuk kepada menyalin data satu pelayan pangkalan data MySQL ke pelayan lain untuk memastikan data kedua-dua pelayan MySQL konsisten. Salah satu pelayan dipanggil pelayan induk dan bertanggungjawab untuk mengemas kini data dalam masa nyata; pelayan lain dipanggil pelayan hamba dan bertanggungjawab untuk menyegerakkan data daripada pelayan induk. Replikasi tuan-hamba boleh meningkatkan kebolehskalaan dan toleransi kesalahan sistem. Sebagai contoh, apabila pelayan utama turun, pelayan hamba boleh mengambil alih kerja pelayan utama untuk memastikan operasi normal perniagaan.
2. Prinsip pelaksanaan replikasi tuan-hamba
Prinsip pelaksanaan replikasi tuan-hamba adalah seperti berikut:
3. Bagaimana untuk melaksanakan replikasi tuan-hamba dalam PHP
Pelayan utama memerlukan untuk dikonfigurasikan dalam my.cnf Dayakan pengelogan binari dalam fail. Buka fail my.cnf dan tambah konfigurasi berikut dalam bahagian [mysqld]:
server-id=1 log-bin=/var/log/mysql/mysql-bin.log
Antaranya, server-id digunakan untuk mengenal pasti pelayan utama, dan log-bin digunakan untuk menentukan laluan fail log itu.
Pelayan hamba perlu menambah maklumat sambungan pelayan induk dalam fail konfigurasi my.cnf. Buka fail my.cnf dan tambahkan konfigurasi berikut dalam bahagian [inisd_client]:
server-id=2 master-host=10.0.0.1 master-user=repl_user master-password=repl_password master-port=3306
Antaranya, server-id digunakan untuk mengenal pasti pelayan hamba, tuan-tuan menentukan alamat IP pelayan induk , master-user dan master -password menentukan nama pengguna dan kata laluan pelayan induk, dan master-port menentukan nombor port pelayan induk.
Buat pengguna pada pelayan induk untuk data replikasi dan benarkan pengguna membaca log binari. Buka klien MySQL dan laksanakan arahan berikut:
mysql> CREATE USER 'repl_user'@'%' IDENTIFIED BY 'repl_password'; mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl_user'@'%';
Jalankan arahan berikut dalam klien MySQL pelayan hamba untuk mulakan proses replikasi :
mysql> CHANGE MASTER TO MASTER_HOST='10.0.0.1', MASTER_USER='repl_user', MASTER_PASSWORD='repl_password', MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=107; mysql> START SLAVE;
Antaranya, MASTER_LOG_FILE dan MASTER_LOG_POS boleh didapati dalam Binary Log pelayan utama.
Selepas melengkapkan langkah di atas, pelayan hamba akan menyalin data daripada pelayan induk untuk memastikan data dalam dua pangkalan data konsisten.
4. Ringkasan
Replikasi master-slave MySQL ialah teknologi penting untuk meningkatkan prestasi dan ketersediaan sistem. Ia adalah sangat mudah untuk melaksanakan replikasi induk-hamba MySQL menggunakan PHP Anda hanya perlu mendayakan log binari pada pelayan induk, mengkonfigurasi maklumat pelayan induk pada pelayan hamba, mencipta pengguna replikasi, dan memulakan proses replikasi. Dalam persekitaran pengeluaran sebenar, perhatian harus diberikan untuk menggunakan cara teknikal yang sesuai untuk membantu operasi dan penyelenggaraan pangkalan data untuk memastikan kestabilan dan keselamatan perkhidmatan pangkalan data.
Atas ialah kandungan terperinci Bagaimana untuk melaksanakan replikasi tuan-hamba pangkalan data MySQL dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!