1. 程式人生 > >MySQL高可用之MHA的搭建

MySQL高可用之MHA的搭建

測試環境

四臺虛擬機器:

server2:master              寫入
server3:Candicate master    讀
server4:slave               讀
server5:Monitor host        監控複製組

其中master對外提供寫服務,備選master(實際的slave,主機名server7)提供讀服務,slave也提供相關的讀服務,一旦master宕機,將會把備選master提升為新的master,slave指向新的master

一、資料庫配置

1、server2:master

[[email protected]
mysql]# mysql -pwestos mysql> grant replication slave on *.* to [email protected]'172.25.12.%' identified by 'westos'; mysql> show master status; +---------------+----------+--------------+------------------+------------------------------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | +---------------+----------+--------------+------------------+------------------------------------------+
| binlog.000002 | 1006 | | | 2a0a9397-83ea-11e8-b141-52540091ccfd:1-4 | +---------------+----------+--------------+------------------+------------------------------------------+ mysql> grant all on *.* to [email protected]'172.25.32.%' identified by 'westos'; Query OK, 0 rows affected, 1 warning (0.04 sec)

2、server3、4:slave

[[email protected] ~]# mysql -pwestos
mysql> change master to master_host='172.25.12.2',master_user='natasha',master_password='westos',master_auto_position=1;

mysql> start slave;
mysql> show slave status\G'
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 172.25.12.2
                  Master_User: natasha
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: binlog.000002
          Read_Master_Log_Pos: 1006
               Relay_Log_File: server3-relay-bin.000002
                Relay_Log_Pos: 1213
        Relay_Master_Log_File: binlog.000002
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes

##server4同server3即可,需測試主從複製ok

mysql> grant replication slave on *.* to [email protected]'172.25.12.%' identified by 'westos';

二、軟體安裝

1、3 個節點上安裝

mha4mysql-node-0.56-0.el6.noarch.rpm
perl-DBD-MySQL.x86_64

## 依賴性軟體:
perl-Config-Tiny-2.12-7.1.el6.noarch.rpm
perl-Email-Date-Format-1.002-5.el6.noarch.rpm
perl-Log-Dispatch-2.27-1.el6.noarch.rpm
perl-Mail-Sender-0.8.16-3.el6.noarch.rpm
perl-Mail-Sendmail-0.79-12.el6.noarch.rpm
perl-MIME-Lite-3.027-2.el6.noarch.rpm
perl-MIME-Types-1.28-2.el6.noarch.rpm
perl-Parallel-ForkManager-0.7.9-1.el6.noarch.rpm

2、管理節點上安裝

mha4mysql-manager-0.56-0.el6.noarch.rpm
mha4mysql-node-0.56-0.el6.noarch.rpm

## 依賴性軟體:
perl-Config-Tiny-2.12-7.1.el6.noarch.rpm
perl-Email-Date-Format-1.002-5.el6.noarch.rpm
perl-Log-Dispatch-2.27-1.el6.noarch.rpm
perl-Mail-Sender-0.8.16-3.el6.noarch.rpm
perl-Mail-Sendmail-0.79-12.el6.noarch.rpm
perl-MIME-Lite-3.027-2.el6.noarch.rpm
perl-MIME-Types-1.28-2.el6.noarch.rpm
perl-Parallel-ForkManager-0.7.9-1.el6.noarch.rpm

三、配置 4 臺主機 ssh 免密連結

注意:安裝 openssh-clients-5.3p1-94.el6.x86_64

第一種方法:

1、server2、3、4 節點操作相似,以 server2 主機為例

[root@server2 ~]# ssh-keygen -t rsa  ##Enter 即可,選擇預設方式
[root@server2 ~]# ssh-copy-id -i .ssh/id_rsa.pub [email protected]
[root@server2 ~]# ssh-copy-id -i .ssh/id_rsa.pub [email protected]
##server3 主機 copy 金鑰至 server2、4 主機;server4 主機 copy 金鑰
至 server2、3 主機

2、server5 主機:管理節點

[root@server5 ~]# ssh-keygen -t rsa
[root@server5 ~]# ssh-copy-id -i .ssh/id_rsa.pub [email protected]
[root@server5 ~]# ssh-copy-id -i .ssh/id_rsa.pub [email protected]
[root@server5 ~]# ssh-copy-id -i .ssh/id_rsa.pub [email protected]

3、此時測試免密連線

server2、3、4 主機可互相免密登陸,server5 主機免密登陸其他主機

第二種方法:

server5 主機:管理節點

[root@server5 masterha]# ssh-keygen
[root@server5 masterha]# ssh-copy-id server5  ## 本機生成私鑰
[root@server5 masterha]# ls /root/.ssh/
authorized_keys  id_rsa  id_rsa.pub  known_hosts

[root@server5 masterha]# scp /root/.ssh/* server2:/root/.ssh/
[root@server5 masterha]# scp /root/.ssh/* server3:/root/.ssh/
[root@server5 masterha]# scp /root/.ssh/* server4:/root/.ssh/

此時測試免密連線

server2、3、4 主機可互相免密登陸,server5 主機免密登陸其他主機

四、MHA-Manger配置

1、建立 MHA 的工作目錄,並做相應配置

[[email protected] ~]# mkdir /etc/masterha
[[email protected] masterha]# pwd
/etc/masterha
[[email protected] masterha]# vim app.cnf

[server default]
manager_log=/etc/masterha/mha.log   //設定manager的日誌
manager_workdir=/etc/masterha/      //設定manager的工作目錄
master_binlog_dir=/var/lib/mysql    //設定master 儲存binlog的位置,以便MHA可以找到master的日誌,我這裡的也就是mysql的資料目錄
#master_ip_online_change_script=/etc/masterha/master_ip_online_change //設定自動failover時候的切換指令碼
#master_ip_online_change_script=/etc/masterha/master_ip_online_change //設定手動切換時候的切換指令碼
password=westos     //設定mysql中root使用者的密碼,這個密碼是前文中建立監控使用者的那個密碼
ping_interval=1     //設定監控主庫,傳送ping包的時間間隔,預設是3秒,嘗試三次沒有迴應的時候自動進行railover
remote_workdir=/tmp //設定遠端mysql在發生切換時binlog的儲存位置
repl_password=westos    //設定複製使用者的密碼
repl_user=natasha   //設定複製使用者
ssh_user=root       //設定ssh的登入使用者名稱
user=root   //設定監控使用者root
#report_script=/etc/masterha/send_report //設定發生切換後傳送的報警的指令碼

[server2]
hostname=172.25.12.2
port=3306

[server3]
candidate_master=1   //設定為候選master,如果設定該引數以後,發生主從切換以後將會將此從庫提升為主庫,即使這個主庫不是叢集中事件最新的slave
check_repl_delay=0   //預設情況下如果一個slave落後master 100M的relay logs的話,MHA將不會選擇該slave作為一個新的master,因為對於這個slave的恢復需要花費很長時間,通過設定check_repl_delay=0,MHA觸發切換在選擇一個新的master的時候將會忽略複製延時,這個引數對於設定了candidate_master=1的主機非常有用,因為這個候選主在切換的過程中一定是新的master
hostname=172.25.12.3
port=3306

[server4]
hostname=172.25.12.4
port=3306

2、每個 slave 節點設定 relay log 的清除方式

mysql> set global relay_log_purge=0;
Query OK, 0 rows affected (0.00 sec)
## 建議寫入配置檔案/etc/my.cnf中,以防重啟資料庫失效
relay_log_purge=0;

3、檢測ssh配置

[[email protected] ~]# masterha_check_ssh –conf=/etc/masterha/app.cnf

Tue Jul 10 10:54:59 2018 - [info] All SSH connection tests passed successfully.
## 顯示以上內容,則ssh免密連線成功

4、檢測repl環境

[root@server5 masterha]# masterha_check_repl --conf=/etc/masterha/app.cnf 

MySQL Replication Health is OK.     ## 主從複製環境配置成功

五、測試

1、開啟MHA後臺監控

[root@server5 masterha]# nohup masterha_manager --conf=/etc/masterha/app.cnf &
[1] 1112
[root@server5 masterha]# nohup: ignoring input and appending output to `nohup.out'    ## 此處直接回車
[root@server5 masterha]# 

2、server2:master down

關閉mysql程序:

[root@server2 ~]# ps ax
1392 pts/0    S      0:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --socket=/var/lib/mysql/mysql.
 1641 pts/0    Sl     0:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mys

[root@server2 mysql]# kill -9 1392
[root@server2 mysql]# kill -9 1641
此時 MHA manager 自動生成 app.failover.complete 檔案
[[email protected] masterha]# ls
app.cnf                master_ip_failover       mha.log
app.failover.complete  master_ip_online_change  nohup.out

3、master down後server3自動接管

server3:

mysql> show master status;
+---------------+----------+--------------+------------------+------------------------------------------------------------------------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set                                                                  |
+---------------+----------+--------------+------------------+------------------------------------------------------------------------------------+
| binlog.000002 |     2017 |              |                  | 2a0a9397-83ea-11e8-b141-52540091ccfd:1-6,
a5ddab64-83ea-11e8-9661-5254008d996b:1-3 |
+---------------+----------+--------------+------------------+------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> show slave status\G;
Empty set (0.00 sec)

ERROR: 
No query specified

4、server4:master指向server3

mysql> change master to master_host='172.25.12.3',master_user='natasha',master_password='westos',master_auto_position=1;
Query OK, 0 rows affected, 2 warnings (0.14 sec)
mysql> show slave status\G
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 172.25.12.3
                  Master_User: natasha
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: binlog.000002
          Read_Master_Log_Pos: 2017
               Relay_Log_File: server4-relay-bin.000002
                Relay_Log_Pos: 961
        Relay_Master_Log_File: binlog.000002
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes

六、MHA手動切換

1、server2:mysql 開啟(此時3為master,狀態alive)

[[email protected] ~]# /etc/init.d/mysqld start
Starting mysqld:                                           [  OK  ]

mysql> change master to master_host='172.25.12.3',master_user='natasha',master_password='westos',master_auto_position=1;
Query OK, 0 rows affected, 2 warnings (0.95 sec)

mysql> start slave;
Query OK, 0 rows affected (0.05 sec)

mysql> show slave status\G;
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 172.25.12.3

MHA管理: ##注意:配置檔案不能指定 備用master

[[email protected] masterha]# masterha_master_switch --conf=/etc/masterha/app.cnf --master_state=alive --new_master_host=172.25.12.2 --new_master_port=3306 --orig_master_is_new_slave --running_updates_limit=10000

It is better to execute FLUSH NO_WRITE_TO_BINLOG TABLES on the master before switching. Is it ok to execute on 172.25.12.3(172.25.12.3:3306)? (YES/no): YES

Starting master switch from 172.25.12.3(172.25.12.3:3306) to 172.25.12.2(172.25.12.2:3306)? (yes/NO): yes

master_ip_online_change_script is not defined. If you do not disable writes on the current master manually, applications keep writing on the current master. Is it ok to proceed? (yes/NO): yes

Tue Jul 10 13:48:16 2018 - [info] Switching master to 172.25.12.2(172.25.12.2:3306) completed successfully.

檢視狀態:

server2恢復master:
mysql> show master status;
+---------------+----------+--------------+------------------+------------------------------------------------------------------------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set                                                                  |
+---------------+----------+--------------+------------------+------------------------------------------------------------------------------------+
| binlog.000003 |      750 |              |                  | 2a0a9397-83ea-11e8-b141-52540091ccfd:1-6,
a5ddab64-83ea-11e8-9661-5254008d996b:1-3 |
+---------------+----------+--------------+------------------+------------------------------------------------------------------------------------+
server3恢復slave:
mysql> show slave status\G;
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 172.25.12.2
server4 master指向server2:
mysql> show slave status\G;
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 172.25.12.2

2、若master down,沒有 nohup masterha_manager,則需手動切換

關閉MHA Manage監控
[[email protected] ~]$ masterha_stop --conf=/etc/masterha/app.cnf
Stopped app1 successfully.
[1]+  Exit 1                  nohup masterha_manager --conf=/etc/masterha/app1.cnf --remove_dead_master_conf --ignore_last_failover < /dev/null > /var/log/masterha/app1/manager.log 2>&1
關閉server2資料庫:
[root@server2 ~]# ps ax
  884 ?        S      0:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --socket=/var/lib/mysql/mysql.
 1131 ?        Sl     0:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mys

[root@server2 ~]# kill -9 884
[root@server2 ~]# kill -9 1131

MHA管理:

[[email protected] masterha]# masterha_master_switch --conf=/etc/masterha/app.cnf --master_state=dead --dead_master_host=172.25.12.2 -dead_master_port=3306 --new_master_host=172.25.12.4 --new_master_port=3306 --ignore_last_failover

----- Failover Report -----

app: MySQL Master failover 172.25.12.2(172.25.12.2:3306) to 172.25.12.4(172.25.12.4:3306) succeeded

Master 172.25.12.2(172.25.12.2:3306) is down!

Check MHA Manager logs at server5 for details.

Master failover to 172.25.12.4(172.25.12.4:3306) completed successfully.

檢視狀態:

server4:切換master
mysql> show slave status\G;
Empty set (0.00 sec)

ERROR: 
No query specified

mysql> show master status;
+---------------+----------+--------------+------------------+------------------------------------------------------------------------------------------------------------------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set                                                                                                            |
+---------------+----------+--------------+------------------+------------------------------------------------------------------------------------------------------------------------------+
| binlog.000002 |     2573 |              |                  | 2a0a9397-83ea-11e8-b141-52540091ccfd:1-6,
a5ddab64-83ea-11e8-9661-5254008d996b:1-3,
ce6734ff-83ea-11e8-9786-525400eec4fb:1-3 |
+---------------+----------+--------------+------------------+------------------------------------------------------------------------------------------------------------------------------+
server3:master指向server4
mysql> show slave status\G;
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 172.25.12.4
server2:master指向server4
mysql> change master to master_host='172.25.12.4',master_user='natasha',master_password='westos',master_auto_position=1;

mysql> start slave;
mysql> show slave status\G;
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 172.25.12.4

3、配置VIP

[ro[email protected] masterha]# vim app1.cnf 
[server default]
manager_log=/etc/masterha/mha.log
manager_workdir=/etc/masterha/
master_binlog_dir=/var/lib/mysql
master_ip_online_change_script=/etc/masterha/master_ip_online_change
master_ip_failover_script= /etc/masterha/master_ip_failover
report_script=/etc/masterha/send_report
password=westos
ping_interval=1
remote_workdir=/tmp
repl_password=westos
repl_user=natasha
ssh_user=root
user=root

[server2]
hostname=172.25.12.2
port=3306

[server3]
#candidate_master=1
#check_repl_delay=0
hostname=172.25.12.3
port=3306

[server4]
hostname=172.25.12.4
port=3306
candidate_master=1
check_repl_delay=0

目前server4為master,server2、3為slave

[root@server4 ~]# ip addr add 172.25.12.100/24 dev eth0
[root@server4 ~]# ip addr
    inet 172.25.12.4/24 brd 172.25.12.255 scope global eth0
    inet 172.25.12.100/24 scope global secondary eth0

修改指令碼master_ip_failover master_ip_online_change

my $vip = '172.25.12.100/24';  ##注意:兩個指令碼都要改!
my $ssh_start_vip = "/sbin/ip addr add $vip dev eth0";
my $ssh_stop_vip = "/sbin/ip addr del $vip dev eth0";

[root@server5 masterha]# chmod +x master_ip_failover
[root@server5 masterha]# chmod +x master_ip_online_change

MHA管理:

[[email protected] masterha]# masterha_master_switch --conf=/etc/masterha/app.cnf --master_state=alive --new_master_host=172.25.12.2 --new_master_port=3306 --orig_master_is_new_slave --running_updates_limit=10000

***************************************************************
Disabling the VIP - 172.25.12.100/24 on old master: 172.25.12.4
***************************************************************

***************************************************************
Enabling the VIP - 172.25.12.100/24 on new master: 172.25.12.2 
***************************************************************

Tue Jul 10 14:21:42 2018 - [info] Switching master to 172.25.12.2(172.25.12.2:3306) completed successfully.

此時server2成為master,VIP漂移到server2主機:

[root@server2 ~]# ip addr
    inet 172.25.12.2/24 brd 172.25.12.255 scope global eth0
    inet 172.25.12.100/24 scope global secondary eth0

4、傳送郵件

修改配置檔案 app.cnf

## 在[server default]中新增
report_script=/etc/masterha/send_report

## 修改send_report
my $smtp='smtp.163.com';
my $mail_from='[email protected]';
my $mail_user='[email protected]';
my $mail_pass='password';
my $mail_to='[email protected]';

七、Mysql其他功能

1、慢查詢

mysql> show variables like '%slow%';
+---------------------------+---------------------------------+
| Variable_name             | Value                           |
+---------------------------+---------------------------------+
| log_slow_admin_statements | OFF                             |
| log_slow_slave_statements | OFF                             |
| slow_launch_time          | 2                               |
| slow_query_log            | OFF                             |
| slow_query_log_file       | /var/lib/mysql/server3-slow.log |
+---------------------------+---------------------------------+

##sql語句執行超過10s,會記錄為慢語句,存放在/var/lib/mysql/server3-slow.log
mysql> show variables like '%long%';
+----------------------------------------------------------+-----------+
| Variable_name                                            | Value     |
+----------------------------------------------------------+-----------+
| long_query_time                                          | 10.000000 |
| performance_schema_events_stages_history_long_size       | 10000     |
| performance_schema_events_statements_history_long_size   | 10000     |
| performance_schema_events_transactions_history_long_size | 10000     |
| performance_schema_events_waits_history_long_size        | 10000     |
+----------------------------------------------------------+-----------+

2、索引

mysql> show variables like '%index%';
+----------------------------------------+----------------------------------------+
| Variable_name                          | Value                                  |
+----------------------------------------+----------------------------------------+
| eq_range_index_dive_limit              | 200                                    |
| innodb_adaptive_hash_index             | ON                                     |
| innodb_adaptive_hash_index_parts       | 8                                      |
| innodb_cmp_per_index_enabled           | OFF                                    |
| log_bin_index                          | /var/lib/mysql/binlog.index            |
| log_queries_not_using_indexes          | OFF                                    |
| log_throttle_queries_not_using_indexes | 0                                      |
| performance_schema_max_index_stat      | -1                                     |
| relay_log_index                        | /var/lib/mysql/server3-relay-bin.index |
+----------------------------------------+----------------------------------------+

3、日誌截斷 mysqlbinlog –help

4、二進位制檔案

mysql> show binary logs;
+---------------+-----------+
| Log_name      | File_size |
+---------------+-----------+
| binlog.000001 |       177 |
| binlog.000002 |      2573 |
+---------------+-----------+

reset master;   ##清空master的二進位制日誌
reset slave;    ##清空slave的二進位制日誌

5、日誌大小

mysql> show variables like '%size%';

相關推薦

MySQL可用MHA搭建--錯誤整合

1.檢查整個複製環境狀況時,出現錯誤 masterha_check_repl –conf=/etc/masterha/app1.cnf 錯誤一:mysql日誌檔案未找到和mysql命令未找到 Can't exec "mysqlbinlog": No s

MySQL可用MHA搭建

測試環境 四臺虛擬機器: server2:master 寫入 server3:Candicate master 讀 server4:slave 讀 server5:Monitor host

MySQL可用MHA

ha高可用 filter 保存 yum mysql 復制 ast 詳細 ima ssh MHA,MySQL的高可用架構,在基於主從架構的模式下,當主服務器掛掉之後,由MHA中manager來決定從哪臺slave從服務器當中選擇一臺作為master主服務器,通常是比較從服

MySQL可用MHA理論章節

MHA 高可用 復制 背景介紹 高可用架構對於互聯網服務基本是標配,無論是應用服務還是數據庫服務都需要做到高可用。本文是對MySQL數據庫的高可用方案中,基於主從復制的MHA軟件理論部分進行梳理和小結。 MHA軟件介紹 1.MHA軟件是由MHA Manager(管理節點)和MHA Node(數據節

mysql 可用mha實現

一 mha簡介  mha是由日本DeNA公司youshimaton(現就職於Facebook公司)開發,是一套MySQL環境下故障切換和主從提升的高可用軟體。據說可以在0~30秒內完成主從切換, 並且在切換過程中可以最大限度的保持資料一致性,當然本人認為保持資料一致性這個

mysql可用MHA(補充3)--管理多組主從複製

前面我們瞭解了mha管理一組主從,然而在實際生產環境中不同的應用會使用不同的資料庫,因此會有多組主從複製,我們可以使用一個mha manager 來管理多組主從複製資料庫。我們只需要建立一個全域性配置檔案,你可以將這幾組中相同的配置資訊寫到全域性配置檔案中,如使用者名稱、密

【DB寶19】在Docker中使用MySQL可用MHA

[toc] # 一、MHA簡介和架構 ## 1.1 MHA簡介 MHA(Master High Availability Manager and tools for MySQL)目前在MySQL高可用方面是一個相對成熟的解決方案,它是由日本人youshimaton採用Perl語言編寫的一個指令碼管理

Mysql可用 MHA

mysql 的高可用 郵件報警 Mysql 的高可用之 MHAMHA作為MySQL高可用性環境下故障切換和主從提升的高可用軟件。在MySQL故障切換過程中,MHA能做

MHA MySQL 可用集群搭建

配置文件 manage 獲取 getopt server rsa 安裝 ref == 軟件版本MySQL: 5.7MHA: 0.56CentOS: 7.4 MySQL服務器Master: 192.168.1.224 mysql01Slave1: 192.168.1.22

MySQL可用方案 MHA二 master_ip_failover

  [[email protected] bin]# vi master_ip_failover 1 cat master_ip_failover 2 #!/usr/bin/env perl 3 use strict; 4 use warnings FAT

MySQL可用方案 MHA四 keepalived 半同步複製

    [[email protected] ~]# cat /etc/mysql_mha/app1.cnf [server default]manager_log=/data/mysql_mha/app1-manager.logmanager_workdir=/data/m

mysql可用架構mhamaster_ip_failover腳本

warnings ddr long HERE eat code ida val nbsp 腳本如下: #!/usr/bin/env perl use strict; use warnings FATAL => ‘all‘; u

(轉)MySQL可用方案MHA的部署和原理

進制 說明 only manager 方案 運行 例如 必須 轉移 背後深層次的邏輯: MHA Node則運行在每個mysql節點上,MHA Manager會定時探測集群中的master節點,當master出現故障時,它自動將最新數據的slave提升為master,然後將其

MySQL可用部署MHA

運行 code relay rontab form inter 二進制 for 簡單記錄 MHA簡介 MHA 由兩部分組成: MHA Manager(管理節點)和 MHA Node(數據節點)。 MHA Manager可以單獨部署在一臺獨立的機器上管理多個 master-

MySQL可用雙主複製模式

MySQL雙主模式高可用實現   生產案例:VIP:10.105.98.211MASTERHOSTNAME IPADDR PORTmy-prod01.oracle.com 192.168.10.97 3306 my-prod02.oracle.com 192.168.10.5 3306 SL

配置MySQL可用叢集MHA

配置MySQL高可用叢集+++++++++++++++++++主機角色 :客戶端 client50資料庫伺服器 mysql51 到 mysql55管理主機 mgm56VIP地址 192.168.4.100拓撲結構: client50 | mysql51主 |

MySQL可用PXC簡介

PXC簡介: galera產品是以galera cluster方式為mysql提高高可用叢集解決方案的。galera cluster就是集成了galera外掛的mysql叢集。galera replication是codership提供的mysql資料同步方案,具有高可用性,方便擴充套件,並且可以實現多個m

Mysql可用架構——MHA

MHA(Master High Availability)什麼是資料庫的高可用性呢??資料庫主機中我們會有做成主從關係的或者其他關係型資料庫,如果主掛了,不會影響資料的訪問,假如是一主三從架構,主庫掛了,但主庫能被從庫ssh上去的情況下,MHA從三個從庫中選擇同步最接近的作為

MySQL可用方案--MHA原理

簡介 MHA(Master High Availability)目前在MySQL高可用方面是一個相對成熟的解決方案,它由日本DeNA公司youshimaton(現就職於Facebook公司)開發,是日本的一位MySQL專家採用Perl語言編寫的一個指令碼管理工具,該工具僅適用於MySQLReplicatio