中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

使用Maxscale實現mysql讀寫分離

發布時間:2020-07-27 09:07:47 來源:網絡 閱讀:14288 作者:weidabao123 欄目:MySQL數據庫

MaxScale 是 MariaDB 的產品之一,可以很方便的實現讀寫分離方案;并且提供了讀寫分離的負載均衡和高可用性保障。

一、安裝配置

前提:先配置好mysql的主從,Maxscale會自動的根據主從復制信息來判斷Masterslave

注:不能配置mysql互為主從,如果互為主從,兩臺都會被認為slave,在這種情況下,寫請求會被拒絕,只接受讀請求。

1.1.安裝

官網下載對應的rpm包,

wget  https://downloads.mariadb.com/MaxScale/2.0.3/centos/6server/x86_64/maxscale-2.0.3-1.centos.6.x86_64.rpm
rpm -ivh maxscale-2.0.3-1.centos.6.x86_64.rpm

maxscale的配置文件為:/etc/maxscale.conf,配置文件由多個配置模塊組成

vi /etc/maxscale.conf

#全局配置:
[maxscale]
threads=auto
log_info=1
log_notice=1
log_warning=1

#后端mysql定義
[server1]
type=server
address=192.168.10.1
port=3306
protocol=MySQLBackend
[server2]
type=server
address=192.168.10.2
port=3306
protocol=MySQLBackend

#監控配置
[MySQL Monitor] 
type=monitor
module=mysqlmon      #監控模塊默認使用mysqlmon,當然還有其他可選擇的模塊
servers=server1,server2
user=admin        #admin監控后端mysql的復制狀況,必須具有REPLICATION CLIENT權限      
passwd=123456
monitor_interval=10000

#觸發器定義 注意,以下兩句的上下順序不能變,不然無法生效
script=/opt/mysql_monitor.sh  #定義事件觸發腳本執行
events=master_down       #事件觸發器當master down時,執行上面的腳本,maxscale內置了很
                                 多的events
#讀寫分離service
[Read-Write Service] 
type=service
router=readwritesplit       #讀寫分離路由模式
servers=server1,server2
user=maxscale    #該用戶從后端mysql獲取用戶信息,對客戶端進行身份驗證,必須具有mysql.user table的select權限                
passwd=maxscale
max_slave_connections=100%                   
max_slave_replication_lag=3600000   #當slave的數據落后master小于3600秒時仍然可用
connection_timeout=300                          
router_options=master_failure_mode=error_on_write #允許master down掉,slave仍然可讀
#router_options=master_accept_reads=true      #允許master接受讀請求

[Read-Write Listener] 
type=listener
service=Read-Write Service
protocol=MySQLClient
port=3306

#管理服務配置 
[MaxAdmin Service]
type=service
router=cli

#管理服務監聽
[MaxAdmin Listener]
type=listener
service=MaxAdmin Service
protocol=maxscaled
socket=default

二、管理

Maxscale提供了maxadmin命令用于查看管理

[root@server ~]# maxadmin  list -
Unknown or missing option for the list command. Valid sub-commands are:
    clients    List all the client connections to MaxScale
    dcbs       List all the DCBs active within MaxScale
    filters    List all the filters defined within MaxScale
    listeners  List all the listeners defined within MaxScale
    modules    List all currently loaded modules
    monitors   List all monitors
    services   List all the services defined within MaxScale
    servers    List all the servers defined within MaxScale
    sessions   List all the active sessions within MaxScale
    threads    List the status of the polling threads in MaxScale
[root@server ~]# maxadmin list servers
Servers.
-------------------+-----------------+-------+-------------+--------------------
Server             | Address         | Port  | Connections | Status              
-------------------+-----------------+-------+-------------+--------------------
server1            | 192.168.10.1      |  3306 |           0 | Master, Running
server2            | 192.168.10.2     |  3306 |           0 | Slave, Running
-------------------+-----------------+-------+-------------+--------------------

三、高可用性

Maxscale默認只提供讀的高可用性,要實現寫的高可用性,可以使用兩種途徑:

1.需要使用Multi-MasterMonitor監控模塊,不同于上文使用的mysqlmon模塊,該模塊是通過read_only參數來選舉Master和Slave,結合腳本可以實現在Master fail的時候,取消slave的read_only屬性,將slave提升為Master

2.使用高可用軟件MMM


向AI問一下細節

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

AI

安乡县| 林芝县| 武乡县| 图木舒克市| 泰顺县| 岑巩县| 河西区| 柏乡县| 青神县| 罗源县| 安平县| 沁水县| 两当县| 吉水县| 黄陵县| 正镶白旗| 临桂县| 红桥区| 井陉县| 商河县| 江永县| 遂平县| 盐津县| 梁平县| 周至县| 越西县| 东阿县| 抚顺市| 武清区| 雅安市| 邵武市| 临西县| 来凤县| 和林格尔县| 大厂| 汝南县| 康马县| 永修县| 周至县| 岱山县| 黄冈市|