atlas:mysql-proxy扩展,mysql中间件,可以实现分表、分库(sharding版本)、读写分离、数据库连接池等功能!

Atlas类似于Twemproxy,是Qihoo 360基于Mysql Proxy开发的一个Mysql中间件,据称每天承载读写请求数达几十亿,可以实现分表、分库(sharding版本)、读写分离、数据库连接池等功能,缺点是没有实现跨库分表功能,需要在客户端使用分库逻辑,目前Atlas不活跃

参考文献:

环境

win10 下 wsl 环境 ubuntu 的 atlas

Mysql+Atlas配置

  1. ubuntu 下安装 Atlas

    源码安装方式:请参考第六章 Web开发实战1——HTTP服务

    源码编译方法不行的话,直接下载DEB包后用dpkg -i安装即可,注意:旧版本才有DEB包

    wget https://github.com/Qihoo360/Atlas/releases/download/2.2/Atlas-2.2-debian7.0-x86_64.deb
    dpkg -i Atlas-2.2-debian7.0-x86_64.deb
  2. ubuntu 下启动 Atlas 缺失 libmysqlclient.so.18

    参考:启动zabbix报缺少libmysqlclient.so.18,请自行下载:

    # 先查找一下
    whereis libmysqlclient.so.18
    # 如果存在则软连接到库路径
    $ ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib64/libmysqlclient.so.18
    # 没有则下载后链接
    wget -O /usr/lib/libmysqlclient.so.18 http://files.directadmin.com/services/es_7.0_64/libmysqlclient.so.18
  3. atlas配置

    vim /usr/local/mysql-proxy/conf/chapter6.cnf
  4. Atlas启动/重启/停止

    # chapter6 即上述的 chapter6.cnf
    /usr/local/mysql-proxy/bin/mysql-proxyd chapter6 { start | restart | stop }
  5. atlas管理

    mysql -h127.0.0.1 -P1113  -uadmin -p123456
    SELECT * FROM help # 查看帮助
  6. atlas 客户端

    # 通过代理端口进入客户端
    mysql -h127.0.0.1 -P1112 -uroot -p123456
    use chapter6;
    insert into ad values(1 '测试1);
    insert into ad values(2, '测试2');
    insert into ad values(3 '测试3);
    select * from ad where sku_id=1;
    select * from ad where sku_id=2;
    #通过如下sql可以看到实际的分表结果
    select * from ad_0;
    select * from ad_1;

atlas笔记的更多相关文章

  1. NGUI学习笔记汇总

    NGUI学习笔记汇总,适用于NGUI2.x,NGUI3.x 一.NGUI的直接用法 1. Attach a Collider:表示为NGUI的某些物体添加碰撞器,如果界面是用NGUI做的,只能这样添加 ...

  2. C++内存管理学习笔记(5)

    /****************************************************************/ /*            学习是合作和分享式的! /* Auth ...

  3. C++内存管理学习笔记(6)

    /****************************************************************/ /*            学习是合作和分享式的! /* Auth ...

  4. C++内存管理学习笔记(7)

    /****************************************************************/ /*            学习是合作和分享式的! /* Auth ...

  5. laravel安装 笔记

    http://laod.cn/hosts/2015-google-hosts.html 谷歌FQIP laravel安装和设置流程 1安装composer , VirtualBox和Vagrant 下 ...

  6. 笔记:利用 Cocos2dx 3.2 与 Box2D制作一个跑酷游戏(上)

    最近写lua写得没有力气了,所以想让脑袋放松一下,刚好看到有人在用swift做游戏: Swift游戏实战-跑酷熊猫 于是脑子一短路,就想到了利用这些素材来做一个游戏. 本来不想记笔记的,但是由于选择物 ...

  7. 《Unity預計算即時GI》笔记:二、光照图

    说明 这篇文章是对<Unity預計算即時GI>这个系列文章的笔记. 光照图 什么是光照图 光照图在第三章中有如下的定义,读起来很是费解. 一個光照圖(Chart)是表示一個光照貼圖的區域, ...

  8. U3D开发性能优化笔记(待增加版本.x)

    http://blog.csdn.net/kaitiren/article/details/45071997 此总结由自己经验及网上收集整理优化内容 包括: .代码方面: .函数使用方面: .ui注意 ...

  9. ‎Cocos2d-x 学习笔记(25) 渲染 绘制 Render

    [Cocos2d-x]学习笔记目录 本文链接:https://www.cnblogs.com/deepcho/p/cocos2dx-render.html 1. 从程序入口到渲染方法 一个Cocos2 ...

随机推荐

  1. java实体 和 xml相互转换

    参考: https://blog.csdn.net/LookForDream_/article/details/88884316 https://zhuchengzzcc.iteye.com/blog ...

  2. Python搭建HTTP服务

    我们平时可能会需要HTTP服务,本机搭建一个服务器来完成有些过于繁琐,这时就可以用python帮我们搭建一个HTTP服务器,省时高效. python 2.x 输入命令:python -m Simple ...

  3. shell 脚本 for,while,case 语句详解及案例

    ################for循环语句的结构#############使用for循环语句时,需要指定一个变量及可能的取值列表,针对每个不同的取值重复执行相同的命令序列,直到变量值用完退出循环. ...

  4. AOP小记

    编程思想演进:POP(Procedure Oriented Programming)-> OOP(Object Oriented Programming)-> AOP(Aspect Ori ...

  5. Java开发:字符串切割split函数——切割符转码注意事项

    一.问题如下: 1.先对一个已有字符串进行操作,使用     ;     进行分割: //示例字符串 String string="sr1.db1.tb1.df1;sr2.db2.tb2.d ...

  6. 迁移历史sql数据

    --select * into Trade2018 from Aozzo_ODS..Trade t1 --where t1.Created<'2019-01-01' --创建索引 --creat ...

  7. CSS属性相关知识

    Css选择器 选择器的权重 在css中,哪个选择器的权重高,就走谁的样式. 标签选择器的权重是 1 Class选择器的权重是10 Id选择器的权重是100 行间样式的权重是1000 带有关键字 !im ...

  8. JS中Map的用法

    声明 var map = new Map(); 设值 map.set("key","value"); 取值 map.get("key"); ...

  9. 极简 Spring Boot 整合 Thymeleaf 页面模板

    虽然现在慢慢在流行前后端分离开发,但是据松哥所了解到的,还是有一些公司在做前后端不分的开发,而在前后端不分的开发中,我们就会需要后端页面模板(实际上,即使前后端分离,也会在一些场景下需要使用页面模板, ...

  10. golang学习笔记 ---rand

    在Golang中,有两个包提供了rand,分别为 "math/rand" 和 "crypto/rand",  对应两种应用场景. "math/rand ...