亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

搭建 MySQL 讀寫分離(內附源碼包)

發布時間:2020-06-16 10:16:53 來源:網絡 閱讀:609 作者:低調的男孩 欄目:MySQL數據庫

Amoeba簡介
Amoeba(變形蟲)項目,該開源框架于2008年 開始發布一款 Amoeba for Mysql軟件。這個軟件致力于MySQL的分布式數據庫前端代理層,它主要在應用層訪問MySQL的 時候充當SQL路由功能,專注于分布式數據庫代理層(Database Proxy)開發。座落與 Client、DB Server(s)之間,對客戶端透明。具有負載均衡、高可用性、SQL 過濾、讀寫分離、可路由相關的到目標數據庫、可并發請求多臺數據庫合并結果。 通過Amoeba能夠完成多數據源的高可用、負載均衡、數據切片的功能,目前Amoeba已在很多企業的生產線上面使用。

讀寫分離原理圖
搭建 MySQL 讀寫分離(內附源碼包)

實驗環境
搭建 MySQL 讀寫分離(內附源碼包)

相關軟件包鏈接:https://pan.baidu.com/s/1TANw0pEGgnxgEfGNU9hsGQ 密碼:0s4h

實驗目標:
成功搭建mysql讀寫分離

實驗步驟
一、先搭建主從復制,可參考https://blog.51cto.com/13760351/2173559
二、配置amoeba服務
1.關閉防火墻,安全性

setenforce 0
systemctl start firewalld.service

2.在主機amoeba上安裝java環境

cp jdk-6u14-linux-x64.bin /usr/local/ #將jdk軟件包復制到Linux系統中
cd /usr/local
chmod +x jdk-6u14-linux-x64.bin #賦予執行權限
./jdk-6u14-linux-x64.bin    #執行jdk,輸入yes,然后按enter
mv jdk1.6.0_14/ /usr/local/jdk1.6  #將jdk軟件移動到此目錄下

3.配置系統環境變量

vim /etc/profile #配置系統環境變量

export JAVA_HOME=/usr/local/jdk1.6
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/lib:$JAVA_HOME/jre/bin/:$PATH:$HOME/bin
export AMOEBA_HOME=/usr/local/amoeba
export PATH=$PATH:$AMOEBA_HOME/bin

source /etc/profile #刷新,使系統環境變量生效

4.安裝并配置amoeba軟件

mkdir /usr/local/amoeba  
tar zxvf amoeba-mysql-binary-2.2.0.tar.gz -C /usr/local/amoeba/
chmod -R 755 /usr/local/amoeba/  #賦予權限
/usr/local/amoeba/bin/amoeba   #啟動amoeba

5.配置amoeba讀寫分離
(1)在master,slave1,slave2上添加權限開放給amoeba訪問
grant all on *.* to test@'192.168.65.%' identified by '123.com';

(2)編輯amoeba.xml配置文件

cd /usr/local/amoeba  #回到amoeba服務器
vim conf/amoeba.xml

搭建 MySQL 讀寫分離(內附源碼包)
搭建 MySQL 讀寫分離(內附源碼包)

(3)編輯dbServers.xml 配置文件
vim conf/dbServers.xml
搭建 MySQL 讀寫分離(內附源碼包)
搭建 MySQL 讀寫分離(內附源碼包)

(4)啟動amoeba軟件

/usr/local/amoeba/bin/amoeba start&
netstat -anpt | grep java

搭建 MySQL 讀寫分離(內附源碼包)

三.測試客戶端

  1. 安裝mysql客戶端
    yum install -y mysql

2.通過代理訪問mysql
mysql -u amoeba -p123456 -h 192.168.65.162 -P8066

3.在MASTER上創建一個表

mysql -u root -p
mysql> use hhhh;
Mysql> create table zz (id int(10),name varchar(10),address varchar(20))

4.在主服務器上插入數據
insert into zz values('1','zhang','this_is_master');
搭建 MySQL 讀寫分離(內附源碼包)

5.在從服務器1上插入數據
insert into zz values('2','zhang','this_is_slave1');
搭建 MySQL 讀寫分離(內附源碼包)

6.在從服務器2上插入數據
insert into zz values('3','zhang','this_is_slave2');
搭建 MySQL 讀寫分離(內附源碼包)

7.在客戶端上測試
搭建 MySQL 讀寫分離(內附源碼包)
8.在客戶端插入數據
insert into zz values('5','zhang','write_test');
插入的語句在客戶端查詢不到,只有在master上看到,證明寫操作在master服務器上面

9.在master服務器查看
搭建 MySQL 讀寫分離(內附源碼包)

由此驗證,在通過客戶端連接數據庫后寫入的數據都在master,然后同步給slave1,slave2上,所有讀操作都分攤給了slave從服務器,用來分擔數據庫壓力。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

固始县| 延寿县| 牟定县| 松原市| 孟村| 庆城县| 葫芦岛市| 右玉县| 高雄县| 准格尔旗| 乌拉特前旗| 九龙坡区| 德令哈市| 肇源县| 阜康市| 松江区| 筠连县| 临高县| 当雄县| 中宁县| 大宁县| 塘沽区| 磐石市| 东阿县| 宿松县| 岗巴县| 佛坪县| 大丰市| 鄢陵县| 磴口县| 龙门县| 济源市| 蓝山县| 柯坪县| 沁水县| 营山县| 灌南县| 雅江县| 陈巴尔虎旗| 温泉县| 三门县|