Amoeba是一个类似MySQL
Proxy的分布式数据库中间代理层软件,是由陈思儒开发的一个开源的java项目。其主要功能包括读写分离,垂直分库,水平分库等。Amoeba For MySQL处于在应用和数据库之间,扮演一个中介的角色,它对客户端透明,能将应用传递过来的SQL语句经过分析后,根据配置文件路由到不同的数据库进行适当的处理。Amoeba实现了简单的负载均衡(采用轮询算法)和Failover。
在配置文件中,parameters属性指的是sql表达式中的where条件中cloumn字段。例如:在rule1中,参数是AUTHORITY,表达式是AUTHORITY=1,相当于sql语句的select * from account where
AUTHORITY=1。如果有多个属性,可采用逗号分隔。
在同一台电脑中安装多个mysql服务,不能通过安装多次双击mysql安装文件的方式实现。假设电脑中已经安装一个MySQL服务(作为主服务器master),安装目录为D:\MySQL Server 5.1。此时复制MySQL Server 5.1目录下的所有安装文件至一个新的目录,以E:\MySQL Server
5.1目录为例说明,把它作为从服务器slave。
首先修改从服务器的配置文件,即E:\MySQL Server 5.1目录下的my.ini文件。用记事本打开,修改[client]下的port=3307(区别主服务的端口,避免冲突),修改[mysqld]下的port=3307,basedir="E:/MySQL Server
5.1/",datadir="E:/Program
Files/MySQL/MySQL Server 5.1/data/",innodb_data_home_dir="E:/MySQL Datafiles/",其中innodb_data_home_dir自行设置路径 ,datadir为数据的存储路径,根据自己的data文件夹位置自行设置,主服务器的data文件夹默认在C:\Documents
and Settings\All Users\Application Data\MySQL\MySQL Server 5.1目录下。
然后在命令行窗口下进入以下目录E:\MySQL Server
5.1\bin后,执行以下命令mysqld
install mysql_slave,其中mysql_slave为服务名。操作如图:
图3.2.13 安装MySQL服务
接着在注册表找到HKEY_LOCAL_MACHINE
\SYSTEM\CurrentControlSet \Services\ MySQL_ SLAVE中找到ImagePath项,在该项中加入--defaults-file="E:\MySQL Server 5.1\my.ini"。
最后,再回到命令行窗口的E:\MySQL Server 5.1\bin,执行net start mysql 命令,即可启动新的mysql服务。