码迷,mamicode.com
首页 > 其他好文 > 详细

优雅的搭建OneProxy环境

时间:2017-12-20 03:53:22      阅读:129      评论:0      收藏:0      [点我收藏+]

标签:jianyua;mysql;onepro

OneProxy简介(平民软件)

OneProxy for MySQL可以复用不同应用到后端数据库的连接,有效降低数据库的并发连接数;可以即时踢除不可用的节点,将应用请求转发到其他可用节点,保证业务服务的稳定性。 可透明地将查询语句分发到多个MySQL备库执行,用读写分离方案支持上千万的并发访问;也可以根据SQL语句中的值进行分库分表路由, 均匀分散到多个MySQL主库上,以支持每秒上百万个小事务的并发执行;可实时透明地分析流量数据,统计SQL和事务的运行时间,分析事务的结构,得到各种不同维度的实时性能报告; 还可以进行流理QoS控制,作为数据库防火墙抵挡SQL注入式攻击;根据分片的SQL并行执行,解决了大数据量下的汇总统计性能问题;跨多分片的结果集合并, 极大地简化了应用程序的开发工作量。

官网:http://www.onexsoft.com/zh/  (绝对良心)


主要功能

1. 垂直分库 2. 水平分表 3. Proxy集群 4. 读高可用 5. 读写分离(master不参与读) 6. 读写分离(master参与读) 7. 写高可用    8. 读写随机


环境简介

192.168.242.5    master1

192.168.242.10  slave1

192.168.242.15  slave2

192.168.242.20   oneproxy

名字可以自己定义,由于是在虚拟机测试所以更改名字方便记忆。

共需要4台主机,其中3台用做MYSQL的主从复制(一主两从),另一台用作OneProxy,如主机数量不够OneProxy和MYSQL可以部署到同一台主机


利用mysqlreplicate搭建主从

更改hosts文件进行重定向,方便查找

技术分享图片


关闭防火墙

技术分享图片


主服务器配置

技术分享图片


从服务器配置

技术分享图片


主服务器上创建授权用户

技术分享图片

第一条用于创建数据复制的账号,同步时用

第二条授予root权限可以进行远程连接

第三条重新加载权限表


从服务器上创建用户

技术分享图片

只需要授予root权限即可


安装mysql-utilities

技术分享图片

配置主从复制

技术分享图片

--master=root:123456(此处为登陆mysql的账户和密码)@主的IP地址

--slave=root:123456@从的IP地址

--rpl-user=mysync:123456 -b    此处账号密码输入之前配置的用于复制的账号密码


查看状态

技术分享图片

slave_IO_Running:Yes

slave_SQL_Running:Yes

两个线程同为yes,表示成功

同样在两个从上都一样,就不做演示。


配置OneProxy

下载最新的OneProxy进行解压配置(也可以下载其他版本,配置文件大概相同向下兼容,但有些参数会不同,具体参考官网进行配置)技术分享图片


更改demo.sh中OneProxy的配置路径(也就是其中的/root/oneproxy,根据目录不同自行修改)

技术分享图片


更改conf下proxy.conf文件

技术分享图片

proxy-smart-master     = 1    智能则主,此功能需要将OneProxy升级到6.2.0版本

proxy-auto-readonly    = 1参数自动调整节点类型


master不参与读流量,适用于有较多读节点的场合

proxy-group-policy= default:read_slave

master节点参与读流量,例如一主一备的场景

proxy-group-policy= default:read_balance


proxy-user-list      =root/密钥/数据库        此处填写登陆的用户名和密码(密码需要加密)最后填写数据库

如何加密?    在oneproxy的bin下执行mysqlpwd即可

技术分享图片

proxy-master     proxy-slave    字面意思填写主服务器从服务器IP端口    @后的default是默认的一个集群节点,可以进行自定义


启动OneProxy

技术分享图片

demo缺少权限所以给予执行权限


最后通过浏览器进行测试

http://OneProxy_IP:8080            端口可以在conf/proxy.conf中修改,端口不冲突默认即可

登陆时需要账号and密码        默认   user=admin    password=OneProxy

技术分享图片


搭建完成。

期间参照

http://blog.51cto.com/suifu/1884673

http://blog.51cto.com/suifu/1878443

万分感谢

优雅的搭建OneProxy环境

标签:jianyua;mysql;onepro

原文地址:http://blog.51cto.com/jianyu97/2052301

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!