日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
mysql分布式集群怎么搭建
搭建MySQL分布式集群需要使用MySQL Cluster技術(shù),首先安裝管理節(jié)點(diǎn)和數(shù)據(jù)節(jié)點(diǎn),然后配置集群參數(shù),最后啟動(dòng)集群并進(jìn)行測(cè)試。

搭建MySQL分布式集群需要以下幾個(gè)步驟:

創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、外貿(mào)網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的波密網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

1、準(zhǔn)備硬件環(huán)境

2、安裝MySQL數(shù)據(jù)庫

3、配置MySQL主從復(fù)制

4、安裝和配置ProxySQL

5、測(cè)試集群功能

1. 準(zhǔn)備硬件環(huán)境

為了搭建一個(gè)MySQL分布式集群,我們需要至少3臺(tái)服務(wù)器,其中一臺(tái)作為主服務(wù)器(Master),另外兩臺(tái)作為從服務(wù)器(Slave),這里假設(shè)我們已經(jīng)準(zhǔn)備好了3臺(tái)服務(wù)器,它們的IP地址分別為:

主服務(wù)器:192.168.1.1

從服務(wù)器1:192.168.1.2

從服務(wù)器2:192.168.1.3

2. 安裝MySQL數(shù)據(jù)庫

在3臺(tái)服務(wù)器上分別安裝MySQL數(shù)據(jù)庫,這里以Ubuntu系統(tǒng)為例,使用以下命令安裝:

sudo aptget update
sudo aptget install mysqlserver

安裝完成后,登錄MySQL,修改root用戶的密碼:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'your_password';

3. 配置MySQL主從復(fù)制

3.1 配置主服務(wù)器

編輯主服務(wù)器的/etc/mysql/mysql.conf.d/mysqld.cnf文件,添加以下內(nèi)容:

[mysqld]
serverid=1
logbin=mysqlbin
binlogformat=mixed

重啟MySQL服務(wù):

sudo service mysql restart

創(chuàng)建用于復(fù)制的用戶:

CREATE USER 'repl'@'%' IDENTIFIED BY 'repl_password';
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';
FLUSH PRIVILEGES;

查看主服務(wù)器狀態(tài):

SHOW MASTER STATUS;

記下FilePosition的值,稍后在從服務(wù)器上配置時(shí)需要用到。

3.2 配置從服務(wù)器

編輯從服務(wù)器的/etc/mysql/mysql.conf.d/mysqld.cnf文件,添加以下內(nèi)容:

[mysqld]
serverid=2
relaylog=relaylog

重啟MySQL服務(wù):

sudo service mysql restart

在從服務(wù)器上配置主服務(wù)器信息:

CHANGE MASTER TO
MASTER_HOST='192.168.1.1',
MASTER_USER='repl',
MASTER_PASSWORD='repl_password',
MASTER_LOG_FILE='之前記錄的File值',
MASTER_LOG_POS=之前記錄的Position值;

啟動(dòng)從服務(wù)器上的復(fù)制進(jìn)程:

START SLAVE;

查看從服務(wù)器狀態(tài),確保復(fù)制正常:

SHOW SLAVE STATUS\G;

4. 安裝和配置ProxySQL

在一臺(tái)新的服務(wù)器上安裝ProxySQL,用于負(fù)載均衡和故障轉(zhuǎn)移,這里以Ubuntu系統(tǒng)為例,使用以下命令安裝:

wget https://repo.proxysql.com/ProxySQL2.0.131ubuntu18.04.x86_64.sh
chmod +x ProxySQL2.0.131ubuntu18.04.x86_64.sh
sudo ./ProxySQL2.0.131ubuntu18.04.x86_64.sh

安裝完成后,編輯/etc/proxysql.cnf文件,添加以下內(nèi)容:

mysql_user: proxysql
mysql_password: proxysql_password

重啟ProxySQL服務(wù):

sudo service proxysql restart

登錄ProxySQL管理界面:

mysql uadmin padmin h127.0.0.1 P6032 prompt='ProxySQL> '

添加主服務(wù)器和從服務(wù)器的信息:

INSERT INTO global_variables (variable_name, variable_value) VALUES('mysqlmaster.hostgroups', 'group1');
INSERT INTO global_variables (variable_name, variable_value) VALUES('mysqlmaster.load_balance', 'ON');
INSERT INTO global_variables (variable_name, variable_value) VALUES('mysqlmaster.failover_on_error', 'OFF');
INSERT INTO global_variables (variable_name, variable_value) VALUES('mysqlslave.read_only', 'ON');
INSERT INTO global_variables (variable_name, variable_value) VALUES('mysqlslave.ignore_auto_incr', 'ON');
INSERT INTO global_variables (variable_name, variable_value) VALUES('mysqlslave.net_write_timeout', '10000');
INSERT INTO global_variables (variable_name, variable_value) VALUES('mysqlslave.net_read_timeout', '10000');

添加主服務(wù)器和從服務(wù)器的訪問信息:

INSERT INTO mysql_servers (hostname, port, username, password, weight) VALUES('192.168.1.1', 3306, 'root', 'your_password', 1);
INSERT INTO mysql_servers (hostname, port, username, password, weight) VALUES('192.168.1.2', 3306, 'root', 'your_password', 1);
INSERT INTO mysql_servers (hostname, port, username, password, weight) VALUES('192.168.1.3', 3306, 'root', 'your_password', 1);

創(chuàng)建用戶和訪問權(quán)限:

INSERT INTO users (username, password, preferred_hostgroup, hostgroup) VALUES('client', 'client_password', 'group1', 'group1');
INSERT INTO mysql_query_rules (rule_id, active, source_hostgroup, target_hostgroup, sql_pattern, replacement_pattern) VALUES(1, 'Y', 'group1', 'group1', 'SELECT @@GLOBAL\\.GTID_EXECUTED', '');
INSERT INTO mysql_query_rules (rule_id, active, source_hostgroup, target_hostgroup, sql_pattern, replacement_pattern) VALUES(2, 'Y', 'group1', 'group1', 'BINLOG_WAIT_EVENT', '');
INSERT INTO mysql_query_rules (rule_id, active, source_hostgroup, target_hostgroup, sql_pattern, replacement_pattern) VALUES(3, 'Y', 'group1', 'group1', 'BINLOG_CHECKPOINT', '');
INSERT INTO mysql_query_rules (rule_id, active, source_hostgroup, target_hostgroup, sql_pattern, replacement_pattern) VALUES(4, 'Y', 'group1', 'group1', 'RESET MASTER', '');
INSERT INTO mysql_query_rules (rule_id, active, source_hostgroup, target_hostgroup, sql_pattern, replacement_pattern) VALUES(5, 'Y', 'group1', 'group1', 'SHOW MASTER STATUS', '');
INSERT INTO mysql_query_rules (rule_id, active, source_hostgroup, target_hostgroup, sql_pattern, replacement_pattern) VALUES(6, 'Y', 'group1', 'group1', 'START MASTER', '');
INSERT INTO mysql_query_rules (rule_id, active, source_hostgroup, target_hostgroup, sql_pattern, replacement_pattern) VALUES(7, 'Y', 'group1', 'group1', 'STOP MASTER', '');
INSERT INTO mysql_query_rules (rule_id, active, source_hostgroup, target_hostgroup, sql_pattern, replacement_pattern) VALUES(8, 'Y', 'group1', 'group1', 'SHOW SLAVE STATUS', '');
INSERT INTO mysql_query_rules (rule_id, active, source_hostgroup, target_hostgroup, sql_pattern, replacement_pattern) VALUES(9, 'Y', 'group1', 'group1', 'SHOW BINARY LOGS', '');

重啟ProxySQL服務(wù):

sudo service proxysql

本文名稱:mysql分布式集群怎么搭建
URL分享:http://www.dlmjj.cn/article/cdoisje.html