Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk melaksanakan operasi silang pelayan dan pangkalan data silang data dalam MySQL?

Bagaimana untuk melaksanakan operasi silang pelayan dan pangkalan data silang data dalam MySQL?

WBOY
WBOYasal
2023-07-30 14:39:191853semak imbas

MySQL ialah sistem pengurusan pangkalan data hubungan sumber terbuka yang digunakan secara meluas untuk penyimpanan data dan pengurusan aplikasi web. Dalam senario aplikasi sebenar, kami selalunya perlu melaksanakan operasi silang pelayan dan pangkalan data silang pada data, seperti penyegerakan data, pemindahan data atau pengurusan data teragih antara berbilang pangkalan data.

Yang berikut memperkenalkan kaedah dan kod sampel tentang cara melaksanakan operasi silang pelayan dan pangkalan data silang data dalam MySQL.

  1. Gunakan enjin storan Bersekutu
    Enjin storan bersekutu ialah enjin storan yang disediakan oleh MySQL Melalui enjin storan ini, kami boleh mencipta jadual dalam contoh MySQL yang disambungkan ke pelayan MySQL lain, dengan itu merealisasikan operasi merentas pelayan data. .

Pertama, kita perlu mendayakan enjin storan Bersekutu pada pelayan MySQL. Tambahkan konfigurasi berikut dalam fail konfigurasi my.cnf:

[mysqld]
federated = ON

Kemudian buat jadual Bersekutu dalam pangkalan data dan nyatakan maklumat pelayan MySQL jauh untuk disambungkan:

CREATE TABLE federated_table (
    id INT(11) AUTO_INCREMENT,
    data VARCHAR(100),
    PRIMARY KEY (id)
) ENGINE=FEDERATED
DEFAULT CHARSET=utf8
CONNECTION='mysql://[用户名]:[密码]@[远程MySQL服务器IP地址]:[端口号]/[数据库名]/[远程表名]';

Dalam kod di atas, [nama pengguna], [kata laluan] , [Alamat IP pelayan MySQL jauh], [Nombor port], [Nama pangkalan data], [Nama jadual jauh] hendaklah diganti mengikut situasi sebenar. Selepas penciptaan berjaya, kami boleh melakukan operasi data silang pelayan dengan mengendalikan jadual Bersekutu ini.

  1. Gunakan fungsi Replikasi
    Fungsi Replikasi MySQL boleh menyalin data pada satu pelayan MySQL ke pelayan MySQL yang lain untuk mencapai operasi data merentas pelayan.

Pertama, konfigurasikan pada pangkalan data utama. Tambahkan konfigurasi berikut dalam fail konfigurasi my.cnf:

[mysqld]
server-id=1
log_bin=mysql-bin
binlog_format=row

Kemudian mulakan semula perkhidmatan MySQL.

Konfigurasikan pada pangkalan data hamba. Tambahkan konfigurasi berikut dalam fail konfigurasi my.cnf:

[mysqld]
server-id=2

Kemudian mulakan semula perkhidmatan MySQL.

Buat akaun replikasi pada pangkalan data induk dan berikan kebenaran replikasi:

CREATE USER 'repl_user'@'从数据库IP地址' IDENTIFIED BY 'repl_password';
GRANT REPLICATION SLAVE ON *.* TO 'repl_user'@'从数据库IP地址';

Antaranya, alamat IP pangkalan data hamba perlu diganti dengan alamat IP pangkalan data hamba sebenar.

Kemudian semak nama fail dan lokasi log binari pada pangkalan data utama:

SHOW MASTER STATUS;

Rekodkan nilai Fail dan Kedudukan.

Tetapkan maklumat yang direplikasi pada pangkalan data hamba:

CHANGE MASTER TO
MASTER_HOST='主数据库IP地址',
MASTER_USER='repl_user',
MASTER_PASSWORD='repl_password',
MASTER_LOG_FILE='二进制日志的文件名',
MASTER_LOG_POS=二进制日志的位置;

Antaranya, alamat IP pangkalan data induk perlu diganti dengan alamat IP pangkalan data induk sebenar, dan nama fail serta lokasi log binari harus menggunakan nilai direkodkan pada langkah sebelumnya.

Kemudian mulakan proses replikasi pada pangkalan data hamba:

START SLAVE;

Anda boleh menyemak status proses replikasi melalui arahan SHOW SLAVE STATUSG.

Dengan cara ini, operasi pengubahsuaian data pada pangkalan data induk akan disegerakkan ke pangkalan data hamba, merealisasikan operasi data merentas pelayan.

Ringkasnya, MySQL boleh merealisasikan operasi merentas pelayan dan pangkalan data silang data melalui enjin storan Bersekutu dan fungsi replikasi Replikasi. Pembangun boleh memilih kaedah yang sesuai untuk melaksanakan operasi data silang pelayan dan pangkalan data berdasarkan keperluan sebenar.

Di atas adalah kaedah dan kod sampel untuk melaksanakan operasi silang pelayan dan pangkalan data silang dalam MySQL. Saya harap ia akan membantu anda.

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan operasi silang pelayan dan pangkalan data silang 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