360公司开源Atlas快速上手安装配置

机器系统Centos6.5


下载atlas的rpm包下载地址https://github.com/Qihoo360/Atlas/releases ,因为不涉及跨机器分表,所以,版本采用

Atlas-2.2.1


下载 Atlas-2.2.1.el6.x86_64.rpm (centos6),注:centos5请下载Atlas-2.2.1.el5.x86_64.rpm(centos5)

安装
rpm  -i  Atlas-2.2.1.el6.x86_64.rpm 

安装路径/usr/local/mysql-proxy


配置 
#配置atlas的用户名
admin-username = user

#配置atlas的密码
admin-password = pwd
#admin-lua-script = /usr/local/mysql-proxy/lib/mysql-proxy/lua/admin.lua
#配置mysql的地址和端口
proxy-backend-addresses = 127.0.0.1:3306

配置从节点的mysql地址,本文不涉及
#proxy-read-only-backend-addresses = 127.0.0.1:3305@1

#配置mysql的用户名和密码 密码采用/usr/loca/mysql-proxy/bin/encrypt加密
pwds = root:DAJnl8cVzy8=

#Atlas的运行方式设为true时为守护进程方式,设为false时为前台方式
daemon = false
#设置Atlas的运行方式,设为true时Atlas会启动两个进程,一个为monitor,一个worker,monitor在worker意外退出后自动将其重启,设为false时只有worker,没有monitor

keepalive = false
#工作线程数,推荐设置成系统的CPU核数的2至4倍
event-threads = 4

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

#日志目录
log-path = /usr/local/mysql-proxy/log

#SQL日志的开关,可设置为OFF、ON、REALTIME,OFF代表不记录SQL日志,ON代表记录SQL日志,该模式下日志刷新是基于缓冲区的,当日志填##满缓冲区后,才将日志信息刷到#磁盘。REALTIME用于调试,代表记录SQL日志且实时写入磁盘,默认为OFF
sql-log = ON


#sql-log-slow = 10


instance = test

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

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

#分表设置,此例中person为库名,mt为表名,id为分表字段,3为子表数量,可设置多项,以逗号分隔,若不分表则不需要设置#该项,子表需要事先#建好,子表名称为表名_##数字,数字范围为[0,子表数-1],如本例里,子表名称为mt_0、mt_1、mt_2
tables = iaf.user.id.3


#charset = utf8


#client-ips = 127.0.0.1, 192.168.1
</span>
启动:

进入/usr/local/mysql-proxy/bin目录,执行下面的命令启动、重启或停止Atlas。

(1). sudo ./mysql-proxyd test start,启动Atlas。

(2). sudo ./mysql-proxyd test restart,重启Atlas。

(3). sudo ./mysql-proxyd test stop,停止Atlas。

注意:

(1). 运行文件是:mysql-proxyd(不是mysql-proxy)。

(2). test是conf目录下配置文件的名字,也是配置文件里instance项的名字,三者需要统一。

(3). 可以使用ps -ef | grep mysql-proxy查看Atlas是否已经启动或停止。


执行命令:mysql -h127.0.0.1 -P1234 -u用户名 -p密码,如果能连上则证明Atlas初步测试正常,可以再尝试发几条SQL语句看看执行结果是否正确。(用户名和密码为mysql的用户名和密码),多插入几条数据就发现可以插入不同的子表了

例如:

以id切分数据,在查询的时候除非where条件后有id条件,不然出不出来,这样就不能使用关联查询了。

select * from user where id =1   //这样可以查询

select * from user inner join partment on user.id =partment.user_id where user.id =1  //这样查询不出结果 

所以,我觉得局限性还是挺大的

进入Atlas的管理界面的命令:mysql -h127.0.0.1 -P2345 -uuser -ppwd,进入后执行:select * from help;查看管理DB的各类命令(用户名user 密码pwd 为配置文件中配置的admin-username,admin-password


相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页