티스토리 뷰
환경 : Windows7 + Mysql5.5(Innodb) + MySQL Replication구성이후 실행
출처 - http://h391106.tistory.com/250
출처 - http://lks21c.blogspot.kr/2011/10/mysql-replication-semi-sync-how-to.html
MySQL 5.5 부터 기존의 built-in asynchronous replication 에 semisynchronous replication 이 추가되었다.
MySQL replication 은 기본적으로 asynchronous replication 을 사용한다. Master 는 Slave 가 Binary log 에 언제 엑세스를 했는지 혹은 수행을 했는지 아무정보가 없다.
Master crash 의 경우 Commit 된 정보가 어떤 Slave 로도 전송되지 말아야 한다. (하지만 Asynchronous Replication 에서는 이를 확인할 길이 없다.)
그 결과 Master 에서 Slave 로의 failover 시 누락된 트랜젝션이 발생하게 된다.
Semisynchronous Replication 은 asynchronous replication 의 대안이 될 수 있다.
------------------------------------------------------------------
Semisynchronous Replication 사용을 위해 Plugin 위치를 조회했다.
mysql> show variables like 'plugin_dir';
--------------------------------
<system variables>
mysql> SHOW VARIABLES LIKE 'rpl_semi_sync%';
<slave status>
mysql> SHOW STATUS LIKE 'Rpl_semi_sync%';
--------------------------------
On the master :
mysql> INSTALL PLUGIN rpl_semi_sync_master SONAME 'semisync_master.dll';
On the slave :
mysql> INSTALL PLUGIN rpl_semi_sync_slave SONAME 'semisync_slave.dll';
--------------------------------
On the master :
mysql> set global rpl_semi_sync_master_enabled=1;
mysql> set global rpl_semi_sync_master_timeout=100;
mysql> show variables like 'rpl_semi_sync%';
+------------------------------------+-------+
| Variable_name | Value |
+------------------------------------+-------+
| rpl_semi_sync_master_enabled | ON |
| rpl_semi_sync_master_timeout | 100 |
| rpl_semi_sync_master_trace_level | 32 |
| rpl_semi_sync_master_wait_no_slave | ON |
+------------------------------------+-------+
4 rows in set (0.00 sec)
-------------------------
On the slave :
mysql> show variables like 'rpl_semi_sync%';
mysql> set global rpl_semi_sync_slave_enabled=1;
mysql> stop slave io_thread;
Query OK, 0 rows affected (0.00 sec)
mysql> start slave io_thread;
Query OK, 0 rows affected (0.00 sec)
mysql> show status like 'Rpl_semi_sync%';
+----------------------------+-------+
| Variable_name | Value |
+----------------------------+-------+
| Rpl_semi_sync_slave_status | ON |
+----------------------------+-------+
1 row in set (0.00 sec)
--------------------------------
'Database' 카테고리의 다른 글
[ORACLE]ORU-10027: buffer overflow (0) | 2016.10.10 |
---|---|
[MYSQL]mysqldump 백업 (0) | 2016.09.29 |
[MYSQL]MySQL 5.5.x Replication(MySQL 5.6 이중화) (0) | 2016.09.20 |
[MYSQL]테이블 카운트, rows (0) | 2016.09.20 |
[MYSQL]DB복구(innodb) (0) | 2016.09.19 |
- Total
- Today
- Yesterday
- Oracle
- 자동차
- 윈도우
- server
- DB
- select
- user
- 서버
- eclipse
- DATABASE
- apache
- 테이블
- Shell
- 오라클
- 설정
- delete
- MySQL
- 데이터
- Linux
- 리눅스
- Windows
- 파일
- 백업
- java
- mssql
- table
- sql
- IP
- Toad
- tomcat
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |