MySQL5.7.26 MHA叢集部署操作手冊
說明:
基於CentOS7.6系統安裝
使用MySQL 5.7.26,MHA 0.58版本安裝
1.系統配置
1.關閉防火牆
systemctl stop firewalld.service
systemctl disable firewalld.service
2.關閉SElinux
sed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/selinux/config
setenforce 0
3.設定主機名
IP | hostname | 角色 |
10.10.10.50 | manager | MHA manager |
10.10.10.51 | mysql01 | MySQL DB Server - Master, MHA Node |
10.10.10.52 | mysql02 | MySQL DB Server- Slave, MHA Node |
10.10.10.53 | mysql03 | MySQl DB Server - Slave, MHA Node |
2.配置各節點間SSH互信
ssh-keygen
ssh-copy-id manager
ssh-copy-id mysql01
ssh-copy-id mysql02
ssh-copy-id mysql03
3.安裝MHA Manager
yum -y install epel-release net-tools
yum -y install perl-DBD-MySQL perl-Config-Tiny perl-Log-Dispatch perl-Parallel-ForkManager
rpm -ivh mha4mysql-node-0.58-0.el7.centos.noarch.rpm
rpm -ivh mha4mysql-manager-0.58-0.el7.centos.noarch.rpm
4.安裝MHA Node
yum -y install epel-release net-tools
yum -y install perl-DBD-MySQL perl-Config-Tiny perl-Log-Dispatch perl-Parallel-ForkManager
rpm -ivh mha4mysql-node-0.58-0.el7.centos.noarch.rpm
5.部署GTID一主二從環境
略
備庫執行set global read_only=on;不要寫入配置檔案
create user root@'%' identified by 'mysql';
grant all on *.* to root@'%';
用於監控
6.配置MHA
mkdir -p /masterha/log
mkdir -p /masterha/tmp
mkdir -p /masterha/mysql
mkdir -p /masterha/app1
touch /masterha/log/app1_manager.log
vim /etc/masterha_default.cnf
vim /etc/mha/app1.cnf
vim /masterha/scripts/master_ip_failover
vim /masterha/scripts/master_ip_online_change
vim /masterha/scripts/send_report
檢查配置
masterha_check_ssh --conf=/etc/mha/app1.cnf
masterha_check_repl --conf=/etc/mha/app1.cnf
7.啟動MHA
master(mysql01)執行:
ifconfig ens32:1 10.10.10.61/24
manager執行:
nohup
masterha_manager --conf=/etc/mha/app1.cnf --remove_dead_master_conf
--ignore_last_failover < /dev/null >
/masterha/log/app1_manager.log 2>&1 &
masterha_check_status --conf=/etc/mha/app1.cnf
8.線上切換
關閉MHA
masterha_stop --conf=/etc/mha/app1.cnf
切換
masterha_master_switch
--conf=/etc/mha/app1.cnf --master_state=alive
--new_master_host=10.10.10.52 --orig_master_is_new_slave
--running_updates_limit=10000 --interactive=0
登入資料庫透過show master status; show slave status;檢查,資料庫角色切換成功
重新啟動MHA
nohup
masterha_manager --conf=/etc/mha/app1.cnf --remove_dead_master_conf
--ignore_last_failover < /dev/null >
/masterha/log/app1_manager.log 2>&1 &
9.failover
模擬主庫故障,殺掉master節點MySQL程式(mysql01)
主庫切換至mysql02
VIP漂移至mysql02
/etc/mha/app1.cnf中mysql01的資訊被刪除
mysql03主庫重定向為mysql02
10.恢復踢出節點
關閉MHA:
masterha_stop --conf=/etc/mha/app1.cnf
/etc/mha/app1.cnf中恢復mysql01資訊
[server1]
candidate_master=1
hostname=10.10.10.51
port=3306
mysql01啟動資料庫並恢復(生產環境根據情況可能需要完全恢復),並加入主從
CHANGE
MASTER TO MASTER_HOST ='10.10.10.52',MASTER_PORT =3306,MASTER_USER
='repl',MASTER_PASSWORD ='mysql',MASTER_AUTO_POSITION = 1;
重新啟動MHA:
nohup
masterha_manager --conf=/etc/mha/app1.cnf --remove_dead_master_conf
--ignore_last_failover < /dev/null >
/masterha/log/app1_manager.log 2>&1 &
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70000068/viewspace-2776806/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- MySQL MHA部署 Part 5 MHA部署指南MySql
- 部署分片叢集
- docker部署mysql叢集DockerMySql
- Docker部署ElasticSearch叢集DockerElasticsearch
- jquery操作手冊jQuery
- vi 操作手冊
- Mysql MHA部署-04MHA配置MySql
- 構建MHA實現MySQL高可用叢集架構MySql架構
- Redis 4.0叢集環境部署Redis
- 如何部署hadoop叢集Hadoop
- Redis Cluster叢集模式部署Redis模式
- rman duplicate操作手冊
- GIt tag 操作手冊Git
- DHorse操作手冊
- PDB插拔操作手冊
- RMAN基本操作手冊
- 是操作手冊更是安全手冊
- redis叢集之主從複製叢集的原理和部署Redis
- CentOS部署ElasticSearch7.6.1叢集CentOSElasticsearch
- 使用docker部署hadoop叢集DockerHadoop
- 二、Linux部署RabbitMQ叢集LinuxMQ
- Windows Server上部署IoTdb 叢集WindowsServer
- Docker叢集輕鬆部署ApacheStormDockerApacheORM
- redis叢集之分片叢集的原理和常用代理環境部署Redis
- kraken軟體操作手冊
- 磁碟陣列操作手冊陣列
- ECG操作手冊--AndroidAndroid
- Mysql MHA部署-03MHA軟體安裝MySql
- MySQL MHA部署實戰MySql
- 基於Ubuntu部署企業級kubernetes叢集---k8s叢集容部署UbuntuK8S
- Redis-cluster叢集搭建部署Redis
- 部署Spark2.2叢集(on Yarn模式)SparkYarn模式
- 部署spark2.2叢集(standalone模式)Spark模式
- Hadoop2.7.2叢集的部署Hadoop
- Rabbitmq叢集高可用部署詳細MQ
- docker 下部署mongodb Replica Set 叢集DockerMongoDB
- TDengine 叢集 多機器docker 部署Docker
- KubeSphere 部署 Kafka 叢集實戰指南Kafka