[클라우드] AWS-RDS

이정훈·2023년 3월 14일
0

클라우드

목록 보기
4/14
post-thumbnail
  • 가상머신에 운영체제설치에 DB설치 프로그램 설치 및 관리까지! 하나의 EC2에 Mysql까지 설치된 느낌?
  • vi편집기에서 설정했는데 여기서는 파라미터 그룹에서 설정 하지만 수정할 수 있고 없고가 있어서 설정을 변경할 수 가 없다.
  • RDS를 직접 설정해도 되고 아니면 그냥 EC2에 DB를 설치해서 사용해도 된다! 내가 편한것들? 사용하면 좋을것같다.(RDS는 백업, 업그레이드 등등 이 더 편리할 수 도 있다.)

RDS 생성

  • 표준생성, 엔진은 MySQL

  • 템플릿 프리티어

  • 이름 마스터 암호 설정

  • 인스턴스 설정, 스토리지 저장(X)

  • EC2연결안함, 설정해 놓은 VPC 사용, 보안 그룹 새로 생성, 가용역역 설정 포트는 3306

  • 모니터링 하지 않음

  • 백업설정을 해놓지 않으면 Master-Slave를 설정할 수 가 없다.

생성

Master - Slave 만들기

  • 데이터베이스 부분에서 Master의 작업부분에서 읽기 전용 복제본 생성 하면 쉽게 만들 수 있다.

  • 생성할 때 가용영역은 다른 곳으로 해주는 것이 좋다

  • 스토리지는 꺼주고 마이너리업그레이드 사용

    (vpc rds의 경우 dns주소를 주기때문에 vpc에서 할당받아갈수 있또록 설정해주는것)

Master (온프레미스) - Slave(클라우드)

  • MySQL 서비스 설치
  • 계정, DATABASE, TABLE 만들어 준다.
mysqldump -u root -p --databases [DB이름] > back.db
  • Master 백업 실행
mysql -u admin -p -h [슬레이브 IP] < back.db
[슬레이브 IP] : aws end 포인트
  • Master 에서 백업한 파일을 Slave 백업파일 복사
CALL mysql.rds_set_external_master(
	'[마스터 IP]', ## 주의 ''
    [마스터 포트번호], ## 주의 ''
    '[마스터로 접속할 ID]',
    '[마스터로 접속할 PW]',
    '[마스터 로그파일 이름]',
    [마스터 로그 포지션 번호],
    0); ## ssl_encryption 보안인데 우린 설정 하지 않을 것이니깐 '0'

CALL mysql.rds_start_replication; // slave 시작

CALL mysql.rds_stop_replication; // slave 종료
  • Slave 워크벤치에서 설정입력해주면 된다.

mysql.rds_set_external_master 참고!

  • 여기서 중요한 것!

  • AWS의 SLAVE친구는 나의 MYSQL이 어디있는지 모른다! 그러니깐 길을 알려줘야한다!

  • 나는 공인IP안에 사설IP안에 가상IP까지 와야한다

  • 그러니깐 포트를 열어줘야한다.
    나는 둘다 30303으로 열어줘
    공인 IP로 들어와 30303으로 오면 사설IP로 오고 사설 IP:30303으로 오면 가상IP로 오고 가상IP로 오면 3306으로 가도록 설정!

  • Master는 온프레미스 환경
    Slave는 클라우드 환경(AWS)
profile
싱숭생숭늉

0개의 댓글