CLOUD/Public Cloud

[AWS] RDS : Master(온프레미스) - Slave(AWS Cloud) 서버 구축

alsruds 2023. 3. 14. 17:29

- 재해 복구 상황

 

[ 온프레미스 서버 (자체 서버) ] : Master

● 마스터 서버 설정

참고 : 2023.03.02 - [클라우드/서버] - [DB 이중화] Active(쓰기) - Active(읽기)

 

[DB 이중화] Active(쓰기) - Active(읽기)

[ 준비 ] ※ CentOS 8 서버 2대 준비 ● 네트워크 설정 ● 방화벽 해제 setenforce 0 systemctl stop firwalld ● MySQL 설치 yum install mysql-server systemctl restart mysqld ● MySQL root 패스워드 설정 mysql_secure_installation [ M

alsrudalsrudalsrud.tistory.com

# 특정 데이터베이스 백업파일 만들기
mysqldump -u root -p --databases [db명] > [백업파일명]

 

● Slave 서버에 백업 파일 복구

① 명령어 이용

mysql -u [사용자id] -p -h [slave server 엔드포인트]		#사용자id는 rds 생성 시 설정

② 파일 전송 프로그램 이용

》 FileZilla

 

[ AWS Cloud ] : Slave

● Master 서버 연결

》 MySQL Workbench : Slave Server 접속

call mysql.rds_set_external_master(
    '[master ip]',
    [master port],
    '[user id]',
    '[password]',
    'mysql-bin.[master 로그 번호]'
    [master 포지션 번호],
    0);

Master Server의 로그 번호나 포지션 번호는 Master Server에서 show master status; 시 확인 가능

 

 시작

call mysql.rds_start_replication
#멈추기 : call mysql.rds_stop_replication;

 

※ 공유기 이용 시 포트포워딩 필요

외부(slave) 》 공유기 》 내 컴퓨터 》 가상머신(master)

공유기에서 한 번~
컴퓨터>가상머신에서 한 번~

slave 서버에서 접속하는 master 서버의 ip 는 공유기의 ip (공인 ip)로 설정

 

☞ 확인하기 ~ ☜

● master 서버에서 데이터 변경

데이터 추가!

 

● slave 서버에서 확인

같이 변경된 것을 확인~