목록RDS (6)
오늘도 한 뼘 더

# 배경 부하테스트를 진행하는 과정에서 부하가 걸리면서 AWS RDS에 대한 커넥션 수가 많아지면서 다음과 같은 에러가 발생하였다.Error 1040: Too many connections # 해결 방법 MySQL에서 max_connections 값을 변경해야 하는데 AWS RDS의 경우 파라미터 값을 변경해서 해당 값을 변경할 수 있다.변경하기 전 현재 max_connections 값은 다음과 같이 확인할 수 있다.SHOW GLOBAL VARIABLES LIKE 'max_connections'; AWS RDS > 데이터베이스 > 구성 > 파라미터 그룹max_connections를 찾아 수정해 준다.기본 RDS의 max_connections 기본값은 {DBInstanceClassMemory/125..

# 배경 사용하고 있는 DB에서 문제가 생기거나 업데이트로 인해 연결이 끊겼을 때 바로 복구될 수 있도록 DB를 이중화하는 작업을 진행하고자 한다. AWS RDS를 DB서버로 사용하고 있는데 RDS에 Multi AZ를 사용하여 이중화가 가능하다고 한다. # Multi AZ의 역할 사용하고 있는 기본(primary) 인스턴스에 문제가 생기거나 재부팅을 할 때 다른 가용영역에 DB 인스턴스를 복제해 두고 그 인스턴스가 기본으로 바뀌도록 설정하는 것이다. 참고 https://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/Concepts.MultiAZSingleStandby.html 다중 AZ DB 인스턴스 배포 - Amazon Relational Database..

# 배경 SSH 접속을 통해 RDS로 접근을 하고자 하였다. 그런데 다음과 같은 에러가 반환이 되었다. Last Connection to MySQL server at 'reading initial communication packet', system error:0 # 해결방법 mysql hosts.allow 변경하기 host가 막혀서 일 수 있다는 이유를 듣고 다음을 적용하였다. $ /etc/hosts.allow > mysqld: Allow 하지만 이 방법으로는 해결이 되지 않았다. AWS 문서를 통해 알게 된 부분은 총 4가지 설정 값을 변경해 볼 수 있다고 했다. https://aws.amazon.com/ko/premiumsupport/knowledge-center/rds-mysql-communica..

# 배경 서버를 운영하는데 CPU가 올라가거나 request 수가 크지 않았음에도 서버가 timeout이 나서 다운이 되는 일이 발생했다. 어떠한 부분에서 문제가 있는지 알아보기 위해서 Slow Query 모니터링이 필요하다. # RDS Slow Query 설정하기 1. 파라미터 그룹 열기 사용 중인 파라미터 그룹에 접근한다. 2. 파라미터 편집 파라미터 편집 > slow_query_log 검색 slow_query_log의 기본값은 0 또는 없음이다. 로깅을 하기 위해서는 값을 1로 지정하고 저장한다. general_log도 똑같이 설정한다. long_query_time : 몇초 이상 걸리는 query를 로깅할 것 인지 3. 로깅 된 값 조회하기 - 파라미터 그룹에 log_output을 검색하면 다음과 ..

배경 최근 회사에서 AWS 비용을 줄이는 작업을 하고 있다. 회사에서 사용하고 있는 AWS 비용 중 RDS 비용이 TOP3에 들고 있어 일단은 필요 없는 RDS는 삭제를 하는 작업을 진행했다. 그리고 최종 RDS의 데이터를 스냅샷으로 생성하여 저장할 수 있었고 다시 복원하는 방법은 어떻게 진행되는지 알아보았다. RDS 삭제 - 삭제하고자 하는 RDS를 선택 후 작업에서 삭제를 선택한다. - 최종 스냅샷 생성 여부를 체크를 하지 않으면 스냅샷이 생성되지 않고 RDS가 삭제가 된다. 실제로 사용하지 않는 데이터이고 삭제를 해도 된다고 하면 이 부분은 선택을 하지 않고 삭제를 진행해도 무방할 것 같다. 필자의 경우 해당 작업이 퇴사하신 분의 레거시여서 혹시 모를 상황에 대비해 스냅샷을 생성하였다. - dele..

AWS >> RDS >> 데이터베이스 생성 데이터베이스 생성 방식 선택 1. 표준 생성 모든 구성에 대한 옵션을 직접 설정 2. 손쉬운 생성 엔진 옵션 사용중인 데이터베이스 엔진을 선택 (현재 사용중인 MySQL로 설정) 템플릿 현재 데이터베이스는 운영용 데이터로 프로덕션으로 옵션이 설정되어있다. 설정 DB 이름과 마스터 사용자 이름, 암호 설정 처음 해당 DB에 접근이 가능한건 마스터이기 때문에 암호는 꼭 잘 저장해두자 DB 인스턴스 크기 성능, 메모리 등을 설정하는 부분인데 크기가 커질 수 록 월 사용 요금이 커지게 된다. DB를 사용하는 사람이 한정되어있기 때문에 크게 만들 이유가 없다 스토리지 스토리지란 저장공간이다. 애초에 할당된 스토리지를 그대로 사용해도 되고 사용하는 사람이 많은경우 스토리지..