Amoeba-mysql主从+读写分离实战+测试+排错

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
No entry or manifest in @ali/alfa-aliyundotcom-free-widget-goods-card
Error: No entry or manifest in @ali/alfa-aliyundotcom-free-widget-goods-card
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:578760
    at h (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:379745)
    at Generator.<anonymous> (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:381068)
    at Generator.next (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:380155)
    at Pe (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:492261)
    at a (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:492465)
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:492526
    at new Promise (<anonymous>)
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:492405
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:578950
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
No entry or manifest in @ali/alfa-aliyundotcom-free-widget-goods-card
Error: No entry or manifest in @ali/alfa-aliyundotcom-free-widget-goods-card
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:578760
    at h (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:379745)
    at Generator.<anonymous> (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:381068)
    at Generator.next (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:380155)
    at Pe (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:492261)
    at a (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:492465)
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:492526
    at new Promise (<anonymous>)
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:492405
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:578950
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
No entry or manifest in @ali/alfa-aliyundotcom-free-widget-goods-card
Error: No entry or manifest in @ali/alfa-aliyundotcom-free-widget-goods-card
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:578760
    at h (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:379745)
    at Generator.<anonymous> (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:381068)
    at Generator.next (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:380155)
    at Pe (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:492261)
    at a (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:492465)
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:492526
    at new Promise (<anonymous>)
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:492405
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.52/scripts/articleDetail.js:1:578950
简介:

Amoeba-mysql读写分离实战

         Amoeba用途有很多,这里看标题我们就先说读写分离,因为我也只会这个。Amoeba定义为国内的,开源的。目前(2015年10月20日)我们用amoeba2.2版本来做。

先说一下本人环境:wKioL1Ym5zbyIxExAADay0VnuMg256.jpg



Mysql 5.6

Centos 6.4

Mysql一主两从已OK。

Amoeba 2.2.x

Amoeba下载地址:http://sourceforge.net/projects/amoeba/files/Amoeba%20for%20mysql/

 

由于Amoeba需要用到jave se 所以我们需要安装jdk环境。

最新的1.8 可用。

安装jdk:

rpm -ivh jdk-8u60-linux-x64.rpm

wKiom1Ym50jR_QM_AAEV4426fbg217.jpg


source /etc/profile

验证jdk:

 wKiom1Ym52qSsKYOAAEhME4H_Cc727.jpg

Jdk就完事了,现在开始amoeba的安装。

 

先创建目录文件

mkdir /usr/local/amoeba

tar zxvf amoeba-mysql-binary-2.2.0.tar.gz -C /usr/local/amoeba

解压指定目录

wKioL1Ym57rCmWhXAAFbVfwqpww932.jpg


然后我们进入conf文件,这里的xml为储存amoeba设置连接mysql的数据

在amoeba目录下,输入

./bin/amoeba

wKiom1Ym56mhWXu9AABAvOaodL4427.jpg

如果出现说明amoeba安装OK,

 

接下来设置amoeba的参数,设置参数的文件在conf目录下的amoeba.xml和dbServers.xml两个文件。

先看 dbServiers.xml

wKioL1Ym5-uyJ-yDAARt_eq2r5A452.jpg


grant all on *.* to root@'192.168.0.191' identified by "123456";这条命令是需要在客户端运行的,让amoeba调度器能够连接我们的数据库并做操作

wKiom1Ym5-HyttdUAAPoUDHtH64447.jpg


这个dbServers.xml就设置到这里

 

 

接下来看amoeba.xml


 wKiom1Ym5_2SAOlWAAMQ1eTXXC4730.jpgwKioL1Ym6D_h4ZprAAN8fzp7MGk709.jpg

 


配置完成后保存。

然后启用amoeba

/usr/local/amoeba/bin/amoeba &       &表示在后台运行

如果出现

wKiom1Y5tEDQktl4AAFO8PV24ao190.jpg打开bin/amoeba

DEFAULT_OPTS="-server -Xms256m -Xmx256m -Xss128k"
改成

    DEFAULT_OPTS="-server -Xms256m -Xmx256m -Xss256k"




用ps –ef |grep amoeba 看一下是否启动

查看netstat -tunlp | grep 8066 看一下端口是否开启

##amoeba这台机器是不用开启mysql服务

 

 

 

     在其他客户端上验证是否可以登录amoeba上;

wKioL1Ym6F7hkcY1AABGN6mSdvA342.jpg



这样就表示登录成功。

 wKiom1Ym6E-A4lJoAAEF1P-PbwU124.jpg



到此读写分离就已经搭建完成了,如果要结合到前段web的应用上就把web端的数据库连接改到amoeba这台服务器的8066端口上,用户名密码就是amoeba.xml里配置的用户名和密(并非real-mysql-server)的用户。


如果想实现分库分用户比如mysql里yyy用户管理yyy库,zzz用户管理zzz库。可以新解压个amoeba程序修改端口,修改库,修改用户,另起进程进行读写分离。



此处我前端web是discuz论坛,就要修改/usr/local/nginx/html/config/config_global.php

wKioL1Y5v6SCVrOXAAKfBq_TL2g715.jpg


\本文转自 转身撞墙角 51CTO博客,原文链接:http://blog.51cto.com/chentianwang/1709659


相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
打赏
0
0
0
0
344
分享
相关文章
RunnerGo API 性能测试实战:从问题到解决的全链路剖析
API性能测试是保障软件系统稳定性与用户体验的关键环节。本文详细探讨了使用RunnerGo全栈测试平台进行API性能测试的全流程,涵盖测试计划创建、场景设计、执行分析及优化改进。通过电商平台促销活动的实际案例,展示了如何设置测试目标、选择压测模式并分析结果。针对发现的性能瓶颈,提出了代码优化、数据库调优、服务器资源配置和缓存策略等解决方案。最终,系统性能显著提升,满足高并发需求。持续关注与优化API性能,对系统稳定运行至关重要。
2025接口测试全攻略:高并发、安全防护与六大工具实战指南
本文探讨高并发稳定性验证、安全防护实战及六大工具(Postman、RunnerGo、Apipost、JMeter、SoapUI、Fiddler)选型指南,助力构建未来接口测试体系。接口测试旨在验证数据传输、参数合法性、错误处理能力及性能安全性,其重要性体现在早期发现问题、保障系统稳定和支撑持续集成。常用方法包括功能、性能、安全性及兼容性测试,典型场景涵盖前后端分离开发、第三方服务集成与数据一致性检查。选择合适的工具需综合考虑需求与团队协作等因素。
97 24
如何实现 MySQL 的读写分离?
本文介绍了 MySQL 读写分离的实现方式及其主从复制原理,解释了如何通过主从架构提升读并发能力。重点分析了主从同步延时问题及解决方案,如半同步复制、并行复制等技术手段,并结合实际案例探讨了高并发场景下的优化策略。文章还提醒开发者在编写代码时需谨慎处理插入后立即查询的情况,避免因主从延时导致的数据不一致问题。
391 44
如何实现 MySQL 的读写分离?
使用温InnoDB缓冲池启动MySQL测试
使用温InnoDB缓冲池启动MySQL测试
16 0
MySQL8.4 Enterprise安装Firewall及测试
MySQL8.4 Enterprise安装Firewall及测试
39 0
MySQL8使用物理文件恢复MyISAM表测试
MySQL8使用物理文件恢复MyISAM表测试
21 0
【03】鸿蒙实战应用开发-华为鸿蒙纯血操作系统Harmony OS NEXT-测试hello word效果-虚拟华为手机真机环境调试-为DevEco Studio编译器安装中文插件-测试写一个滑动块效果-介绍诸如ohos.ui等依赖库-全过程实战项目分享-从零开发到上线-优雅草卓伊凡
【03】鸿蒙实战应用开发-华为鸿蒙纯血操作系统Harmony OS NEXT-测试hello word效果-虚拟华为手机真机环境调试-为DevEco Studio编译器安装中文插件-测试写一个滑动块效果-介绍诸如ohos.ui等依赖库-全过程实战项目分享-从零开发到上线-优雅草卓伊凡
87 10
【03】鸿蒙实战应用开发-华为鸿蒙纯血操作系统Harmony OS NEXT-测试hello word效果-虚拟华为手机真机环境调试-为DevEco Studio编译器安装中文插件-测试写一个滑动块效果-介绍诸如ohos.ui等依赖库-全过程实战项目分享-从零开发到上线-优雅草卓伊凡
从Postman到Apipost:我的动态参数测试实战踩坑记
作为一名全栈开发工程师,在开发用户中心模块时,我遇到了复杂参数API测试的挑战。最初使用Postman时,发现其在生成动态参数(如邮箱、手机号和日期)时存在诸多问题,导致测试效率低下甚至出错。例如,随机生成的邮箱格式无效等 后来,CTO推荐了Apipost,它提供了更智能的参数生成方式:支持真实邮箱、符合规范的手机号以及合法日期范围,极大提升了测试效率和准确性。通过对比,Apipost在处理复杂动态参数方面明显优于Postman,减少了维护成本并提高了团队协作效率。现在,我们已全面切换到Apipost,并利用其「参数组合测试」功能发现了多个边界条件bug。
使用崖山YMP 迁移 Oracle/MySQL 至YashanDB 23.2 验证测试
这篇文章是作者尚雷关于使用崖山YMP迁移Oracle/MySQL至YashanDB 23.2的验证测试分享。介绍了YMP的产品信息,包括架构、版本支持等,还详细阐述了外置库部署、YMP部署、访问YMP、数据源管理、任务管理(创建任务、迁移配置、离线迁移、校验初始化、一致性校验)及MySQL迁移的全过程。
Python 高级编程与实战:构建自动化测试框架
本文深入探讨了Python中的自动化测试框架,包括unittest、pytest和nose2,并通过实战项目帮助读者掌握这些技术。文中详细介绍了各框架的基本用法和示例代码,助力开发者快速验证代码正确性,减少手动测试工作量。学习资源推荐包括Python官方文档及Real Python等网站。

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等