Rumah > pangkalan data > tutorial mysql > Cara menggunakan replikasi tuan-hamba MySQL untuk melaksanakan seni bina pemisahan baca-tulis

Cara menggunakan replikasi tuan-hamba MySQL untuk melaksanakan seni bina pemisahan baca-tulis

WBOY
Lepaskan: 2023-08-02 09:21:29
asal
940 orang telah melayarinya

Cara menggunakan replikasi tuan-hamba MySQL untuk melaksanakan seni bina pemisahan baca-tulis

Dalam aplikasi web tradisional, operasi baca dan tulis biasanya disambungkan ke pelayan pangkalan data yang sama. Apabila aplikasi membangun dan volum akses meningkat, seni bina ini boleh membawa kepada kesesakan prestasi pangkalan data dengan mudah. Untuk menyelesaikan masalah ini, replikasi tuan-hamba MySQL boleh digunakan untuk melaksanakan seni bina pemisahan baca-tulis. Artikel ini akan memperkenalkan cara menggunakan replikasi tuan-hamba MySQL untuk mencapai pemisahan baca-tulis, dan menyediakan contoh kod yang sepadan.

  1. Persediaan alam sekitar
    Pertama, pastikan anda telah memasang MySQL pada pelayan dan pastikan pangkalan data master dan slave boleh berkomunikasi secara normal. Jika MySQL belum dipasang lagi, sila ikuti dokumentasi rasmi untuk memasang dan menyediakannya. . pangkalan data:
  2. # 设置为主数据库
    server-id=1
    log-bin=mysql-bin
    Salin selepas log masuk

  3. Konfigurasikan pangkalan data hamba
  4. Konfigurasikan yang berikut pada pangkalan data hamba:

(1) Buka fail konfigurasi my.cnf pangkalan data hamba dan tambah konfigurasi berikut pada penghujung:

$ sudo service mysql restart
Salin selepas log masuk
Salin selepas log masuk

(2 ) Mulakan semula pangkalan data hamba:
    # 设置为从数据库
    server-id=2
    relay-log=mysql-relay-bin
    Salin selepas log masuk

  1. Buat Pengguna Replikasi
Buat pengguna untuk replikasi pada pangkalan data utama dan berikan kebenaran yang sepadan. Jalankan arahan berikut:

$ sudo service mysql restart
Salin selepas log masuk
Salin selepas log masuk

Mulakan replikasi tuan-hamba
    Laksanakan arahan berikut pada pangkalan data hamba untuk memulakan replikasi tuan-hamba:
  1. mysql> CREATE USER 'replication'@'%' IDENTIFIED BY 'password';
    mysql> GRANT REPLICATION SLAVE ON *.* TO 'replication'@'%';
    mysql> FLUSH PRIVILEGES;
    Salin selepas log masuk


    Sahkan replikasi tuan-hamba
  2. Laksanakan perintah berikut pada pangkalan data hamba untuk melihat Status replikasi tuan-hamba:
  3. mysql> CHANGE MASTER TO MASTER_HOST='主数据库IP', MASTER_USER='replication', MASTER_PASSWORD='password', MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=0;
    mysql> START SLAVE;
    Salin selepas log masuk

    Pastikan dua parameter berikut mempunyai nilai "YA":

    mysql> SHOW SLAVE STATUS G
    Salin selepas log masuk

    Jika ralat berlaku, anda perlu menyemak sama ada konfigurasi replikasi dan sambungan pangkalan data disediakan dengan betul.
  4. Mencapai pemisahan baca-tulis
    Setelah replikasi tuan-hamba berjaya dikonfigurasikan, pemisahan baca-tulis boleh dicapai. Dalam aplikasi, pangkalan data hamba disambungkan untuk operasi baca dan pangkalan data induk disambungkan untuk operasi tulis. Ini boleh menggunakan sumber pangkalan data dengan berkesan dan meningkatkan prestasi dan kestabilan sistem.

    Berikut ialah contoh kod menggunakan bahasa Java untuk menunjukkan cara menyambung pangkalan data master-slave untuk melengkapkan operasi pemisahan baca-tulis:

    Slave_IO_Running: Yes
    Slave_SQL_Running: Yes
    Salin selepas log masuk
    Di atas adalah langkah dan contoh kod untuk menggunakan replikasi master-slave MySQL untuk melaksanakan seni bina pemisahan baca-tulis. Melalui seni bina ini, operasi baca boleh diperuntukkan kepada pangkalan data hamba, dengan berkesan meningkatkan prestasi dan kestabilan sistem. Harap ini membantu!

Atas ialah kandungan terperinci Cara menggunakan replikasi tuan-hamba MySQL untuk melaksanakan seni bina pemisahan baca-tulis. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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