amoeba安裝與簡單使用(一)


1.我的環境
Amoeba 2.0.1 -- CentOS release 6.8 (Final) -- 10.20.49.254
Mysql 5.1.73 -- CentOS release 6.4 (Final) -- 10.20.48.254
JDK 1.7.0_51

 

2.軟件安裝
在10.20.49.254上:
wget https://jaist.dl.sourceforge.net/project/amoeba/Amoeba%20for%20mysql/2.x/amoeba-mysql-binary-2.0.1-BETA.tar.gz
mkdir /usr/local/amoeba-2.0.1
tar xf amoeba-mysql-binary-2.0.1-BETA.tar.gz -C /usr/local/amoeba-2.0.1/

 

在10.20.48.254上:

yum install mysql-server -y

 

3.Amoeba配置
vim /usr/local/amoeba-2.0.1/bin/amoeba
  JAVA_HOME=/usr/local/jdk1.7.0_51


vim /usr/local/amoeba-2.0.1/conf/dbServers.xml

    #########
    # 第1部分
    #########
    # 可以定義多個抽象服務器,每個抽象服務器都代表一組服務器連接信息
    # 換句話說,就是可以代理多個服務器集群
    <dbServer name="abstractServer" abstractive="true">
        <factoryConfig class="com.meidusa.amoeba.mysql.net.MysqlServerConnectionFactory">
            <property name="manager">${defaultManager}</property>
            <property name="sendBufferSize">64</property>
            <property name="receiveBufferSize">128</property>
            # 關於服務器連接的信息,Amoeba-->Mysql
            <property name="port">3306</property>
            <property name="schema">amoeba</property>
            <property name="user">root</property>
            <property name="password">root</property>
        </factoryConfig>

        <poolConfig class="com.meidusa.amoeba.net.poolable.PoolableObjectPool">
            <property name="maxActive">500</property>
            <property name="maxIdle">500</property>
            <property name="minIdle">10</property>
            <property name="minEvictableIdleTimeMillis">600000</property>
            <property name="timeBetweenEvictionRunsMillis">600000</property>
            <property name="testOnBorrow">true</property>
            <property name="testWhileIdle">true</property>
        </poolConfig>
    </dbServer>

    ##########
    # 第二部分
    ##########
    <dbServer name="server1"  parent="abstractServer">
        <factoryConfig>
            <property name="ipAddress">10.20.48.254</property>
        </factoryConfig>
    </dbServer>

    <dbServer name="server2"  parent="abstractServer">
        <factoryConfig>
            <property name="ipAddress">10.20.49.250</property>
        </factoryConfig>
    </dbServer>

    ##########
    # 第三部分
    ##########
    <dbServer name="multiPool" virtual="true">
        <poolConfig class="com.meidusa.amoeba.server.MultipleServerPool">
            # 負載均衡算法,如果這個服務器池中有多個服務器的話,該配置才生效
            <property name="loadbalance">1</property>

            # 當前池中的服務器列表,如果只寫一個,就表示Amoeba只作為代理出現
            # 如果寫兩個或多個,就表示Amoeba充當的是負載均衡器
            <property name="poolNames">server1</property>
        </poolConfig>
    </dbServer>

 

vim /usr/local/amoeba-2.0.1/conf/amoeba.xml

    # 應用程序連接amoeba時需要用到一些信息,這些信息配置在amoeba.xml文件中
    # 這是Amoeba作為代理角色的配置信息
    <proxy>
        <service name="Amoeba for Mysql" class="com.meidusa.amoeba.net.ServerableConnectionManager">
            # 應用程序使用這個端口和IP地址來連接Amoeba
            <property name="port">8066</property>
            <property name="ipAddress">10.20.49.254</property>
            <property name="authenticator">
                <bean class="com.meidusa.amoeba.mysql.server.MysqlClientAuthenticator">
                    # 應用程序使用這個用戶名和密碼來連接Amoeba
                    <property name="user">root</property>
                    <property name="password">amoeba</property>
                </bean>
            </property>
        </service>
    </proxy>

 

4.啟動Mysql和Amoeba
/etc/init.d/mysql start
/usr/local/amoeba-2.0.1/bin/amoeba start

 

5.在數據庫中創建schema(這個需要提前創建好)
mysqladmin -uroot password 'root'
mysql -uroot -proot -e "grant all on *.* to 'root'@'%' identified by 'root';flush privileges";

 

6.測試連接
假如我們使用命令行來連接
mysql -h 10.20.49.254 -P 8806 -uroot -proot

使用GUI來連接,比如navicate,也可以


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM