MySQL5.7.36之高可用架构部署-Atlas读写分离

1、安装Atlas-2.2.1.el6.x86_64.rpm

复制代码
rpm -ivh Atlas-2.2.1.el6.x86_64.rpm

2、进入Atlas目录并且备份配置文件

复制代码
cd /usr/local/mysql-proxy/conf
cp test.cnf test.cnf.bak

3、密码加密采用的是自带的工具

复制代码
/usr/local/mysql-proxy/bin/encrypt 123456 #因为我的密码是123456

4、修改配置文件

复制代码
vi /usr/local/mysql-proxy/conf/test.cnf
[mysql-proxy]
admin-username = root
admin-password = 123456
proxy-backend-addresses = 192.168.31.220:3306 #主库地址,而我们采用的是vip漂移,所以这个地方我们放的是vip地址
proxy-read-only-backend-addresses = 192.168.31.214:3306,192.168.31.215:3306
pwds = repl:/iZxz+0GRoA=, mha:/iZxz+0GRoA=, root:/iZxz+0GRoA=
daemon = true
keepalive = true
event-threads = 8
log-level = message
log-path = /usr/local/mysql-proxy/log
sql-log = ON
proxy-address = 0.0.0.0:33060
admin-address = 0.0.0.0:2345
charset = utf8

5、启动Atlas

复制代码
/usr/local/mysql-proxy/bin/mysql-proxyd test start    #启动Atlas。
/usr/local/mysql-proxy/bin/mysql-proxyd test restart  #重启Atlas。
/usr/local/mysql-proxy/bin/mysql-proxyd test stop     #停止Atlas。

6、查询Atlas

复制代码
ps -ef | grep proxy

7、开放Atlas端口号

复制代码
开启2345端口 firewall-cmd --zone=public --add-port=2345/tcp --permanent
开启33060端口 firewall-cmd --zone=public --add-port=33060/tcp --permanent
刷新防火墙 firewall-cmd --reload

8、测试Atlas

复制代码
mysql -umha -p123456 -h192.168.31.215 -P 33060
select @@server_id;
begin;select @@server_id;commit;

9、Atlas在线管理

复制代码
mysql -uroot -p123456 -h192.168.31.215 -P2345
select * from help;

a、查看节点信息

复制代码
mysql> select * from backends;
+-------------+---------------------+-------+------+
| backend_ndx | address             | state | type |
+-------------+---------------------+-------+------+
|           1 | 192.168.31.220:3306 | up    | rw   |
|           2 | 192.168.31.214:3306 | up    | ro   |
|           3 | 192.168.31.215:3306 | up    | ro   |
+-------------+---------------------+-------+------+

b、临时关闭节点与启动

复制代码
set offline $backend_id; #临时关闭
set online $backend_id; #临时启动

c、动态添加、删除节点

复制代码
remove backend 3; #动态删除从库节点
add slave 192.168.31.215:3306; #动态添加从库节点

d、保存配置到配置文件

复制代码
save config;
相关推荐
期待のcode1 分钟前
MyBatis-Plus的Wrapper核心体系
java·数据库·spring boot·后端·mybatis
Trouvaille ~9 分钟前
【Linux】进程等待与资源回收:父进程的责任
linux·运维·服务器·进程等待·进程退出·非阻塞与阻塞·资源回收
透明的玻璃杯15 分钟前
sqlite数据库链接池二
数据库·oracle·sqlite
老华带你飞15 分钟前
出行旅游安排|基于springboot出行旅游安排系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·spring·旅游
木子欢儿15 分钟前
Ubuntu24.04 安装rime中文输入法
linux·运维·服务器
liuwei20000027 分钟前
Ubuntu 22.04 安装 ROS 2 Humble
linux·运维·ubuntu
Logic10143 分钟前
《数据库运维》 郭文明 实验4 数据库备份与恢复实验核心操作与思路解析
运维·数据库·sql·mysql·学习笔记·形考作业·国家开放大学
马克学长44 分钟前
SSM物流信息管理系统35wzn(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·数字化管理·ssm 框架·物流信息管理
IndulgeCui1 小时前
KingbaseES 三权分立原则
数据库
JIngJaneIL1 小时前
基于Java饮食营养管理信息平台系统(源码+数据库+文档)
java·开发语言·数据库·vue.js·spring boot