Amazon Aurora DB 클러스터에 연결
MySQL 또는 PostgreSQL 데이터베이스에 연결할 때 사용한 것과 동일한 도구를 사용하여 Aurora DB 클러스터에 연결할 수 있습니다. MySQL 또는 PostgreSQL DB 인스턴스에 연결되는 모든 스크립트, 유틸리티 또는 애플리케이션에서 연결 문자열을 설정합니다. 그리고 동일한 퍼블릭 키를 사용하여 Secure Sockets Layer(SSL)를 연결합니다.
연결 문자열에서는 보통 DB 클러스터에 연결된 특별 엔드포인트에서 나온 호스트 및 포트 정보를 사용합니다. 이들 엔드포인트에서는 클러스터의 DB 인스턴스 수에 관계 없이 동일한 연결 파라미터를 사용할 수 있습니다. 문제 해결 같은 전문 작업의 경우, Aurora DB 클러스터의 특별 DB 인스턴스에 나온 호스트 및 포트 정보를 사용할 수 있습니다.
참고
Aurora Serverless DB 클러스터의 경우 DB 인스턴스가 아닌 데이터베이스 엔드포인트에 연결합니다. Aurora Serverless DB 클러스터의 데이터베이스 엔드포인트는 AWS Management Console의 연결 및 보안 탭에서 찾을 수 있습니다. 자세한 내용은 Amazon Aurora Serverless v1 사용 섹션을 참조하세요.
Aurora DB 엔진과 DB 클러스터 또는 인스턴스 작업에 사용하는 특정 도구에 관계없이 엔드포인트에 액세스할 수 있어야 합니다. Amazon Aurora DB 클러스터는 Amazon VPC 서비스를 기반으로 하는 Virtual Private Cloud(VPC)에만 생성해야 합니다. 즉, 다음 방법 중 하나를 사용하여 VPC 내부 또는 VPC 외부에서 엔드포인트에 액세스합니다.
VPC 내의 Amazon Aurora DB 클러스터에 액세스 –VPC를 통해 Amazon AuroraDB 클러스터에 액세스할 수 있습니다. 이렇게 하려면 특정 Aurora DB 클러스터에 대한 액세스를 허용하도록 VPC의 보안 그룹에서 인바운드 규칙을 편집합니다. 다양한 Aurora DB 클러스터 시나리오에 맞게 VPC를 구성하는 방법을 포함하여 자세한 내용은 Amazon Virtual Private Cloud(VPC) 및 Amazon Aurora를 참조하세요.
-
VPC 외부의 Amazon Aurora DB 클러스터에 액세스 – 외부에서 Amazon Aurora DB 클러스터에 액세스하려면 Amazon Aurora DB 클러스터의 퍼블릭 엔드포인트 주소를 사용합니다.
자세한 내용은 Aurora 연결 장애 문제 해결 섹션을 참조하세요.
Amazon Aurora MySQL DB 클러스터에 연결
Aurora MySQL DB 클러스터에 대해 인증하려면, MySQL 사용자 이름 및 암호 인증 또는 AWS Identity and Access Management(IAM) 데이터베이스 인증을 사용할 수 있습니다. MySQL 사용자 이름 및 암호 인증 사용에 대한 자세한 정보는 MySQL 설명서의 액세스 제어 및 계정 관리
MySQL 8.0과 호환되는 Amazon Aurora DB 클러스터에 연결되어 있으면 MySQL 버전 8.0과 호환되는 SQL 명령을 실행할 수 있습니다. 최소 호환 버전은 MySQL 8.0.23입니다. MySQL 8.0 SQL 구문에 대한 자세한 정보는 MySQL 8.0 참조 매뉴얼
MySQL 5.7과 호환되는 Amazon Aurora DB 클러스터에 연결되어 있으면 MySQL 버전 5.7과 호환되는 SQL 명령을 실행할 수 있습니다. MySQL 5.7 SQL 구문에 대한 자세한 정보는 MySQL 5.7 참조 매뉴얼
참고
Amazon Aurora MySQL DB 클러스터에 연결하는 데 도움이 되는 자세한 안내는 Aurora 연결 관리
DB 클러스터의 세부 정보 보기에서 MySQL 연결 문자열에 사용할 수 있는 클러스터 엔드포인트를 확인할 수 있습니다. 엔드포인트는 DB 클러스터의 도메인 이름과 포트로 구성되어 있습니다. 예를 들어 엔드포인트 값이 mycluster.cluster-123456789012.us-east-1.rds.amazonaws.com:3306
이라면 MySQL 연결 문자열에 다음과 같이 값을 지정합니다.
-
호스트 또는 호스트 이름은
mycluster.cluster-123456789012.us-east-1.rds.amazonaws.com
으로 지정합니다. -
포트의 경우, DB 클러스터를 생성할 때 사용한 포트 값 또는
3306
를 지정합니다
클러스터 엔드포인트는 DB 클러스터의 기본 인스턴스에 연결하는 데 사용되며, 이를 통해 읽기 및 쓰기 연산을 실행할 수 있습니다. 또한 DB 클러스터에 DB 클러스터의 데이터에 대한 읽기 전용 액세스를 지원하는 Aurora 복제본이 최대 15개 있을 수 있습니다. 기본 인스턴스와 각 Aurora 복제본에는 클러스터 엔드포인트와 독립적이고 클러스터의 특정 DB 인스턴스에 직접 연결할 수 있는 고유의 엔드포인트가 있습니다. 클러스터 엔드포인트는 항상 기본 인스턴스를 가리킵니다. 기본 인스턴스에 장애가 발생하여 교체되는 경우 클러스터 엔드포인트는 새로운 기본 인스턴스를 가리킵니다.
클러스터 엔드포인트(라이터 엔드포인트)를 보려면 Amazon RDS 콘솔에서 Databases(데이터베이스)를 선택하고 DB 클러스터의 이름을 선택하여 DB 클러스터 세부 정보를 표시하십시오.

주제
Aurora MySQL 연결 유틸리티
다음과 같은 연결 유틸리티를 사용할 수 있습니다.
-
명령줄 – MySQL 명령줄 유틸리티 같은 도구를 사용하여 Amazon Aurora DB 클러스터에 연결할 수 있습니다. MySQL 유틸리티 사용에 대한 자세한 정보는 MySQL 설명서의 mysql - MySQL 명령줄 클라이언트
를 참조하세요. -
GUI – MySQL Workbench 유틸리티를 통해 UI 인터페이스를 사용하여 연결할 수 있습니다. 자세한 내용은 MySQL Workbench 다운로드
페이지를 참조하세요. -
Applications - MySQL용 AWS JDBC 드라이버 사용하여 클라이언트 애플리케이션을 Aurora MySQL DB 클러스터에 연결할 수 있습니다. AWS JDBC Driver for MySQL 및 사용 방법에 대한 전체 지침에 관한 자세한 내용은 AWS JDBC Driver for MySQL GitHub 리포지토리
를 참조하세요. 참고
MariaDB Connector/J 유틸리티 버전 3.0.3은 Aurora DB 클러스터에 대한 지원을 중단하므로 MySQL용 AWS JDBC 드라이버로 이동할 것을 권장합니다. AWS JDBC Driver for MySQL은는 Aurora MySQL DB 클러스터에 향상된 장애 조치 속도를 제공합니다.
Aurora Serverless v1 DB 클러스터를 사용 중인 경우 장애 조치 혜택은 적용되지 않지만
failureDetectionEnabled
파라미터를false
에 설정하여 기능을 사용 중지할 수 있습니다. 구성 옵션의 전체 목록을 검토하려면 MySQL GitHub 리포지토리용 AWS JDBC 드라이버를 참조하세요.
MySQL 유틸리티를 사용하여 Aurora MySQL에 연결
다음 절차를 따르세요. VPC의 프라이빗 서브넷에 DB 클러스터를 구성했다고 가정합니다. 자습서: 웹 서버 및 Amazon Aurora DB 클러스터 생성의 자습서에 따라 구성한 Amazon EC2 인스턴스를 사용하여 연결합니다.
참고
이 절차에서는 자습서에서 웹 서버를 설치할 필요가 없지만, MariaDB 10.5는 설치해야 합니다.
MySQL 유틸리티를 사용하여 DB 클러스터를 연결하려면
-
DB 클러스터에 연결하는 데 사용하는 EC2 인스턴스에 로그인합니다.
다음과 유사한 출력 화면이 표시되어야 합니다.
Last login: Thu Jun 23 13:32:52 2022 from
xxx.xxx.xxx.xxx
__| __|_ ) _| ( / Amazon Linux 2 AMI ___|\___|___| https://aws.amazon.com/amazon-linux-2/ [ec2-user@ip-10-0-xxx.xxx
~]$ -
명령 프롬프트에 다음 명령을 입력하여 DB 클러스터의 프라이머리 DB 인스턴스에 연결합니다.
-h
파라미터에서 기본 인스턴스의 엔드포인트 DNS 이름을 교체합니다.-u
파라미터에서 데이터베이스 사용자 계정의 사용자 ID를 교체합니다.mysql -h
primary-instance-endpoint
.AWS_account
.AWS_Region
.rds.amazonaws.com -P 3306 -udatabase_user
-p예:
mysql -h my-aurora-cluster-instance.c1xy5example.123456789012.eu-central-1.rds.amazonaws.com -P 3306 -u admin -p
-
데이터베이스 사용자의 암호를 입력합니다.
다음과 유사한 출력 화면이 표시되어야 합니다.
Welcome to the MariaDB monitor. Commands end with ; or \g. Your MySQL connection id is 1770 Server version: 8.0.23 Source distribution Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MySQL [(none)]>
-
SQL 명령을 입력합니다.
MySQL용 Amazon Web Services JDBC 드라이버와 연결
MySQL용 AWS JDBC 드라이버는 Aurora MySQL의 고가용성을 위해 설계된 클라이언트 드라이버입니다. 드라이버는 MySQL Connector/J 드라이버와 드롭인 호환됩니다. 커넥터를 설치하거나 업그레이드하려면 애플리케이션 CLASSPATH에 있는 MySQL 커넥터 .jar file을 MySQL.jar 파일용 AWS JDBC 드라이버로 교체하고, 연결 URL 접두사 jdbc:mysql://
을 jdbc:mysql:aws://
로 업데이트합니다.
MySQL용 AWS JDBC 드라이버는 Aurora MySQL의 장애 조치 기능을 최대한 활용합니다. 장애 조치가 발생하는 경우 드라이버는 DNS 확인을 사용하는 대신 새 토폴로지에 대해 클러스터를 직접 쿼리합니다. 드라이버는 클러스터를 직접 쿼리함으로써 안정적이고 예측 가능한 방식으로 새 기본 서버에 더 빠르게 연결할 수 있습니다. 이 접근 방식은 DNS 확인으로 인한 잠재적 지연을 방지하는 데 도움이 됩니다.
MySQL용 AWS JDBC 드라이버는 IAM 데이터베이스 인증을 지원합니다. 자세한 내용은 MySQL GitHub 리포지토리용 AWS JDBC 드라이버의 AWS IAM 데이터베이스 인증
AWS JDBC Driver for MySQL 및 사용 방법에 대한 전체 지침에 관한 자세한 내용은 AWS JDBC Driver for MySQL GitHub 리포지토리
Aurora MySQL용 SSL과 연결
Aurora MySQL DB 인스턴스에 연결할 때는 SSL 암호화를 사용할 수 있습니다. 자세한 내용은 Aurora MySQL DB 클러스터에서 TLS 사용 단원을 참조하세요.
SSL을 사용하여 연결하려면 다음 절차에 따라 MySQL 유틸리티를 사용합니다. IAM 데이터베이스 인증을 사용하고 있다면, SSL 연결을 사용해야 합니다. 자세한 정보는 IAM 데이터베이스 인증 섹션을 참조하세요.
참고
SSL을 사용하여 클러스터 엔드포인트에 연결하려면 클라이언트 연결 유틸리티에서 Subject Alternative Names(SAN)를 지원해야 합니다. 클라이언트 연결 유틸리티에서 SAN을 지원하지 않는 경우, Aurora DB 클러스터에서 인스턴스에 직접 연결할 수 있습니다. Aurora 엔드포인트에 대한 자세한 정보는 Amazon Aurora 연결 관리 단원을 참조하십시오.
MySQL 유틸리티를 사용하여 SSL에 DB 클러스터를 연결하려면
-
Amazon RDS 서명 인증서의 퍼블릭 키를 다운로드합니다.
인증서 다운로드에 대한 자세한 내용은 SSL/TLS를 사용하여 DB 클러스터에 대한 연결 암호화 단원을 참조하십시오.
-
MySQL 유틸리티에서 SSL이 포함된 DB 클러스터의 기본 인스턴스에 연결하려면 명령 프롬프트에 다음 명령을 입력합니다.
-h
파라미터에서 기본 인스턴스의 엔드포인트 DNS 이름을 교체합니다.-u
파라미터에서 데이터베이스 사용자 계정의 사용자 ID를 교체합니다.--ssl-ca
파라미터에는 해당하는 SSL 인증서 파일 이름으로 대체합니다. 입력 프롬프트가 표시되면 마스터 사용자 암호를 입력합니다.mysql -h mycluster-primary.123456789012.us-east-1.rds.amazonaws.com -u
admin_user
-p --ssl-ca=[full path]
global-bundle.pem --ssl-verify-server-cert
다음과 유사한 출력 화면이 표시되어야 합니다.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 350
Server version: 8.0.26-log MySQL Community Server (GPL)
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
RDS for MySQL 연결 문자열 구성 및 SSL 연결용 퍼블릭 키 검색에 대한 일반적인 지침은 MySQL 데이터베이스 엔진을 실행하는 DB 인스턴스에 연결을 참조하세요.
Amazon Aurora PostgreSQL DB 클러스터에 연결
PostgreSQL 데이터베이스에 연결할 때와 동일한 도구를 사용하여 Amazon Aurora PostgreSQL DB 클러스터의 DB 인스턴스에 연결할 수 있습니다. 이 설정의 일환으로 동일한 퍼블릭 키를 사용하여 Secure Sockets Layer(SSL)를 연결합니다. Aurora PostgreSQL DB 클러스터에 속한 기본 인스턴스나 Aurora 복제본의 엔드포인트 및 포트 정보를 PostgreSQL DB 인스턴스에 연결하는 모든 스크립트, 유틸리티 또는 애플리케이션의 연결 문자열에 사용할 수 있습니다. 연결 문자열에는 호스트 파라미터로 기본 인스턴스 또는 Aurora 복제본 엔드포인트의 DNS 주소를 지정하십시오. 엔드포인트의 포트 번호를 포트 파라미터로 지정하십시오.
Amazon Aurora PostgreSQL DB 클러스터의 DB 인스턴스에 연결한 경우 PostgreSQL과 호환되는 SQL 명령을 실행할 수 있습니다.
Aurora PostgreSQL DB 클러스터의 세부 정보 보기에서 클러스터 엔드포인트 이름, 상태, 유형 및 포트 번호를 검색할 수 있습니다. PostgreSQL 포트 번호에서 이 엔드포인트를 사용합니다. 예를 들어 엔드포인트 값이 mycluster.cluster-123456789012.us-east-1.rds.amazonaws.com
이라면 PostgreSQL 연결 문자열에 다음과 같이 값을 지정합니다.
-
호스트 또는 호스트 이름은
mycluster.cluster-123456789012.us-east-1.rds.amazonaws.com
으로 지정합니다. -
포트의 경우, DB 클러스터를 생성할 때 사용한 포트 값 또는
5432
를 지정합니다
클러스터 엔드포인트는 DB 클러스터의 기본 인스턴스에 연결하는 데 사용되며, 이를 통해 읽기 및 쓰기 연산을 실행할 수 있습니다. 또한 DB 클러스터에 DB 클러스터의 데이터에 대한 읽기 전용 액세스를 지원하는 Aurora 복제본이 최대 15개 있을 수 있습니다. Aurora 클러스터의 각 DB 인스턴스(즉, 기본 인스턴스와 각 Aurora 복제본)는 클러스터 엔드포인트와 무관한 고유한 엔드포인트를 가집니다. 이 고유 엔드포인트를 통해 클러스터의 특정 DB 인스턴스에 직접 연결할 수 있습니다. 클러스터 엔드포인트는 항상 기본 인스턴스를 가리킵니다. 기본 인스턴스에 결함이 발생하여 교체되면 클러스터 엔드포인트는 새로운 기본 인스턴스로 향하게 됩니다.
클러스터 엔드포인트(라이터 엔드포인트)를 보려면 Amazon RDS 콘솔에서 Databases(데이터베이스)를 선택하고 DB 클러스터의 이름을 선택하여 DB 클러스터 세부 정보를 표시하십시오.

Aurora PostgreSQL 연결 유틸리티
다음과 같은 연결 유틸리티를 사용할 수 있습니다.
-
명령줄 – PostgreSQL 대화식 터미널인 psql과 같은 도구를 사용하여 Aurora PostgreSQL DB 클러스터에 연결할 수 있습니다. PostgreSQL 대화식 터미널 사용에 대한 자세한 정보는 PostgreSQL 설명서에서 psql
을 참조하십시오. -
GUI – pgAdmin 유틸리티를 사용하여 UI 인터페이스로 Aurora PostgreSQL DB 클러스터에 연결할 수 있습니다. 자세한 정보는 pgAdmin 웹사이트에서 Download
페이지 단원을 참조하십시오. -
애플리케이션 – AWS JDBC Driver for PostgreSQL을 사용하여 애플리케이션을 Aurora PostgreSQL DB 클러스터에 연결할 수 있습니다. 자세한 내용은 AWS JDBC Driver for PostgreSQL에 연결 섹션을 참조하세요.
AWS JDBC Driver for PostgreSQL에 연결
AWS JDBC Driver for PostgreSQL은 Aurora PostgreSQL의 고가용성 기능을 최대한 활용하는 데 도움이 되도록 설계된 클라이언트 래퍼입니다. AWS JDBC Driver for PostgreSQL 및 사용 방법에 관한 자세한 내용은 AWS JDBC Driver for PostgreSQL GitHub 리포지토리
AWS JDBC Driver for PostgreSQL은 커뮤니티 pgJDBC 드라이버를 확장합니다. Aurora PostgreSQL의 클러스터 인식 장애 조치 기능을 최대한 활용하도록 설계되었습니다. 장애 조치가 발생하는 경우 AWS JDBC Driver for PostgreSQL은 DNS 확인을 사용하는 대신 새 토폴로지에 대해 클러스터를 직접 쿼리합니다. AWS JDBC Driver for PostgreSQL은 클러스터를 직접 쿼리함으로써 DNS 확인으로 인한 잠재적 지연을 방지하고 안정적이고 예측 가능한 방식으로 새 기본 서버에 더 빠르게 연결할 수 있습니다.
AWS JDBC Driver for PostgreSQL은 AWS Identity and Access Management(IAM) 데이터베이스 인증 및 AWS Secrets Manager를 지원합니다. 드라이버에서 이러한 인증 메커니즘을 사용하는 방법에 대한 자세한 내용은 AWS IAM Authentication Plugin
IAM 데이터베이스 인증에 대한 자세한 내용은 IAM 데이터베이스 인증 단원을 참조하세요. Secrets Manager 사용에 대한 자세한 내용은 AWS Secrets Manager 사용 설명서를 참조하세요.
Aurora 연결 장애 문제 해결
새 Aurora DB 클래스에 공통적으로 발생하는 연결 실패의 원인은 다음과 같습니다.
-
VPC의 보안 그룹이 액세스를 허용하지 않음 – VPC는 VPC의 보안 그룹을 적절히 구성하여 디바이스 또는 Amazon EC2 인스턴스로부터의 연결을 허용해야 합니다. 이 문제를 해결하려면 연결을 허용하도록 VPC의 보안 그룹 인바운드 규칙을 수정하십시오. 관련 예제는 자습서: DB 클러스터에 사용할 Amazon VPC 생성(IPv4 전용) 섹션을 참조하세요
-
방화벽 규칙에 의해 차단된 포트 – Aurora DB 클러스터에 대해 구성된 포트 값을 확인합니다. 방화벽 규칙이 해당 포트를 차단하는 경우 다른 포트를 사용하여 인스턴스를 다시 생성할 수 있습니다.
-
IAM 구성이 완료되지 않았거나 잘못된 경우 – IAM–기반 인증을 사용하기 위해 Aurora DB 인스턴스를 생성한 경우 해당 인스턴스가 제대로 구성되어 있는지 확인합니다. 자세한 내용은 IAM 데이터베이스 인증 섹션을 참조하세요.
문제 해결 Aurora DB 연결에 대한 자세한 내용은 Amazon RDS DB 인스턴스에 연결할 수 없음 단원을 참조하세요.