MySQL의 RESET MASTER와 RESET SLAVE 명령은 MySQL 복제 환경에서 마스터와 슬레이브 서버를 초기화하거나 복제를 관리할 때 사용됩니다. 복제를 설정하거나 문제를 해결할 때 꼭 알아야 할 중요한 명령어들입니다.
RESET MASTER란?
RESET MASTER는 MySQL 마스터 서버에서 바이너리 로그(Binary Log)를 초기화하는 데 사용됩니다. 이 명령을 실행하면 기존 바이너리 로그 파일이 삭제되고, 새로운 로그 파일이 생성됩니다.
RESET MASTER 사용 목적
- 마스터 서버 초기화: 기존 로그를 삭제하여 새로 시작할 때.
- 디스크 공간 절약: 오래된 바이너리 로그를 제거하여 저장 공간 확보.
- 복제 재설정: 새로운 슬레이브를 추가하거나 기존 복제 관계를 초기화할 때.
RESET MASTER 기본 문법
RESET MASTER;
RESET MASTER 사용 예제
1. 마스터 서버 초기화하기
RESET MASTER;
위 명령을 실행하면 모든 기존 바이너리 로그가 삭제되고, 새로운 로그 파일이 mysql-bin.000001로 재생성됩니다.
2. RESET MASTER 전후 로그 파일 상태 확인
SHOW BINARY LOGS;
-- 기존 로그 상태 확인 후 RESET MASTER 실행
RESET MASTER;
SHOW BINARY LOGS;
-- 새로운 로그 파일 확인
주의사항
- 이 명령은 복제를 사용하는 환경에서 신중히 실행해야 합니다. 슬레이브가 바이너리 로그 파일에 액세스할 수 없으면 복제가 중단될 수 있습니다.
- 반드시 필요한 경우에만 사용하며, 실행 전 전체 데이터베이스 백업을 권장합니다.
RESET SLAVE란?
RESET SLAVE는 MySQL 슬레이브 서버에서 복제 설정을 초기화하는 데 사용됩니다. 슬레이브 관련 상태 정보를 삭제하고, 새로운 복제 관계를 설정하기 위한 준비 작업입니다.
RESET SLAVE 사용 목적
- 복제 관계 초기화: 기존 마스터와의 연결 정보 삭제.
- 복제 문제 해결: 복제 오류를 해결하거나 새로운 마스터와의 복제를 설정할 때.
RESET SLAVE 기본 문법
RESET SLAVE [ALL];
- RESET SLAVE: 슬레이브 로그와 상태 정보를 초기화.
- RESET SLAVE ALL: 슬레이브 설정 정보(예: 마스터 정보, 연결 정보)도 초기화.
RESET SLAVE 사용 예제
1. 기본 슬레이브 초기화
STOP SLAVE;
RESET SLAVE;
START SLAVE;
위 명령은 슬레이브를 정지하고 초기화한 후 다시 시작합니다.
2. 슬레이브 설정 정보 초기화
STOP SLAVE;
RESET SLAVE ALL;
CHANGE MASTER TO MASTER_HOST='192.168.1.100', MASTER_USER='replica', MASTER_PASSWORD='password', MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=0;
START SLAVE;
위 명령은 슬레이브의 복제 설정 정보를 완전히 삭제하고, 새로운 마스터를 설정한 뒤 복제를 시작합니다.
RESET MASTER와 RESET SLAVE의 차이점
- RESET MASTER: 마스터 서버에서 바이너리 로그를 초기화.
- RESET SLAVE: 슬레이브 서버에서 복제 상태와 설정 정보를 초기화.
실무에서의 활용 사례
- 복제 환경 초기화
기존 복제 관계를 초기화하고 새로운 복제를 설정해야 할 때 유용합니다. - 복제 오류 해결
마스터와 슬레이브 간 데이터 동기화가 실패했을 경우, RESET SLAVE로 문제를 해결할 수 있습니다. - 데이터 정리 및 최적화
오래된 바이너리 로그를 삭제하여 디스크 공간을 절약하고, 복제 환경을 새롭게 시작할 수 있습니다.
추가 예제: 복잡한 복제 환경 설정
1. 슬레이브 다중 연결 초기화
STOP SLAVE;
RESET SLAVE ALL;
CHANGE MASTER TO MASTER_HOST='master1.example.com', MASTER_USER='replica_user', MASTER_PASSWORD='replica_pass', MASTER_LOG_FILE='mysql-bin.000010', MASTER_LOG_POS=120;
START SLAVE;
2. RESET MASTER로 새로운 바이너리 로그 시작
RESET MASTER;
SHOW BINARY LOGS;
-- 새로운 로그 파일(mysql-bin.000001) 확인
결론
MySQL의 RESET MASTER와 RESET SLAVE 명령은 복제 환경을 설정하거나 초기화하는 데 필수적인 도구입니다.
공식 가이드 문서: https://dev.mysql.com/doc/refman/8.0/en/reset-master.html
'DB' 카테고리의 다른 글
[MySQL] CREATE LOGFILE GROUP 완벽 가이드 사용법(로그파일 그룹 생성) (0) | 2025.01.20 |
---|---|
[MySQL] GRANT ROLE 완벽 가이드 사용법(역할[Role] 부여) (0) | 2025.01.20 |
[MySQL] DROP ROLE 완벽 가이드 사용법(역할[Role] 삭제) (0) | 2025.01.18 |
[MySQL] CREATE ROLE 완벽 가이드 사용법(역할[Role] 생성) (0) | 2025.01.15 |
[MySQL] ALTER TABLE ... PARTITION 완벽 가이드 사용법(테이블 파티션 관리) (0) | 2025.01.15 |
[MySQL] CREATE TABLE AS 완벽 가이드 사용법(데이터를 조회하여 테이블 생성) (1) | 2025.01.15 |
[MySQL] CREATE SPATIAL INDEX 완벽 가이드 사용법(공간인덱스) (0) | 2025.01.15 |
[MySQL] SET CHARACTER SET 완벽 가이드 사용법(캐릭터셋 설정) (0) | 2025.01.15 |