废话不说,直接开始:

一、安装mysql的三种方式,这里采用第2种(安装方式不再详解,请参照)

http://www.cnblogs.com/babywaa/articles/4837946.html

1、rpm安装
2、源码安装
3、通用二进制源码安装

环境准备

192.168.5.10    master1

192.158.5.20    slave1

二、配置master服务器,192.168.5.10
1、
第一步:登陆mysql,给root账号添加密码                //参考命令:SETPASSWORD = PASSWORD('pasword');
第二步:查看mysql版本号                     //参考命令:select version();
第三步:添加Slave到本机同步的远程账号               //参考命令:GRANT REPLICATION SLAVE ON *.* TO 'slave'@'192.168.5.10' IDENTIFIED BY 'SLAVE';
第四部:查看当前mysql的所有用户                 //参考命令:select user,host,password from mysql.user;
第五步:删除账号密码都为空的localhost账号             //参考命令:drop user ''@'localhost';
第六部:删除账号密码都为空的iz25ogxahfrz账号         //参考命令:drop user ''@'iz25ogxahfrz';
第七步:退出mysql                           //参考命令:\q

2、编辑my.cnf配置文件                                                       //参考命令:vim my.cnf

3、
第一步:重启mysql服务                                                        //参考命令:service mysql restart
第二步:以root用户+密码登陆mysql                                      //参考命令:mysql -uroot -ppassword
第三步:查看master的ID号                                                  //参考命令:SHOW VARIABLES LIKE 'service_id';
第四部:查看当前master的File+pos信息,并记录下来             //参考命令:show master status;

三、配置Slave服务器,192.168.5.20
1、
第一步:登陆mysql,给root账号添加密码                                  //参考命令:SETPASSWORD = PASSWORD('pasword');
第二步:查看mysql版本号                                                       //参考命令:select version();
第三步:查看当前mysql的所有用户                                           //参考命令:select user,host,password from mysql.user;
第四步:删除账号密码都为空的localhost账号                             //参考命令:drop user ''@'localhost';
第五部:删除账号密码都为空的iz25i0yer0yz账号                       //参考命令:drop user ''@'iz25i0yer0yz';
第六步:退出mysql                                                               //参考命令:\q

2、编辑slave服务器my.cnf配置文件                                      //参考命令:vim my.cnf

3、
第一步:重启mysql服务                                                       //参考命令:service mysql restart
第二步:查看slave服务器的ID号               //参考命令:SHOW VARIABLES LIKE 'service_id';
第三步:查看slave同步状态                 //参考命令:show slave status\G
第四部:关闭slave服务器,防止增删改查。          //参考命令:stop slave;
第五步:配置slave如何同步master的数据             //参考命令:change master to master_host='192.168.5.10', master_user='slave', master_password='slave', master_port=3306, master_log_file='master_bin.000001', master_log_pos=120;
第六部:打开slave服务器的各项功能             //参考命令:start slave;

4、查看slave的同步状态                   //参考命令:show slave status\G

mysql主从配置完毕

 四、安装Amoeba:依赖JAVA环境

JAVA安装
1、安装

2、给amoeba授权一个mysql远程账户
mysql> GRANT ALL PRIVILEGES ON *.* TO 'amoeba'@'192.168.5.30' IDENTIFIED BY 'amoeba' WITH GRANT OPTION;

五、安装Amoeba:


六、配置:
1、配置Amoeba下的dbServers.xml

2、配置Amoeba下的amoeba.xml

七、启动Amoeba:
1、【最好是先用当前方式启动,能够看到启动是否有错误,排查完错误后在后台启动】
网上查了一些资料:JDK7启动对xss参数有最小值要求,必须大于228才能启动JVM
解决:
设置 -Xss256k 即可解决

 #JVM_OPTIONS="-server -Xms256m -Xmx1024m -Xss196k -XX:PermSize=16m -XX:MaxPermSize=96m"
JVM_OPTIONS="-server -Xms1024m -Xmx1024m -Xss256k -XX:PermSize=16m -XX:MaxPermSize=96m"

# vim /usr/local/amoeba/jvm.properties


2、再次启动:又报错误,请细看


3、上图所示:我没有用正常的关闭方式关闭Amoeba服务导致的错误
然后KILL进程之后竟然不抱错误了
所以这次长教训了
关闭Amoeba:
# /usr/local/amoeba/bin/shutdown
后台启动并把输出日志保存到/var/log/amoeba.log
# /usr/local/amoeba/bin/launcher > /var/log/amoeba.log 2>&1 &


八、登陆测试:
1、由于30机器上并没有安装mysql,所以找一台装有mysql的机器进行测试
mysql -uamoeba -p123456 -h192.168.0.251 -P8066 //指定端口的-P是大写的,不=同于其它。一定要注意大小写


2、登陆成功,请自由测试。
测试方法: (1)amoeba创建库然后分别登陆master、slave查看是否有刚创建的库
(2)stop master的mysql,再slave上创建库,不能则表示成功
(3)网上有更好的测试方法,不在一一列举。请自行查找。
九、Amoeba+MySql主从分离配置完毕!

CentOS系统 Amoeba+MySql主从读写分离配置 适合新手傻瓜式教程!-----仅供参考!的更多相关文章

  1. Amoeba实现mysql主从读写分离

    Amoeba实现mysql主从读写分离 这段在网上看了下关于amoeba的文章,总体感觉好像要比mysql-proxy好的多,也参考了不少的资料,此文章可能与其他文章作者会有雷同的地方,请谅解,但是此 ...

  2. Amoeba搞定mysql主从读写分离

    前言:一直想找一个工具,能很好的实现mysql主从的读写分离架构,曾经试用过mysql-proxy发现lua用起来很不爽,尤其是不懂lua脚本,突然发现了Amoeba这个项目,试用了下,感觉还不错,写 ...

  3. laravel学习:主从读写分离配置的实现

    本篇文章给大家带来的内容是关于laravel学习:主从读写分离配置的实现,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 在DB的连接工厂中找到以下代码.../vendor/larav ...

  4. MySQL/MariaDB读写分离配置

    DB读写分离描述 数据库的读写分离其实就是为了加减少数据库的压力:数据库的写入操作由主数据库来进行,读取操作由从数据库来进行操作.实现数据库读写分离技术是有很多方法的,在这里我就用一个比较简单的mys ...

  5. 基于Amoba实现mysql主从读写分离

    一.Amoeba简介           Amoeba是一个以MySQL为底层数据存储,并对应用提供MySQL协议接口的proxy.它集中地响应应用的请求,依据用户事先设置的规则,将SQL请求发送到特 ...

  6. Mycat实现Mysql主从读写分离

    一.概述 关于Mycat的原理网上有很多,这里不再详述,对于我来说Mycat的功能主要有如下几种: 1.Mysql主从的读写分离 2.Mysql大表分片 3.其他数据库例如Oracle,MSSQL,D ...

  7. Amoeba+Mysql 实现读写分离

    About Amoeba Amoeba可译为阿米巴.变型虫Amoeba是一个开源项目,致力于Mysq的分布式数据库前端代理层Amoeba是一个以MySQL为底层数据存储,并对应用提供MySQL协议接口 ...

  8. Mysql数据库读写分离配置

    环境模拟 实现读写分离 减轻数据库的负荷 主服务器  master   10.0.0.12 从服务器 slave    10.0.0.66 配置主服务器: 在10.0.0.12服务器操作   创建数据 ...

  9. (转)Mysql数据库读写分离配置

    环境模拟 实现读写分离 减轻数据库的负荷 主服务器 master 10.0.0.12从服务器 slave 10.0.0.66 ------------------------------------- ...

随机推荐

  1. 图解 HTTP 笔记(八)——常见 Web 攻击技术

    本章主要讲解 HTTP 通信过程中的一些常见 Web 攻击技术 一.跨站脚本攻击 跨站脚本攻击(Cross-Site Scripting, XSS)是指通过存在安全漏洞的 Web 网站注册用户的浏览器 ...

  2. MIGO 收货

    ls_code-gm_code = '01'. 01 - MB01 - Goods Receipts for Purchase Order 02 - MB31 - Goods Receipts for ...

  3. 陷门函数Trapdoor Function

    陷门函数:正向计算是很容易的,但若要有效的执行反向计算则必须要知道一些secret/knowledge/trapdoor(知识?),也称为伪随机置换,可用于构造公钥密码系统. 若 f 为陷门函数,则 ...

  4. orac l e数据库第一章

    数据库两种权限:                    1.系统权限 2.对象权限 数据库端口号:                     SQL SERVER  1433 MySql   3306 ...

  5. C#程序 界面显示运行信息

    1.使用RichTextBox,难免要在多线程调用,所以需要委托. Color定义此条信息用什么颜色显示.可以不同的颜色显示不同的信息. private void ShowMsg(Color colo ...

  6. 01.04 linux命令(2

    ======================Linux下的用户管理==============用户信息保存/etc/passwd ,一般用户都有读的权限真正的用户:修改密码,可以登录伪用户:应用程序在 ...

  7. ffmpeg学习笔记-音频解码

    在之前的文章已经初步对视频解码有个初步的认识了,接下来来看一看音频解码 音频解码步骤 音频解码与视频解码一样,有者固有的步骤,只要按照步骤来,就能顺利的解码音频 以上是ffmpeg的解码流程图,可以看 ...

  8. 在C#中简单使用gRPC

    一.引言 本文采用gRPC官方提供的一个教程例子,通过这个例子可以学习到在.proto文件中定义服务.使用protocol buffer编译器生成服务器和客户端代码.使用C#gRPC API为您的服务 ...

  9. 快速Get-JAVA-IO流

    第四阶段 IO IO流 前言: 前面的学习我们只能够在已有的一定封闭范围内进行一些操作,但是这显然是无趣的,也是不支持我们实现一些复杂的需求,所以Java提供IO流这样一种概念,方便我们对数据进行操作 ...

  10. SQLSERVER 查看服务器IP地址的命令

    今天进行负载均衡的测试的时候 想查询一下数据库相关信息 百度了下 找到解决方案为: SELECT SERVERNAME = CONVERT(NVARCHAR(),SERVERPROPERTY('SER ...