linux系统Amoeba+MySL主从读写分离配置 javaweb项目配置连接数据源

来源:互联网 发布:软件开发界面原则 编辑:程序博客网 时间:2024/06/02 01:16

使用amoeba依赖于java环境,首先要安装jdk、其次是配置数据库的主从复制,搭建amoeba配置读写的数据库服务

mysql配置主从可参考 http://blog.csdn.net/liqi_q/article/details/78542581

jdk安装可参考 http://blog.csdn.net/liqi_q/article/details/72963947

关于mysql主从配置就不单独细讲了,可以参考上面的文章去配置下,下面主要讲解amoeba的主要配置和安装

两台服务器 10.10.10.168(主 用来写入)、10.10.10.171(从 用来读取)我是把amoeba服务安装在了10.10.10.171这台服务器上


安装ameoba 
https://sourceforge.net/projects/amoeba/files/Amoeba%20for%20mysql/
wget https://sourceforge.net/projects/amoeba/files/Amoeba%20for%20mysql/2.2.x/amoeba-mysql-binary-2.2.0.tar.gz
mkdir /data/server/installSoft/amoeba-mysql-binary
tar xvf amoeba-mysql-binary-2.2.0.tar.gz -C /data/server/installSoft/amoeba-mysql-binary

cd /data/server/installSoft/amoeba-mysql-binary/conf 查看配置文件


amoeba.xml是主配置文件,主要配置一些连接访问的IP地址和访问端口





dbServices.xml主要配置连接的数据库(读、写)服务器的IP+端口信息和连接池信息



运行amoeba服务 ./data/server/installSoft/amoeba-mysql-binary/bin/amoeba start & # 后台运行

网上查了一些资料:JDK7启动对xss参数有最小值要求,必须大于228才能启动JVM解决:设置 -Xss256k 即可解决

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

停止服务可以使用强制杀死进程  ps -elf |grep amoeba |grep -v grep |awk '{print $4}'|xargs kill -9 

也可以使用 ./data/server/installSoft/amoeba-mysql-binary/bin/amoeba top命令

查看服务是否正常启动ps -elf |grep amoeba |grep -v grep


访问amoeba服务查看数据库连接情况做读写和查询服务测试

mysql -uroot -proot -h10.10.10.171 -P8066   (-u代表用户名、-p代表密码、-P代表端口、-h代表服务器IP地址)

成功进入mysql界面如下


下面针对连接上的数据库进行操作数据库操作数据

show databases; use ameoba_study;


下面是两个服务器数据库日志文件的log信息  tailf /data/logs/mysql_log/mysql.log 




javaWeb项目配置连接    基于c3p0,具体数据源配置如下:
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"  
    destroy-method="close">  
    <property name="driverClass" value="com.mysql.jdbc.Driver" />  
    <property name="jdbcUrl" value="jdbc:mysql://10.10.10.171:8066/amoeba_study" />  
    <property name="user" value="root" />  
    <property name="password" value="root" />  
    <property name="minPoolSize" value="1" />  
    <property name="maxPoolSize" value="1" />  
    <property name="maxIdleTime" value="1800" />  
    <property name="acquireIncrement" value="1" />  
    <property name="maxStatements" value="0" />  
    <property name="initialPoolSize" value="1" />  
    <property name="idleConnectionTestPeriod" value="1800" />  
    <property name="acquireRetryAttempts" value="6" />  
    <property name="acquireRetryDelay" value="1000" />  
    <property name="breakAfterAcquireFailure" value="false" />  
    <property name="testConnectionOnCheckout" value="true" />  
    <property name="testConnectionOnCheckin" value="false" />  
</bean> 

原创粉丝点击