[Maria DB] Master - Slave Replication 적용.

2022. 5. 2. 14:48·System Engineering

mysql 재기동 명령어

sudo service mysql [stop/start/restart]

 

DB(Maria DB) M-S 재구성

이 내용은 M-S 구조가 깨졌을때 재구성 하는 작업입니다.

slave 재기동 후 IO Thread, SQL Thread 가 yes로 나오면 수행 할 필요 없습니다.

 

Maria DB는 binary log를 통한 replication만 지원하기 때문에, 마스터의 내용을 복사 후 binary log 포지션을 기입해 주어 따라가게끔 해주어야 합니다.

bin log는 로컬파일을 사용한다는 장점이 있지만 Active - Standby 개념이 아닌 Master- Slave 관계여서 수동으로 작업해야할 게 많습니다.

 

#1~4과정은 데이터를 새로 엎어치는 내용입니다. 데이터의 보존을 위해  lock 을 걸어주어야 합니다.

#2번 , 4번과정의 dump와 다시 import 하는 작업은 스키마 구조를 같게 하기위해서 하는작업입니다. - 단순히 slave 깨진거라면 2,4번 생략 가능

1. Master DB Lock (on Master)

Maria DB > FLUSH TABLES WITH READ LOCK;

 

2. mysql dump (On Master, Master데이터를slave에 import하기위해 )

mkdir /home/myhome/dump

mysqldump -h salvehost -uroot -p --extended-insert --routines --triggers --all-databases > /home/myhome/dump /mysql_backup_$(date +\%Y\%m\%d).sql

 

3. slave기능stop (on Slaves)

stop slave;

 

4. mysqldump파일import (On slaves)

mysql -uroot -p < mysql_backup_$(date +\%Y\%m\%d).sql

 

5. Master의bin log메모

Maria DB >  SHOW MASTER STATUS;

+-------------------+----------+--------------+------------------+

| File              | Position | Binlog_Do_DB | Binlog_Ignore_DB |

+-------------------+----------+--------------+------------------+

| mysql-bin.000019 |  2454692 |              |                  |

+-------------------+----------+--------------+------------------+

 

6. slave구성 재설정(on slave)

Maria DB >

change master to

MASTER_HOST="master.host" ,

MASTER_USER="*****" ,

MASTER_PASSWORD="******" ,

MASTER_LOG_FILE="mysql-bin.000019",

MASTER_LOG_POS=2454692 ;

-->       MASTER_LOG_FILE에는 5번항목의 File 명을 (=mysql-bin.000019) 적어준다.

           MASTER_LOG_POS에는 5번항목의 Position을(= 2454692 ) 적어준다

 

7. Slave기능 시작(On Slave)

Maria DB > start slave ;

 

8. Slave상태 확인

Maria DB > show slave status \G;

IO Thread, SQL Thread 가 yes로 나와야함

9. Master DB Unlock

UNLOCK TABLES;

저작자표시 (새창열림)

'System Engineering' 카테고리의 다른 글

gitlab version 패치 (다운그레이드)  (0) 2022.05.08
[System] 리눅스 Screen 명령어 window 탭 page number 설정  (0) 2020.01.29
'System Engineering' 카테고리의 다른 글
  • gitlab version 패치 (다운그레이드)
  • [System] 리눅스 Screen 명령어 window 탭 page number 설정
DAMAT
DAMAT
Computer Science Engineer를 위한 tiStory
  • DAMAT
    Damat - Idea Factory
    DAMAT
  • 전체
    오늘
    어제
    • 분류 전체보기 (26)
      • Bigdata Engineering (14)
        • 빅데이터 플랫폼 R&D (1)
      • System Engineering (3)
      • Linux Server (3)
      • 프로그래밍 (1)
      • 교육 (1)
        • 문제 (1)
      • 코딩테스트 기록지 (2)
        • Python (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    mysql 보관기관 설정
    zookeeper cli
    gitlab 버전
    파이썬 소켓
    zookeeper 명령어
    activemq 모니터링
    빅데이터 모니터링
    python데몬
    kafka cli
    presto 메모리 설정
    주키퍼 cli
    hadoop이란
    python 소켓 프로그래밍
    db binlog
    리소스매니저
    gitlab 패치
    python 소켓통신
    주키퍼 명령어
    파이썬 소켓통신
    kafka 명령어
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
DAMAT
[Maria DB] Master - Slave Replication 적용.
상단으로

티스토리툴바