mysql-atlas安裝及使用教程

Atlas是由 Qihoo 360公司W(wǎng)eb平臺部基礎(chǔ)架構(gòu)團(tuán)隊(duì)開發(fā)維護(hù)的一個基于MySQL協(xié)議的數(shù)據(jù)中間層項(xiàng)目。它在MySQL官方推出的MySQL-Proxy 0.8.2版本的基礎(chǔ)上,修改了大量bug,添加了很多功能特性。目前該項(xiàng)目在360公司內(nèi)部得到了廣泛應(yīng)用,很多MySQL業(yè)務(wù)已經(jīng)接入了Atlas平臺,每天承載的讀寫請求數(shù)達(dá)幾十億條。同時,有超過50家公司在生產(chǎn)環(huán)境中部署了Atlas,超過800人已加入了我們的開發(fā)者交流群,并且這些數(shù)字還在不斷增加。

成都做網(wǎng)站、網(wǎng)站建設(shè)的開發(fā),更需要了解用戶,從用戶角度來建設(shè)網(wǎng)站,獲得較好的用戶體驗(yàn)。創(chuàng)新互聯(lián)公司多年互聯(lián)網(wǎng)經(jīng)驗(yàn),見的多,溝通容易、能幫助客戶提出的運(yùn)營建議。作為成都一家網(wǎng)絡(luò)公司,打造的就是網(wǎng)站建設(shè)產(chǎn)品直銷的概念。選擇創(chuàng)新互聯(lián)公司,不只是建站,我們把建站作為產(chǎn)品,不斷的更新、完善,讓每位來訪用戶感受到浩方產(chǎn)品的價值服務(wù)。

github地址
介紹

一、安裝

安裝

在安裝之前, 服務(wù)器上必須要裝有mysql, altas會用到mysql的組件。

在啟動時, 可能提示faild start altas of test之類的信息, 解決方法如下

echo '/usr/local/mysql/lib/' >> /etc/ld.so.conf
ldconfig

二、配置說明

[mysql-proxy]

(必備,默認(rèn)值即可)管理接口的用戶名
admin-username = user

(必備,默認(rèn)值即可)管理接口的密碼
admin-password = pwd

(必備,根據(jù)實(shí)際情況配置)主庫的IP和端口
proxy-backend-addresses = 192.168.0.12:3306

(非必備,根據(jù)實(shí)際情況配置)從庫的IP和端口,@后面的數(shù)字代表權(quán)重,用來作負(fù)載均衡,若省略則默認(rèn)為1,可設(shè)置多項(xiàng),用逗號分隔。如果想讓主庫也能分擔(dān)讀請求的話,只需要將主庫信息加入到下面的配置項(xiàng)中。
proxy-read-only-backend-addresses = 192.168.0.13:3306,192.168.0.14:3306

(必備,根據(jù)實(shí)際情況配置)用戶名與其對應(yīng)的加密過的MySQL密碼,密碼使用PREFIX/bin目錄下的加密程序encrypt加密,用戶名與密碼之間用冒號分隔。主從數(shù)據(jù)庫上需要先創(chuàng)建該用戶并設(shè)置密碼(用戶名和密碼在主從數(shù)據(jù)庫上要一致)。比如用戶名為myuser,密碼為mypwd,執(zhí)行./encrypt mypwd結(jié)果為HJBoxfRsjeI=。如果有多個用戶用逗號分隔即可。則設(shè)置如下行所示:
pwds = myuser: HJBoxfRsjeI=,myuser2:HJBoxfRsjeI=

(必備,默認(rèn)值即可)Atlas的運(yùn)行方式,設(shè)為true時為守護(hù)進(jìn)程方式,設(shè)為false時為前臺方式,一般開發(fā)調(diào)試時設(shè)為false,線上運(yùn)行時設(shè)為true
daemon = true

(必備,默認(rèn)值即可)設(shè)置Atlas的運(yùn)行方式,設(shè)為true時Atlas會啟動兩個進(jìn)程,一個為monitor,一個為worker,monitor在worker意外退出后會自動將其重啟,設(shè)為false時只有worker,沒有monitor,一般開發(fā)調(diào)試時設(shè)為false,線上運(yùn)行時設(shè)為true
keepalive = true

(必備,根據(jù)實(shí)際情況配置)工作線程數(shù),推薦設(shè)置成系統(tǒng)的CPU核數(shù)的2至4倍
event-threads = 4

(必備,默認(rèn)值即可)日志級別,分為message、warning、critical、error、debug五個級別
log-level = message

(必備,默認(rèn)值即可)日志存放的路徑
log-path = /usr/local/mysql-proxy/log

(必備,根據(jù)實(shí)際情況配置)SQL日志的開關(guān),可設(shè)置為OFF、ON、REALTIME,OFF代表不記錄SQL日志,ON代表記錄SQL日志,該模式下日志刷新是基于緩沖區(qū)的,當(dāng)日志填滿緩沖區(qū)后,才將日志信息刷到磁盤。REALTIME用于調(diào)試,代表記錄SQL日志且實(shí)時寫入磁盤,默認(rèn)為OFF
sql-log = OFF

(可選項(xiàng),可不設(shè)置)慢日志輸出設(shè)置。當(dāng)設(shè)置了該參數(shù)時,則日志只輸出執(zhí)行時間超過sql-log-slow(單位:ms)的日志記錄。不設(shè)置該參數(shù)則輸出全部日志。
sql-log-slow = 10

(可選項(xiàng),可不設(shè)置)關(guān)閉不活躍的客戶端連接設(shè)置。當(dāng)設(shè)置了該參數(shù)時,Atlas會主動關(guān)閉經(jīng)過'wait-timeout'時間后一直未活躍的連接。單位:秒
wait-timeout = 10

(必備,默認(rèn)值即可)Atlas監(jiān)聽的工作接口IP和端口, 連接altas的地址
proxy-address = 0.0.0.0:1234

(必備,默認(rèn)值即可)Atlas監(jiān)聽的管理接口IP和端口 admin-address = 0.0.0.0:2345, 連接altas管理服務(wù)的地址

(可選項(xiàng),可不設(shè)置)分表設(shè)置,此例中person為庫名,mt為表名,id為分表字段,3為子表數(shù)量,可設(shè)置多項(xiàng),以逗號分隔,若不分表則不需要設(shè)置該項(xiàng),子表需要事先建好,子表名稱為表名_數(shù)字,數(shù)字范圍為[0,子表數(shù)-1],如本例里,子表名稱為mt_0、mt_1、mt_2
tables = person.mt.id.3

(可選項(xiàng),可不設(shè)置)默認(rèn)字符集,若不設(shè)置該項(xiàng),則默認(rèn)字符集為latin1
charset = utf8

(可選項(xiàng),可不設(shè)置)允許連接Atlas的客戶端的IP,可以是精確IP,也可以是IP段,以逗號分隔,若不設(shè)置該項(xiàng)則允許所有IP連接,否則只允許列表中的IP連接
client-ips = 127.0.0.1, 192.168.1

(可選項(xiàng),極少需要)Atlas前面掛接的LVS的物理網(wǎng)卡的IP(注意不是虛IP),若有LVS且設(shè)置了client-ips則此項(xiàng)必須設(shè)置,否則可以不設(shè)置
lvs-ips = 192.168.1.1

三、Altas管理

執(zhí)行mysql -h227.0.0.1 -uuser -ppwd -P2345進(jìn)行連接, 進(jìn)入altas管理

1. 查詢幫助

select * from help;

+----------------------------+---------------------------------------------------------+
| command                    | description                                             |
+----------------------------+---------------------------------------------------------+
| SELECT * FROM help         | 顯示幫助                                        |
| SELECT * FROM backends     | 查看后端服務(wù)器狀態(tài)                 |
| SET OFFLINE $backend_id    | 下線后端服務(wù)器, $backend_id is backend_ndx's id |
| SET ONLINE $backend_id     | 上線后端服務(wù)器, ...                              |
| ADD MASTER $backend        | 添加主服務(wù)器, example: "add master 127.0.0.1:3306", ...               |
| ADD SLAVE $backend         | 添加從服務(wù)器, example: "add slave 127.0.0.1:3306", ...                |
| REMOVE BACKEND $backend_id | 移除后端服務(wù)器example: "remove backend 1", ...                        |
| ADD CLIENT $client         | 添加客戶端 example: "add client 192.168.1.2", ...                  |
| REMOVE CLIENT $client      | 移除客戶端example: "remove client 192.168.1.2", ...               |
| SAVE CONFIG                | 保存配置到文件                         |
+----------------------------+---------------------------------------------------------+

2. 查看后端mysql狀態(tài)信息

mysql> select * from backends
    -> ;
+-------------+-------------------+-------+------+
| backend_ndx | address           | state | type |
+-------------+-------------------+-------+------+
|           1 | 10.211.55.9:3306  | up    | rw   |
|           2 | 10.211.55.10:3306 | up    | ro   |
+-------------+-------------------+-------+------+
2 rows in set (0.00 sec)

3. 下線mysql服務(wù)器

mysql> set offline 2
    -> ;
+-------------+-------------------+---------+------+
| backend_ndx | address           | state   | type |
+-------------+-------------------+---------+------+
|           2 | 10.211.55.10:3306 | offline | ro   |
+-------------+-------------------+---------+------+
1 row in set (0.00 sec)

4. 上線mysql服務(wù)器

mysql> set online 2;
+-------------+-------------------+---------+------+
| backend_ndx | address           | state   | type |
+-------------+-------------------+---------+------+
|           2 | 10.211.55.10:3306 | unknown | ro   |
+-------------+-------------------+---------+------+
1 row in set (0.00 sec)

本文名稱:mysql-atlas安裝及使用教程
網(wǎng)頁路徑:http://muchs.cn/article32/iiddpc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航虛擬主機(jī)、網(wǎng)站設(shè)計(jì)面包屑導(dǎo)航、做網(wǎng)站、品牌網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)