数据库中间件lesmysql.pdf
oracle中间件weblogic
•PaaS
•部署J2EE标准应用包括servlet,JSP,JavaBean
•基于SSL安全认证
•集成扩展JDBC,JMS,JNDI,JTA等服务
•自动化部署
•基于web的分布式
•高可用集群:LB,failover
数据库的特点
•基于mysqlNET协议
•读写分离
•负载均衡
•连接池
•连接故障转移
•SQL分析,过滤
•安全认证
•对应用完全透明,仅一个
mysql-配置
1.tar解压成文件夹
2.cd;mkdiretclog
3.配置etc文件,并设置权限660
4.配置账号,并在mysql里(针对eth0的ip)
5.启动mysql-
./bin/mysql---defaults-
file=/home/mysql//etc/.conf
6.连接测试
mysql-负载均衡
•通过rw-splitting.lua实现
--connectionpool
ifnot.global.config.rwsplitthen
.global.config.rwsplit{
min_idle_connections4,
max_idle_connections8,
is_debugfalse
}
end
业界方案
•mysql-
性能较差
LUA开发和成本高
•amoebaformysql
性能较好
配置相对复杂,无需LUA
•自行研发
amoeba系列
•工程师主导研发
•AmoebaforMySQL
•AmoebaforAladdin
•AmoebaforMongoDB
amoebaformysql
•基于java
•负载均衡
•读写分离
•高可用(读自动failover)
•query过滤
•控制
•数据切分,路由
•官网
•
amoebaformysql架构
amoebaformysql安装
•安装java1.5以上
•解压
•修改conf文件
dbServer.xml:配置master和slave的信息
amoeba.xml:配置amoeba本身信息
rule.xml:如何分片数据,如何整合返回的数据规则
access_list.conf:前端程序控制列表
functionMap.xml:数据库函数如何被amoeba解析
ruleFunctionMap.xml:在rule.xml中自定义hash函数
log4j.xml:配置log4j日志输出信息
amoebaformysql使用
•安装jdk1.5以上
•exportJAVA_HOME=..
•启动amoeba进程:
cdbin;
./launcher
•关闭amoeba进程
./shutdown
•连接到amoeba
使用mysql客户端即可
amoebaformysql
•