主要功能:

* 读写分离

* 从库负载均衡

* IP过滤

* SQL语句黑白名单

* 自动分表

Q & A

-------------------

Q: 是否支持多字符集?

A: 这是我们对原版MySQL-Proxy的第一项改进,符合国情是必须的

Q: 自动读写分离挺好,但有时候我写完马上就想读,万一主从同步延迟怎么办?

A: SQL语句前增加 /*master*/ 就可以将读请求强制发往主库

Q: 主库宕机,读操作受影响么?

A: 在atlas中是不会的! 能问这样的问题, 说明你用过官方的mysql-proxy, 很遗憾官方版本并未解决这个问题

Q: 检测后端DB状态会阻塞正常请求么?

A: 不会, atlas中检测线程是异步进行检测的,即使有db宕机,也不会阻塞主流程。在atlas中没有什么异常会让主流程阻塞! 同上,官方版本也会让你失望

Q: 想下线一台DB, 又不想停掉mysql server, 怎么办?

A: 可以通过管理接口手动上下线后端db, atlas会优先考虑管理员的意愿

Q: 想给集群中增加一台DB, 不想影响线上正常访问可以吗?

A: 通过管理接口可以轻松实现

Q: 相比官方mysql-proxy, atlas还有哪些改进?

A: 这实在是个难以回答的问题,性能,稳定性,可靠性,易维护性,我们做过几十项的改进,下面会尽量列一些较大的改动

VS 官方MySQL-Proxy

-------------------

1. 将主流程中所有Lua代码改为纯C实现,Lua仅用在管理接口

2. 重写网络模型、线程模型

3. 实现了真正意义的连接池

4. 优化了锁机制,性能提高数十倍

......

附名字来源:

Atlas,希腊神话中双肩撑天的巨人,普罗米修斯的兄弟,最高大强壮的神之一,因反抗宙斯失败而被罚顶天。我们期望这个系统能够脚踏后端DB,为前端应用撑起一片天。

二、配置文件示例

-------------------

[mysql-proxy]    #不需要改

plugins = admin, proxy    #Atlas加载的模块名称,不需要改

admin-username = user    #管理接口的用户名

admin-password = pwd    #管理接口的密码

admin-lua-script = /usr/local/mysql-proxy/lib/mysql-proxy/lua/admin.lua    #实现管理接口的Lua脚本所在路径

proxy-backend-addresses = 127.0.0.1:3306    #Atlas后端连接的MySQL主库的IP和端口,可设置多项,用逗号分隔

proxy-read-only-backend-addresses = 127.0.0.1:3305@2    #Atlas后端连接的MySQL从库的IP和端口,2代表权重,用来作负载均衡,若省略则默认为1,可设置多项,用逗号分隔

daemon = false    #设置Atlas的运行方式,设为true时为守护进程方式,设为false时为前台方式,一般开发调试时设为false,线上运行时设为true

keepalive = false    #设置Atlas的运行方式,设为true时Atlas会启动两个进程,一个为monitor,一个为worker,monitor在worker意外退出后会自动将其重启,设为false时只有worker,没有monitor,一般开发调试时设为false,线上运行时设为true

event-threads = 4    #工作线程数,推荐设置与系统的CPU核数相等

log-level = message    #日志级别,分为message、warning、critical、error、debug五个级别

log-path = /usr/local/mysql-proxy/log    #日志存放的路径

instance = test    #实例名称,用于同一台机器上多个Atlas实例间的区分

proxy-address = 0.0.0.0:1234    #Atlas监听的工作接口IP和端口

admin-address = 0.0.0.0:2345    #Atlas监听的管理接口IP和端口

min-idle-connections = 128    #连接池的最小空闲连接数,可根据业务请求量大小适当调大或调小

tables = person.mt.id.3    #分表设置,此例中person为库名,mt为表名,id为分表字段,3为子表数量,可设置多项,以逗号分隔

pwds = user1:+jKsgB3YAG8=, user2:GS+tr4TPgqc=    #用户名与其对应的加密过的密码,密码使用加密程序encrypt加密,此设置项用于多个用户名同时访问同一个Atlas实例的情况,若只有一个用户名则不需要设置该项

charset = utf8    #默认字符集,若不设置该项,则默认字符集为latin1

三、编译安装

-------------------

依赖:glib(2.32.0以上)、libevent(1.4以上)、Lua(5.1以上)、OpenSSL(0.9.8以上)

./bootstrap.sh    #可能需要修改其中的路径

make

sudo make install

四、启动与停止

-------------------

进入PREFIX/conf目录,编辑instance.conf,此处instance的实际名称应与其中instance设置项相同,其他设置项含义见第二节。

启动:

PREFIX/bin/mysql-proxyd instance start

停止:

PREFIX/bin/mysql-proxyd instance stop

重启:

PREFIX/bin/mysql-proxyd instance restart

查看运行状态:

PREFIX/bin/mysql-proxyd instance status

mysql atlas 文档_Atlas首页、文档和下载相关推荐

  1. mysql atlas更新问题_Atlas几种常见故障解决(不定期更新)

    1)使用atlas却发现"读库闲置,框架还是去主库读写数据" 配置完atlas之后,发现使用jdbc框架的话,读库和写库各司其职,但是使用mybatis框架之后,就发现框架的读写都 ...

  2. mysql atlas分表_Atlas 分表功能

    1.分表原因 1.数据过多,访问缓慢 2.创建索引时重新排序,创建缓慢,并且占用大量的磁盘空间 2.分表方式 1.根据数据范围分表 2.根据取模的方式(取余数) 3.Atlas分表 1.分表思路 1. ...

  3. 基于java+mysql的Swing+MySQL物业收费系统(java+gui+文档)

    基于java+mysql的Swing+MySQL物业收费系统(java+gui+文档) 运行环境 Java≥8.MySQL≥5.7 开发工具 eclipse/idea/myeclipse/sts等均可 ...

  4. swagger连接mysql数据库_一键生成数据库文档,堪称数据库界的Swagger,有点厉害!...

    最近部门订单业务调整,收拢其他业务线的下单入口,做个统一大订单平台.需要梳理各业务线的数据表,但每个业务线库都有近百张和订单相关的表,挨个表一个一个字段的弄脑瓜子嗡嗡的. 为了不重复 CV 操作,抱着 ...

  5. 实施文档_Word 2010文档处理案例教程

    Word 2010文档处理案例教程 ISBN:978-7-80243-928-3/02 作者:黄桂林 江义火 郭燕 定价:38.00元 出版社:航空工业出版社 适用层次:通用 出版日期:2019-10 ...

  6. [工具推荐]制作基于Dash的本地文档方便搜索文档api和内容

    [版权声明]:本文章由danvid发布于http://danvid.cnblogs.com/,如需转载或部分使用请注明出处 最近在看es的文档,发现查起api来真的很麻烦,很多现在开源的文档都没有查询 ...

  7. 商城前后端原型、商城prd文档、商城后台管理系统、商城app文档、电商需求文档、限时秒杀、电商平台、促销助力、拼团抽奖、电商文档、prd文档、电商前后端原型、电商原型、Axure电商系统、rp原型

    商城前后端.商城prd文档.商城后台管理系统.商城app文档.电商需求文档.限时秒杀.电商平台.促销助力.拼团抽奖.电商文档.prd文档.电商前后端原型.电商原型.Axure电商系统.rp原型 Axu ...

  8. 一款适合IT团队的在线API文档、技术文档工具-showdoc介绍

    还在为word文档传来传去查阅不方便而烦恼吗,还在为查看数据库字段含义不方便而烦恼吗,还在为编写接口文档而烦恼吗?今天为大家推荐一款适合IT团队的在线API文档.技术文档工具,有免费开源和在线托管的版 ...

  9. 服务器安装360文档卫士,360文档卫士的安装使用方法

    360文档卫士是奇虎360官方开发的一款专门保护文件的安全软件,这款软件号称"敲诈者病毒终结者",这款软件拥有超强的预警机制,可有效预防文件被篡改,保护用户的文档安全.软件支持自动 ...

  10. 文件文档ppt资料付费VIP会员下载流量主小程序开发

    文件文档ppt资料付费VIP会员下载流量主小程序开发 支持格式// 支持包含pptx/ppt/ doc/ docx/xsl/xslx/ pdf/zip/rar/网盘等9种格式;并支持6种格式;WORD ...

最新文章

  1. OpenCV(十六)边缘检测2 -- Laplace(拉普拉斯)二阶微分算子
  2. 错误处理:one of the variables needed for gradient computation has been modified by inplace operation
  3. 关于angularjs input上传图片前获取图片的Size 浅析
  4. Spring Cloud Alibaba迁移指南(一):一行代码从 Hystrix 迁移到 Sentinel 1
  5. numpy 转置_Python中Numpy.transpose()
  6. Python调shell
  7. iamsese.cn -- 色色 -- 实例讲解 简易RBAC实现原理
  8. MATLAB官方机器学习入门教程
  9. AC/DC、DC/DC转换器基础指南(二)
  10. 分享一个轻量级免费UML绘图工具JUDE
  11. linux MySQL .sock_Linux 下找不到 mysql.sock 的解决方法
  12. 自用机器学习笔记(1):什么是概率以及似然
  13. 修改Win10右键菜单
  14. 定理(Theorem)、引理(Lemma)、推论(Corollary)的定义及LaTeX用法
  15. 【Spring Cloud Alibaba 温故而知新】(五)SpringCloud Sleuth + Zipkin:分布式日志追踪
  16. 推荐最适合IT人自学的6个视频网站、8个社区网站,欢迎补充
  17. 看了不会后悔的——SQL 面试题库
  18. SQL手工注入漏洞测试(Oracle数据库)
  19. 智慧分拣高精度定位管理系统
  20. 给右键菜单加入CMD命令行快速通道(适合win7)

热门文章

  1. NetBeans修改字体中文乱码问题
  2. arm嵌入式系统C语言代码,ARM嵌入式系统C语言编程.pdf
  3. 2021/3/30前端百度笔试题
  4. 如何使用内网穿透,将自己的内网接口暴露到外网
  5. 转:H5 页面36种漂亮的CSS3网页按钮Button样式
  6. 【Visual C++】游戏开发笔记三十八 浅墨DirectX提高班之六 携手迈向三维世界:四大变换展身手
  7. 获取农历时间(几月初几)
  8. SRM 459 500p hust1080 NumberPyramids
  9. Windows 入侵痕迹清理技巧
  10. 系统安装部署系列教程(六):封装系统