Mysql第六天——Amoeba实现Mysql读写分离

Mysql读写分离

一、关于读写分离

读写分离(Read/Write Splitting),基本的原理是让主数据库处理事务性增、改、删操作(INSERT、UPDATE、DELETE),而从数据库处理SELECT查询操作。数据库复制被用来把事务性操作导致的变更同步到集群中的从数据库。
1.问题:
由于数据库没有优化,会导致主数据库的压力较大.
2.策略:
如果是读的操作,都访问从数据库.
如果是写的操作.都访问主数据库.


二、关于Amoeba

Amoeba(变形虫)项目,该开源框架于2008年 开始发布一款 Amoeba forMysql软件。这个软件致力于MySQL的分布式数据库前端代理层,它主要在应用层访问MySQL的时候充当SQL路由功能,专注于分布式数据库代理层(Database Proxy)开发。座落与 Client、DB Server(s)之间,对客户端透明。具有负载均衡、高可用性、SQL 过滤、读写分离、可路由相关的到目标数据库、可并发请求多台数据库合并结果。通过Amoeba你能够完成多数据源的高可用、负载均衡、数据切片的功能,目前Amoeba已在很多企业的生产线上面使用。

Amoeba主要解决以下问题:
(1)数据切分后复杂数据源整合
(2)提供数据切分规则并降低数据切分规则给数据库带来的影响
(3)降低数据库与客户端连接
(4) 读写分离路由


三、Amoeba的安装

1.下载安装amoeba(配置环境变量)

vi /etc/profile

在最下面加入两行
export AMOEBA_HOME=/usr/local/amoeba/amoeba-mysql-3.0.5-RC
export PATH=$PATH:$AMOEBA_HOME/bin

source /etc/profile(使环境变量及时生效)

2.安装JDK(配置环境变量)

vi /etc/profile

在最下面加入两行
export JAVA_HOME=/usr/java/jdk1.8.0_65
exportPATH=$PATH:$JAVA_HOME/bin

source /etc/profile(使环境变量及时生效)

四、Amoeba的配置

4.1 给amoeba授权mysql远程账户(不推荐使用root)

创建一个用户名为amoeba,密码为111111,ip为%,可登录该账户(登录数据库后操作)

mysql>grant all on *.* amoeba@'%' identified by '111111' with grant option;

4.2 查看配置文件

退出数据库

#进入到amoeba的conf目录下
cd /application/amoeba/conf
#查看
ll

在这里插入图片描述

4.3 配置dbServers.xml

vi dbServers.xml

4.3.1 设置mysql默认连接时的端口,数据库,帐号和密码

说明:
在这里插入图片描述

自改后:
在这里插入图片描述

4.3.2 设置连接主从数据库服务器的IP地址和服务器别名,用户名及密码
说明:
在这里插入图片描述

自改后:
在这里插入图片描述

4.4 配置amoeba.xml

vi amoeba.xml

4.4.1 修改默认端口号,管理帐号及密码
说明:
在这里插入图片描述
在这里插入图片描述
自改后:
在这里插入图片描述
4.4.2 设置默认池及读写分离
说明:
在这里插入图片描述
自改后:
在这里插入图片描述

4.5 指定栈空间

cd /application/amoeba
vi jvm.properties

适当的调整内存空间,否则将不会生效
在这里插入图片描述
将Xss196k改为Xss256k


五、启动Amoeba

启动
/application/amoeba/bin/launcher     #末尾加&为后台启动
关闭
/application/amoeba/bin/shutdown
后台启动并把日志保存到/var/log/amoeba.log
/application/amoeba/bin/launcher > /var/log/amoeba.log 2>&1 &

六、验证读写分离

1.关闭SELinux:

查看状态:

getenfore

(1)永久有效

修改 /etc/selinux/config 文件中的 SELINUX="" 为 disabled ,然后重启。

(2)即时生效

开启:setenforce 0
关闭:setenfore 1

2.关闭防火墙的方法为:
查看状态:

chkconfig --list iptables

(1)永久性生效

开启:chkconfig iptables on
关闭:chkconfig iptables off

(2)即时生效,重启后失效

开启:service iptables start
关闭:service iptables stop
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值