메뉴 건너뛰기

조회 수 1973 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

MySQL 서버를 마스터/마스터로 DB replication 할 경우, MySQL 테이블에 AUTO_INCREMENT key 를 포함되어 있으면 마스터#1 및 마스터#2 DB 에 모두 INSERT 할 경우 중복키로 충돌이 발생하여서 replication 을 위한 Slave SQL 쓰레드가 중단될 수 있습니다. replication 에서 AUTO_INCREMENT 로 인한 중복키 충돌을 예방하는 방법은 다음과 같습니다.

1. 마스터​ #1 에서 아래와 같이 실행한다.

  - 아래와 같이 실행하면 1, 3, 5 ... 와 같이 홀수로 key 가 생성된다.​


​  mysql> set global auto_increment_increment=2;

  mysql> show variables like 'auto_increment%';
+---------------------------------+-------+
| Variable_name                  | Value |
+---------------------------------+-------+
| auto_increment_increment  | 2     |
| auto_increment_offset        | 1     |
+---------------------------------+-------+


2. 마스터​ #2 에서 아래와 같이 실행한다.

  - 아래와 같이 실행하면 2, 4, 6 ... 와 같이 짝수로 key 가 생성된다.​


​  mysql> set global auto_increment_increment=2;

  mysql> set global auto_increment_offset=2;

  mysql> show variables like 'auto_increment%';
+---------------------------------+-------+
| Variable_name                  | Value |
+---------------------------------+-------+
| auto_increment_increment  | 2     |
| auto_increment_offset        | 2     |
+---------------------------------+-------+

3. 주의사항

  - 위와 같이 설정하면 홀수, 짝수 값이 순차적으로 증가하지 못하고 중간에 누락된 것처럼 보여질 수 있다.

  - 만약 AUTO_INCREMENT 값이 1부터 순차적으로 증가하되 누락된 수가 없어야 한다면 위와 같이 설정하면 안 된다.

  - INSERT 쿼리가 마스터#1 및 마스터#2 에서 임의의 순서대로 자주 실행된다면 AUTO_INCREMENT 잠금으로 인해 대기 현상이 발생할 수 있다.


  1. No Image 22Dec
    by
    2016/12/22 Views 11523 

    MySQL INSERT 성능 향상

  2. MySql 의 Trigger(트리거) 로 정보 업데이트

  3. No Image 16Nov
    by
    2017/11/16 Views 8876 

    특정 COLUMN을 제외하고 SELECT/INSERT하는 방법

  4. MySql 윈도우에서 DB dump 백업과 복구하기

  5. No Image 19Dec
    by
    2015/12/19 Views 8360 

    다양한 단위의 시간차 구하기

  6. No Image 27Feb
    by
    2014/02/27 Views 8022 

    MySQL 최적화 방법 설명

  7. MySQL 대용량 DBMS 개선 사례

  8. No Image 23Dec
    by
    2016/12/23 Views 7478 

    테이블 체크, 백업

  9. No Image 07Aug
    by
    2015/08/07 Views 7384 

    MySQL/MariaDB 백업 & 복원 - mysqldump

  10. No Image 12Apr
    by
    2017/04/12 Views 7316 

    실수로 삭제한 mysql DB 복구방법

  11. MySql 에서 외래키(FK) 설정하는 방법과 Toad 에서 확인하기

  12. No Image 27Feb
    by
    2014/02/27 Views 6782 

    MySQL Replication 설정(Master-Slave, Maste

  13. No Image 29Aug
    by
    2016/08/29 Views 6767 

    DB의 모든 테이블을 삭제하는 쿼리

  14. No Image 30Aug
    by
    2016/08/30 Views 6606 

    컬럼에 포함된 특정문자열을 검색해서 그 문자로 또 다른 테이블검색하기

  15. MySQL 에서 NULL 값 처리

  16. No Image 27Feb
    by
    2014/02/27 Views 6254 

    MySql 문자열 합치기

  17. No Image 23Dec
    by
    2016/12/23 Views 6170 

    dump 를 db에 올릴때 인코딩 문제

  18. No Image 23Dec
    by
    2016/12/23 Views 6085 

    필드 변경, 추가, 삭제

  19. No Image 12Apr
    by
    2017/04/12 Views 6055 

    MySQL 쿼리 결과 값 세로로 보기

  20. SQL 고급

Board Pagination Prev 1 2 3 4 5 6 7 Next
/ 7

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved