MHA携手Atlas:打造高效读写分离解决方案,引领数据库性能飞跃 ...

打印 上一主题 下一主题

主题 870|帖子 870|积分 2610


   

  •  作者简介:我是团团儿,是一名专注于云计算范畴的专业创作者,感谢大家的关注
  •  座右铭:   云端筑梦,数据为翼,探索无穷大概,引领云计算新纪元
  •  个人主页:团儿.-CSDN博客
  目录
前言:
正文:
1. Atlas 先容
留意:
2.安装配置
复制atlas
启动atlas
3. Atlas功能测试
如果不做mha,必要在主服务器创建mha用户:
测试读操作:
db03 [(none)]>
测试写操作:mysql>
4. 生产用户要求
4.1  在主库中,创建用户
4.2. 在atlas中添加生产用户
5. Atlas基本管理
毗连管理接口
检察数据库帮助
检察数据库节点状态
关闭、开启节点
删除、添加从节点
添加白名单
删除白名单
生存配置


前言:

在数字化期间,数据库的性能和稳定性对于企业而言至关紧张。随着业务规模的扩大和数据量的增长,单一的数据库读写模式已经难以满意高性能和高可用的需求。读写分离作为一种常见的数据库优化计谋,通过将读操作和写操作分离到不同的数据库实例上,从而减轻主库的压力,提拔整体体系的处理本领和响应速率。
MHA(Master High Availability Manager)和Atlas作为两款备受推许的数据库高可用性和读写分离解决方案,各自具备独特的上风。MHA以其强盛的主从切换和故障恢复本领,为数据库的高可用性提供了坚固的保障;而Atlas则通过智能化的读写分离和负载均衡计谋,进一步优化了数据库的读写性能。
将MHA与Atlas相联合,可以充分发挥两者的上风,打造出一个高效、稳定且易于管理的读写分离解决方案。本文旨在深入探究MHA配合Atlas实现读写分离的原理、步调以及现实应用效果,帮助读者更好地理解和应用这一技能方案,提拔数据库的性能和稳定性。
接下来,我将从MHA和Atlas的基本先容入手,逐步分析两者如何协同工作,实现读写分离的目的。盼望通过本文的阐述,可以或许为读者在数据库架构计划和优化方面提供一些有益的参考和启示。


正文:

1. Atlas 先容

Atlas是由 Qihoo 360, Web平台部基础架构团队开发维护的一个基于MySQL协议的数据中心层项目。
它是在mysql-proxy 0.8.2版本的基础上,对其举行了优化,增长了一些新的功能特性。
360内部利用Atlas运行的mysql业务,每天承载的读写哀求数达几十亿条。
下载地址
https://github.com/Qihoo360/Atlas/releases
留意:

1、Atlas只能安装运行在64位的体系上
2、Centos 5.X安装 Atlas-XX.el5.x86_64.rpm,Centos 6.X安装Atlas-XX.el6.x86_64.rpm。
3、后端mysql版本应大于5.1,建议利用Mysql 5.6以上
2.安装配置

复制atlas

  1. rpm -ivh Atlas-2.2.el6.x86_64.rpm
  2. cd /usr/local/mysql-proxy/conf
  3. mv test.cnf test.cnf.bak
复制代码
  1. vi test.cnf
复制代码
  1. [mysql-proxy]
  2. admin-username = user
  3. admin-password = pwd
  4. proxy-backend-addresses = 192.168.8.9:3306
  5. proxy-read-only-backend-addresses = 192.168.8.10:3306,192.168.8.11:3306
  6. pwds = repl:3yb5jEku5h4=,mha:O2jBXONX098=
  7. daemon = true
  8. keepalive = true
  9. event-threads = 8
  10. log-level = message
  11. log-path = /usr/local/mysql-proxy/log
  12. sql-log=ON
  13. proxy-address = 0.0.0.0:33060
  14. admin-address = 0.0.0.0:2345
  15. charset=utf8
复制代码
启动atlas

  1. /usr/local/mysql-proxy/bin/mysql-proxyd test start
  2. ps -ef |grep proxy
复制代码

3. Atlas功能测试


如果不做mha,必要在主服务器创建mha用户:

  1. grant all on *.* to mha@'192.168.8.%' identified by 'mha';
复制代码
测试读操作:

  1. mysql -umha -pmha  -h 192.168.8.11 -P 33060 
复制代码
db03 [(none)]>

  1. select @@server_id;
复制代码
测试写操作:
mysql>


  1. begin;select @@server_id;commit;
复制代码

4. 生产用户要求


开发人员申请一个应用用户 app(select  update  insert)  暗码123456,要通过10网段登录
4.1  在主库中,创建用户

  1. grant select ,update,insert on *.* to app@'192.168.8.%' identified by '123456';
复制代码
4.2. 在atlas中添加生产用户

  1. /usr/local/mysql-proxy/bin/encrypt  123456
复制代码
     ---->制作加密暗码
  1. vim /usr/local/mysql-proxy/conf/test.cnf
复制代码
  1. pwds = repl:3yb5jEku5h4=,mha:O2jBXONX098=,app:/iZxz+0GRoA=
  2. /usr/local/mysql-proxy/bin/mysql-proxyd test restart
复制代码
[root@db03 conf]#
  1. mysql -uapp -p123456  -h 192.168.8.11 -P 33060
复制代码

5. Atlas基本管理


毗连管理接口

  1. mysql -uuser -ppwd -h127.0.0.1 -P2345
复制代码
检察数据库帮助

  1. select * from help;
复制代码
检察数据库节点状态

  1. SELECT * FROM backends;
复制代码
关闭、开启节点

  1. set offline 2;
  2. set online 2;
复制代码
删除、添加从节点

  1. REMOVE BACKEND 3;
  2. ADD SLAVE 192.168.8.11:3306;
复制代码
添加白名单

  1. add client 192.168.8.11;
复制代码
删除白名单

  1. remove client 192.168.8.11;
复制代码
生存配置

  1. save config;
复制代码

等待您的关注~


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

怀念夏天

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表