프로그래밍
[토막팁] rds 엔드포인트, 어느 쪽을 써야 좋을까
2kindsofcs
2020. 11. 9. 19:58
대략 아래의 구조로 rds에 db가 있다고 가정하자.
example-db
ㄴ example-write
ㄴ example-read-only
콘솔에서 rds > 데이터베이스 > example-db 화면에서,
example-db를(클러스터를) 눌러도 연결&보안 탭에 엔드포인트가 나오고,
example-write, example-read-only 각각을 눌러도 역시 연결&보안 탭에 엔드포인트가 나온다.
mysql 워크벤치 등으로 db와 연결을 맺고 중간중간 db를 확인하고자 하는데, 이때 어떤 엔드포인트를 쓰면 좋을까?
클러스터를 눌렀을 때 나오는 엔드포인트를 쓰는 것이 안전하다.
예를 들어, example-read-only를 눌렀을 때 나오는 엔드포인트, 즉 해당 인스턴스의 엔드포인트를 사용한다면 인스턴스에 변동이 있을 때
의도치 않은 결과를 낼 수도 있다. 예를 들어 모종의 이유로 해당 read-only 인스턴스가 마스터로 승격이 되어버린다면, 사용자 입장에서는 read-only라고 생각하고 작업을 했는데 실제로는 쓰기 db를 건드리게 되는 끔찍한 상황이 발생할 수 있다.
example-db(클러스터)를 눌렀을 때 나오는 엔드포인트는 대표 엔드포인트이다.
이 엔드포인트를 쓰면 쓰기면 쓰기, 읽기면 읽기, 해당 유형의 인스턴스를 가리키므로 위에서 든 예시와 같은 상황을 신경쓰지 않고
보다 안전하게 db를 사용할 수 있다.
반응형