MySQL配置Amoeba中间件

article/2025/9/13 13:03:48

MySQL配置Amoeba中间件

      • Amoeba介绍
      • 环境配置
      • 安装Amoeba
        • 配置Amoeba配置文件
        • 配置dbServers.xml,设置数据库,登录MySQL的账号和密码
      • 启动Amoeba
      • 注意事项

Amoeba介绍

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

基于此可以实现负载均衡、读写分离、高可用性等需求。

Amoeba相当于一个SQL请求路由器,目的是为负载均衡、读写分离、高可用性提供机制,而不是完全实现它们。用户需要结合使用MySQL的 Replication等机制来实现副本同步等功能。

环境配置

Amoeba服务器ip:192.168.77.146

Amoeba环境条件

源码环境:gcc相关环境,java环境,本次用到的是java1.8

# 安装gcc环境
[root@localhost ~]# yum -y install gcc*
# 导入相关的压缩包
[root@localhost ~]# ls
amoeba-mysql-3.0.5-RC-distribution.zip  anaconda-ks.cfg  jdk-8u271-linux-x64.tar.gz
# 安装java环境
[root@localhost ~]# mkdir /usr/local/jdk1.8
[root@localhost ~]# tar -xf jdk-8u271-linux-x64.tar.gz -C /usr/local/
[root@localhost ~]# mv /usr/local/jdk1.8.0_271 /usr/local/jdk1.8
# 配置java环境
[root@localhost ~]# vim /etc/profile
# java环境配置,放在profile文件的最后
JAVA_HOME=/usr/local/jdk1.8
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$CLASSPATH
export CLASSPATH# 验证
[root@localhost ~]# java -version
java version "1.8.0_271"
Java(TM) SE Runtime Environment (build 1.8.0_271-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.271-b09, mixed mode)# 配置防火墙规则,开启8066端口
[root@localhost ~]# firewall-cmd --add-port=8066/tcp --permanent
[root@localhost ~]# firewall-cmd --reload

安装Amoeba

[root@localhost ~]# unzip amoeba-mysql-3.0.5-RC-distribution.zip
[root@localhost ~]# mv amoeba-mysql-3.0.5-RC /usr/local/amoeba

配置Amoeba配置文件

[root@localhost ~]# cd /usr/local/amoeba
# 修改主配置文件
[root@localhost amoeba]# vim conf/amoeba.xml

在这里插入图片描述

在这里插入图片描述

配置dbServers.xml,设置数据库,登录MySQL的账号和密码

# 修改数据库配置文件
[root@localhost amoeba]# vim conf/dbServers.xml

在这里插入图片描述

在这里插入图片描述

启动Amoeba

[root@localhost amoeba]# ./bin/launcher

在这里插入图片描述

注意事项

1).在做Master/Slave的时候,当删除了master的帐号,如果想要看到slave的效果,那就需要重启master的数据库服务再去看slave的status;(但是当salve从不可用到master可用了,不用重启master的数据库服务,slave也能看到效果)
2).在做Master/Slave的时候,我们有两台Salve,而且是内网的机器,所以使用了“192.168.1.%”这样的方式来创建用户,在一定的程度上保障帐号的安全性,又方便管理,使用“*”是错误的;
3).对于多Slave的帐号问题,还可以有其它方式来创建帐号的,就是在Master为每个Slave创建独立的帐号和密码;
4)修改log4jxml取消日志文件生成(太大了,磁盘很容易满)<param name="file" value="
${amoeba.home}/logs/project.log"/>改成:<param name="file" value="<![CDATA[${amoeba.home}/logs/project.log>/dev/null]]>"/>
5). 性能优化,打开bin/amoeba,DEFAULT_OPTS="-server -Xms256m-Xmx256m -Xss128k”改成:DEFAULT_OPTS="-server -Xms512m -Xmx512m-Xmn100m -Xss1204k"
6). loadbalance元素设置了loadbalance策略的选项,这里选择第一个“ROUNDROBIN”轮询策略,该配置提供负载均衡、failOver、故障恢复功能。poolNames定义了其中的数据库节点配置(当然也可以是虚拟的节点)。此外对于轮询策略,poolNames还定义了其轮询规则,比如设置成“Slavel,Slavel,Slave2”那么Amoeba将会以两次Slave1,一次Slave2的顺序循环对这些数据库节点转发请求。

http://chatgpt.dhexx.cn/article/kd3EqQKY.shtml

相关文章

MySQL主从复制和基于Amoeba的读写分离部署

文章目录 MySQL主从复制和基于Amoeba读写分离什么是主从复制&#xff1f;为什么要有MySQL主从复制&#xff1f;什么是读写分离&#xff1f;一、MySQL主从复制原理二、主从复制的工作过程三、主从复制方式1、异步复制方式2、半同步复制/增强半同步复制3、全同步复制4、多线程复制…

amoeba mysql下载_amoeba数据库中间件透明实现MYSQL读写分离

Amoeba(变形虫)项目,该开源框架于2008年 开始发布一款 Amoeba for Mysql软件。这个软件致力于MySQL的分布式数据库前端代理层&#xff0c;它主要在应用层访问MySQL的 时候充当SQL路由功能&#xff0c;专注于分布式数据库代理层(Database Proxy)开发。座落与 Client、DB Server(…

mysql amoeba_MySQL基于Amoeba实现读写分离

读写分离应用分析&#xff1a; 在企业用户中&#xff0c;在大量的数据请求下&#xff0c;单台数据库将无法承担所有读写操作。解决方法: 配置多台数据库服务器以实现主从复制读写分离。 1、基于程序代码内部实现 在代码中根据select、 insert 进行路由分类&#xff0c;这种方法…

mysql amoeba 配置_Amoeba新版本MYSQL读写分离配置

官方简介 Amoeba的中文意思是变型虫 主要解决&#xff1a; • 降低 数据切分带来的复杂多数据库结构 • 提供切分规则并降低 数据切分规则 给应用带来的影响 • 降低db 与客户端的连接数 • 读写分离 个人简单描述 可能你还没明白Amoebla这鬼东西主要干麻的呢&#xff01;比方说…

amoeba mysql_Mysql 基于 Amoeba 的 读写分离

首先说明一下amoeba 跟 MySQL proxy在读写分离的使用上面的区别&#xff1a; 在MySQL proxy 6.0版本 上面如果想要读写分离并且 读集群、写集群 机器比较多情况下&#xff0c;用mysql proxy 需要相当大的工作量&#xff0c;目前mysql proxy没有现成的 lua脚本。mysql proxy根本…

amoeba mysql binary_amoeba安装与实现amoeba for mysql读写分离

运行环境 l CentOS6.3 l Jdk1.6.0_30 l amoeba-mysql-binary-2.2.0 l amoeba&#xff1a;192.168.88.17 l master1&#xff1a;192.168.88.10 l slave1&#xff1a;192.168.88.11 一&#xff1a; 安装jdk1.5以上版本 1.1 卸载centos服务器自带版本jdk 1.1.1 …

amoeba-mysql主从复制配置

amoeba-mysql主从复制配置 主mysql192.168.8.186 1. 同步时间ntpdate ntp.org.cn 2. 打开mysql配置文件/etc/my.cnf&#xff0c;在mysqld下添加 a) log-binmaster-bin ---------启动二进制日志系统 b) server-id1 ---------服务id&#xff0c;主服务器server-id比从服务器serv…

mysql amoeba 事务_MySQL-Amoeba

Amoeba 变形虫 Amoeba 变形虫服务默认端口号8066 该软件能识别读写请求&#xff0c;把读写请求分配到不同的后端MySQL服务器 不用像MySQL-router用端口进行区分读写。 实验: 为了查看读写分离效果 本实验就不配置主从复制 1、 首先IP规划 amoeba:192.168.1.76 master:192.168.1…

amoeba mysql proxy_mysql-proxy和amoeba 分别实现Mariadb读写分离

内容概览&#xff1a; 1、mysql-proxy实现Mariadb读写分离 1、1 拓扑图和环境介绍 1、2 mysql-proxy安装 1、3 设置mysql-proxy 1、4 主节点添加mysql-proxy可访问用户 1、5 读写分离验证 2、amoeba 2、1 amoeba工作原理图 2、2 环境拓扑 2、3 配置JAVA环境 2、4 安装配置amoeb…

amoeba mysql_使用Amoeba 实现MySQL DB 读写分离

Amoeba(变形虫)项目是一个开源框架&#xff0c;于2008年开始发布一款 Amoeba for MySQL软件&#xff1b; 这个软件致力于MySQL的分布式数据库前端代理层&#xff0c;它主要在应用层访问MySQL的时候充当SQL路由功能&#xff0c;专注于分布式数据库代理层(Database Proxy)开发&am…

amoeba mysql_mysql中间件-amoeba

中间件&#xff1a;一种提供在不同技术、不同的软件之间共享资源的程序&#xff0c;更大化了利用了数据库的性能&#xff0c;可以无限扩展(注&#xff1a;真实环境中并非如此) 数据库的中间件&#xff1a; mysql proxy (官方版本)性能低&#xff0c;需要lua 脚本 atlas 性能低&…

Amoeba

1.介绍 Amoeba是mysql代理&#xff0c;增强mysql。类似的产品还有MyCat &#xff08;mysql代理&#xff09; 2.资源&#xff1a;点击打开链接c82k 3.准备&#xff1a;amoeba是基于java的所以必须有jdk 4.上传amoeba 5.解压tar包 6.配置文件 amoeba配置文件两个 dbServer…

Mysql基于Amoeba_读写分离搭架

一、Amoeba简介 Amoeba是一个以MySQL为底层数据存储&#xff0c;并对应用提供MySQL协议接口的proxy。它集中地响应应用的请求&#xff0c;依据用户事先设置的规则&#xff0c;将SQL请求发送到特定的数据库上执行。基于此可以实现负载均衡、读写分离、高可用性等需求&#xff0…

mysql基于Amoeba(变形虫)实现读写分离

一&#xff0c;Amoeba介绍 1、什么是amoeba&#xff1f; ​ Amoeba(变形虫)项目&#xff0c;专注 分布式数据库 proxy 开发。座落与Client、DB Server(s)之间。对客户端透明。具有负载均衡、高可用性、sql过滤、读写分离、可路由相关的query到目标数据库、可并发请求多台数据…

Amoeba:开源的分布式数据库Porxy解决方案

什么是Amoeba? Amoeba(变形虫)项目&#xff0c;该开源框架于2008年 开始发布一款 Amoeba for Mysql软件。这个软件致力于MySQL的分布式数据库前端代理层&#xff0c;它主要在应用层访问MySQL的 时候充当SQL路由功能&#xff0c;专注于分布式数据库代理层&#xff08;Database …

findbugs html报告,利用findBugs插件来扫描代码,并用ant生成报告

最近项目要用findbugs插件来生成报告&#xff0c;总结了一下用法和如何生成报告 1&#xff0c; 把下载的压缩包解压后&#xff0c;把 copy到eclipse的plugin目录中去&#xff1b; 2&#xff0c; 重新启动eclipse 3&#xff0c; 打开eclipse->window->Preferences&#xf…

AS之Findbugs

一 前言 Findbugs是由 National Science Foundation支持的一个用静态分析的方式来寻找Java代码中Bug的项目&#xff0c;它是一个静态分析工具&#xff0c;它检查类或者jar文件&#xff0c;将字节码和一组缺陷模式进行对比以发现可能的问题。有了静态分析工具&#xff0c;就可以…

AndroidStudio中FindBugs的简单使用教程

对于代码质量的检查&#xff0c;一直是一个比较棘手的问题。虽然我们部门有关于java代码的各种规范&#xff0c;领导也多次强调对代码的评审。 但是在实际执行过程中&#xff0c;由于开发人员的水平参差不齐&#xff0c;在开发项目时还有各种其他因素&#xff0c;比如时间紧任…

maven项目集成findbugs详解

文章目录 0、概述一、接入方式二、如何使用方式一、在控制台中执行打包命令方式二、使用IntelliJ IDEA的maven工具&#xff08;其他IDE用户忽略&#xff09; 三、bug详情查看四、忽略指定的包、类、类中的方法步骤一、在pom.xml中 增加配置。步骤二、增加配置文件&#xff0c;用…

Findbugs maven 插件使用

Findbugs maven 插件使用 FindBugs™手册 http://findbugs.sourceforge.net/manual/index.html 0、概述 FindBugs是一个静态分析工具&#xff0c;它将**字节码&#xff08;因此需要先编译&#xff09;**与一组缺陷模式进行对比以发现可能的问题。有了静态分析工具&#xff0c;…