首页 >数据库 >mysql教程 >MySQL5.5配置安装半同步复制_MySQL

MySQL5.5配置安装半同步复制_MySQL

PHP中文网
PHP中文网原创
2016-05-27 14:12:241098浏览

bitsCN.com

确认master和slave上是否开启have_dynamic_loading

master

MASTER(none) 10:54:58>show variables like 'have_dynamic_loading';
+----------------------+-------+| Variable_name        
| Value |+----------------------+-------+| have_dynamic_loading | YES   
|+----------------------+-------+

slave

SLAVEtest 10:47:52>show variables like 'have_dynamic_loading';
+----------------------+-------+| Variable_name        
| Value |+----------------------+-------+| have_dynamic_loading | YES   
|+----------------------+-------+


使用root在master上安装半同步插件

MASTER(none) 10:58:14>MASTER(none) 10:58:14>install plugin rpl_semi_sync_master soname 
'semisync_master.so';Query OK, 0 rows affected (0.01 sec)MASTER(none) 10:58:22>show plugins;
+--------------------------+--------+--------------------+--------------------+---------+| 
Name           | Status | Type        | Library    | License |
+--------------------------+--------+--------------------+--------------------+---------+| 
binlog           | ACTIVE | STORAGE ENGINE  | NULL       | GPL     || 
mysql_native_password    | ACTIVE | AUTHENTICATION     | NULL         | GPL     || 
mysql_old_password       | ACTIVE | AUTHENTICATION     | NULL      | GPL     || 
MRG_MYISAM          | ACTIVE | STORAGE ENGINE     | NULL      | GPL     || 
CSV              | ACTIVE | STORAGE ENGINE     | NULL   | GPL     || 
MEMORY            | ACTIVE | STORAGE ENGINE     | NULL        | GPL     ||
 MyISAM           | ACTIVE | STORAGE ENGINE     | NULL     | GPL     || 
 InnoDB                   | ACTIVE | STORAGE ENGINE     | NULL | GPL     ||
  INNODB_TRX               | ACTIVE | INFORMATION SCHEMA | NULL   | GPL     || 
  INNODB_LOCKS             | ACTIVE | INFORMATION SCHEMA | NULL   | GPL     || 
  INNODB_LOCK_WAITS        | ACTIVE | INFORMATION SCHEMA | NULL  | GPL     || 
  INNODB_CMP               | ACTIVE | INFORMATION SCHEMA | NULL  | GPL     || 
  INNODB_CMP_RESET         | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     || 
  INNODB_CMPMEM            | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     || 
  INNODB_CMPMEM_RESET      | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     || 
  INNODB_BUFFER_PAGE       | ACTIVE | INFORMATION SCHEMA | NULL      | GPL     || 
  INNODB_BUFFER_PAGE_LRU   | ACTIVE | INFORMATION SCHEMA | NULL     | GPL     || 
  INNODB_BUFFER_POOL_STATS | ACTIVE | INFORMATION SCHEMA | NULL      | GPL     || 
  BLACKHOLE                | ACTIVE | STORAGE ENGINE     | NULL  | GPL     
  || ARCHIVE         | ACTIVE | STORAGE ENGINE     | NULL    | GPL     || 
  FEDERATED       | ACTIVE | STORAGE ENGINE     | NULL    | GPL     || 
  PERFORMANCE_SCHEMA       | ACTIVE | STORAGE ENGINE     | NULL  | GPL     || 
  partition       | ACTIVE | STORAGE ENGINE     | NULL    | GPL     || 
  rpl_semi_sync_master     | ACTIVE | REPLICATION        | semisync_master.so | GPL   
  |+--------------------------+--------+--------------------+--------------------+---------+


使用root在slave上安装半同步插件

SLAVEtest 10:55:18>install plugin rpl_semi_sync_slave soname 'semisync_slave.so';Query OK, 0 rows 
affected (0.01 sec)SLAVEtest 10:59:45>show plugins;
+--------------------------+--------+--------------------+-------------------+---------+| 
Name                     | Status | Type      | Library    | License |
+--------------------------+--------+--------------------+-------------------+---------+| binlog   
| ACTIVE | STORAGE ENGINE     | NULL    | GPL     || mysql_native_password    | 
ACTIVE | AUTHENTICATION     | NULL              | GPL     || 
mysql_old_password       | ACTIVE | AUTHENTICATION     | NULL   | GPL     || 
MRG_MYISAM               | ACTIVE | STORAGE ENGINE     | NULL  | GPL     || 
CSV                      | ACTIVE | STORAGE ENGINE     | NULL| GPL     ||
 MEMORY                   | ACTIVE | STORAGE ENGINE   | NULL | GPL     || 
 MyISAM                   | ACTIVE | STORAGE ENGINE     | NULL | GPL   || 
 InnoDB                   | ACTIVE | STORAGE ENGINE     | NULL| GPL  || 
 INNODB_TRX               | ACTIVE | INFORMATION SCHEMA | NULL  | GPL     || 
 INNODB_LOCKS             | ACTIVE | INFORMATION SCHEMA | NULL  | GPL     || 
 INNODB_LOCK_WAITS        | ACTIVE | INFORMATION SCHEMA | NULL  | GPL     || 
 INNODB_CMP               | ACTIVE | INFORMATION SCHEMA | NULL | GPL     || 
 INNODB_CMP_RESET         | ACTIVE | INFORMATION SCHEMA | NULL  | GPL     || 
 INNODB_CMPMEM            | ACTIVE | INFORMATION SCHEMA | NULL     | GPL     || 
 INNODB_CMPMEM_RESET      | ACTIVE | INFORMATION SCHEMA | NULL   | GPL     || 
 INNODB_BUFFER_PAGE       | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     || 
 INNODB_BUFFER_PAGE_LRU   | ACTIVE | INFORMATION SCHEMA | NULL       | GPL     || 
 INNODB_BUFFER_POOL_STATS | ACTIVE | INFORMATION SCHEMA | NULL       | GPL     || 
 BLACKHOLE                | ACTIVE | STORAGE ENGINE     | NULL   | GPL   || 
 ARCHIVE                  | ACTIVE | STORAGE ENGINE     | NULL | GPL    || 
 FEDERATED                | ACTIVE | STORAGE ENGINE     | NULL | GPL     || 
 PERFORMANCE_SCHEMA       | ACTIVE | STORAGE ENGINE     | NULL     | GPL     || 
 partition                | ACTIVE | STORAGE ENGINE     | NULL| GPL     || 
 rpl_semi_sync_slave      | ACTIVE | REPLICATION        | semisync_slave.so | GPL    
 |+--------------------------+--------+--------------------+-------------------+---------+


分别在master和slave的my.cnf里添加以下配置

master

rpl_semi_sync_master_enabled=1rpl_semi_sync_master_timeout=1000rpl_semi_sync_master_trace_level=32rpl_semi_
sync_master_wait_no_slave=on

slave

rpl_semi_sync_slave_enabled=1


master日志

140203 23:06:17 [Note] Semi-sync replication initialized for transactions.140203 23:06:17 [Note] 
Semi-sync replication enabled on the master.140203 23:06:17 [Note] Server hostname (bind-address): 
'0.0.0.0'; port: 30307140203 23:06:17 [Note]   
- '0.0.0.0' resolves to '0.0.0.0';140203 23:06:17 [Note] 
Server socket created on IP: '0.0.0.0'.140203 23:06:17 
[Warning] 'proxies_priv' entry '@ root@mynode1' ignored in --skip-name-resolve mode.140203 23:06:17 
[Note] Event Scheduler: Loaded 0 events140203 23:06:17 [Note] /service/mysql/bin/mysqld: ready 
for connections.Version: '5.5.34-log'  socket: '/data/mysql/mysql.sock'  port: 30307  
MASTER_DB140203 23:06:17 [Note] Event Scheduler: scheduler thread started with id 1140203 
23:06:20 [Note] Start semi-sync binlog_dump to slave (server_id: 2), pos(binlog-master.000010, 290)

slave日志

140203 23:06:20 [Note] Slave I/O thread: Start semi-sync replication to master 'rep@mynode1:30307' 
in log 'binlog-master.000010' at position 290140203 23:06:20 [Note] Slave SQL thread initialized, 
starting replication in log 'binlog-master.000010' at position 290, relay log './mynode2-relay-bin.
000029' position: 440140203 23:06:20 [Note] Event Scheduler: scheduler thread started with id 
1140203 23:06:20 [Note] Slave I/O thread: connected to master 'rep@mynode1:30307',replication 
started in log 'binlog-master.000010' at position 290
MASTERtest 11:10:41>show global status like 'rpl%';
+--------------------------------------------+-------------+| Variable_name    | Value       |
+--------------------------------------------+-------------+| Rpl_semi_sync_master_clients  | 
1   || Rpl_semi_sync_master_net_avg_wait_time   | 619  || Rpl_semi_sync_master_net_wait_time  | 
619         || Rpl_semi_sync_master_net_waits             | 1           || 
Rpl_semi_sync_master_no_times              | 0    || Rpl_semi_sync_master_no_tx  | 
0           || Rpl_semi_sync_master_status                | ON   || 
Rpl_semi_sync_master_timefunc_failures     | 0           || 
Rpl_semi_sync_master_tx_avg_wait_time      | 734         || Rpl_semi_sync_master_tx_wait_time          
| 734         || Rpl_semi_sync_master_tx_waits              | 1           
|| Rpl_semi_sync_master_wait_pos_backtraverse | 0           || Rpl_semi_sync_master_wait_sessions         
| 0           || Rpl_semi_sync_master_yes_tx                | 1           
|| Rpl_status                                 | AUTH_MASTER 
|+--------------------------------------------+-------------+
SLAVEtest 11:10:02>show global status like 'rpl%';
+----------------------------+-------------+| Variable_name              | Value       
|+----------------------------+-------------+| Rpl_semi_sync_slave_status | ON          
|| Rpl_status                 | AUTH_MASTER |+----------------------------+-------------+

以上就是MySQL5.5配置安装半同步复制_MySQL的内容,更多相关内容请关注PHP中文网(www.php.cn)!


声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn