메뉴
Amazon Relational Database Service
사용 설명서 (API Version 2014-10-31)

MySQL 데이터베이스 엔진 기반 DB 인스턴스에 연결하기

MySQL 데이터베이스 엔진을 실행하는 DB 인스턴스에 연결하려면 우선 DB 인스턴스를 생성해야 합니다. 자세한 내용은 MySQL 데이터베이스 엔진 기반 DB 인스턴스 생성 섹션을 참조하십시오. Amazon RDS가 DB 인스턴스를 프로비저닝한 후에는 표준 MySQL 클라이언트 애플리케이션 또는 유틸리티를 사용하여 인스턴스에 연결할 수 있습니다. 연결 문자열에는 호스트 파라미터로 DB 인스턴스 엔드포인트의 DNS 주소와 포트 파라미터로 DB 인스턴스 엔드포인트의 포트 번호를 지정합니다.

RDS DB 인스턴스에 인증하려면, MySQL과 IAM 데이터베이스 인증의 인증 방법 중 하나를 사용할 수 있습니다.

엔드포인트를 포함한 Amazon RDS DB 인스턴스의 세부 정보는 AWS Management Console, AWS CLI describe-db-instances 명령, 또는 Amazon RDS API DescribeDBInstances 작업을 사용하여 조회할 수 있습니다. 예를 들어 엔드포인트 값이 myinstance.123456789012.us-east-1.rds.amazonaws.com:3306이라면 MySQL 연결 문자열에 다음과 같이 값을 지정합니다.

  • 호스트 또는 호스트 이름은 myinstance.123456789012.us-east-1.rds.amazonaws.com으로 지정합니다.

  • 포트는 3306으로 지정합니다.

Amazon RDS MySQL DB 인스턴스는 MySQL 명령줄 유틸리티 같은 도구를 사용하여 연결할 수 있습니다. MySQL 유틸리티 사용에 대한 자세한 내용은 MySQL 문서의 mysql - The MySQL 명령줄 도구을(를) 참조하십시오. 연결하는 데 사용할 수 있는 GUI 기반 애플리케이션 하나는 MySQL Workbench입니다. 자세한 내용은 MySQL Workbench 다운로드 페이지을(를) 참조하십시오.

새로운 DB 인스턴스의 연결 오류가 발생하는 두 가지 공통 원인은 다음과 같습니다.

  • 보안 그룹을 사용하여 DB 인스턴스를 만들었지만, 이 보안 그룹이 MySQL 애플리케이션 또는 유틸리티를 실행 중인 디바이스나 Amazon EC2 인스턴스에서 연결할 수 있는 권한을 부여하지 않은 경우. DB 인스턴스가 VPC 내부에서 만들어진 경우에는 이 인스턴스의 VPC 보안 그룹이 연결 권한을 부여해야 합니다. DB 인스턴스가 VPC 외부에서 만들어진 경우에는 이 인스턴스의 DB 보안 그룹이 연결 권한을 부여해야 합니다.

  • 포트 3306을 사용해 DB 인스턴스를 만들었는데 기업 방화벽 규칙에 따라 기업 네트워크의 디바이스에서 해당 포트에 연결하는 것이 차단된 경우. 이 오류를 수정하려면 인스턴스를 다른 포트로 다시 만들어야 합니다.

Amazon RDS MySQL DB 인스턴스에 연결할 때는 SSL 암호화를 사용할 수 있습니다. 자세한 내용은 MySQL DB 인스턴스용 SSL 지원 섹션을 참조하십시오. IAM 데이터베이스 인증을 사용하고 있다면, SSL 연결을 사용해야 합니다. 자세한 내용은 MySQL 및 Amazon Aurora를 위한 IAM 데이터베이스 인증을(를) 참조하십시오.

Amazon Aurora DB 클러스터 연결에 대한 자세한 내용은 Amazon Aurora DB 클러스터 연결을(를) 참조하십시오.

SSL을 사용한 MariaDB DB 인스턴스 연결에 대한 자세한 내용은 MariaDB 데이터베이스 엔진을 실행하는 DB 인스턴스에서 데이터베이스에 연결을(를) 참조하십시오.

MySQL 유틸리티를 통해 연결하기

MySQL 유틸리티를 사용하여 DB 인스턴스에 연결하려면 명령 프롬프트에 다음 명령을 입력하여 MySQL 유틸리티를 사용하여 DB 클러스터에 연결합니다. -h 파라미터에는 DB 인스턴스의 DNS 이름으로 대체합니다. -p 파라미터에는 DB 인스턴스의 포트로 대체합니다. 입력 프롬프트가 표시되면 마스터 사용자 암호를 입력합니다.

Copy
mysql -h myinstance.123456789012.us-east-1.rds.amazonaws.com -P 3306 -u mymasteruser -p

출력은 다음과 비슷합니다.

Copy
Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 350 Server version: 5.6.27-log MySQL Community Server (GPL) Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql>

SSL에 인스턴스 연결

Amazon RDS는 DB 인스턴스가 생성될 때 인스턴스의 SSL 인증서를 만듭니다. SSL 인증서 확인을 활성화하는 경우에는 SSL 인증서에 스푸핑 공격으로부터 보호해주는 SSL 인증서를 위한 일반 이름(CN)으로 DB 인스턴스 엔드포인트가 포함됩니다. SSL을 사용하여 DB 인스턴스에 연결하면, 기본 암호 인증 또는 IAM 데이터베이스 인증을 사용할 수 있습니다. IAM 데이터베이스 인증을 사용하여 DB 인스턴스에 연결하려면 MySQL 및 Amazon Aurora를 위한 IAM 데이터베이스 인증 단원을 참조하십시오. 기본 암호 인증을 사용하여 DB 인스턴스에 연결하려면 다음의 단계를 따릅니다.

MySQL 유틸리티를 사용하여 SSL에 DB 인스턴스 연결하는 방법

  1. 모든 리전에 적용되는 루트 인증서는 여기에서 다운로드할 수 있습니다.

  2. MySQL 유틸리티에서 SSL이 포함된 DB 인스턴스에 연결하려면 명령 프롬프트에 다음 명령을 입력합니다. -h 파라미터에는 DB 인스턴스의 DNS 이름으로 대체합니다. --ssl-ca 파라미터에는 해당하는 SSL 인증서 파일 이름으로 대체합니다.

    Copy
    mysql -h myinstance.123456789012.us-east-1.rds.amazonaws.com --ssl-ca=rds-ca-2015-root.pem
  3. SSL 연결이 SSL 인증서의 엔드포인트와 비교하여 DB 인스턴스 엔드포인트를 검증할 수 있도록 --ssl-verify-server-cert 파라미터를 추가합니다. 예:

    Linux, OS X, Unix의 경우:

    Copy
    mysql \ -h myinstance.123456789012.us-east-1.rds.amazonaws.com \ --ssl-ca=rds-ca-2015-root.pem \ --ssl-verify-server-cert

    Windows의 경우:

    Copy
    mysql ^ -h myinstance.123456789012.us-east-1.rds.amazonaws.com ^ --ssl-ca=rds-ca-2015-root.pem ^ --ssl-verify-server-cert
  4. 입력 프롬프트가 표시되면 마스터 사용자 암호를 입력합니다.

출력은 다음과 비슷합니다.

Copy
Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 350 Server version: 5.6.27-log MySQL Community Server (GPL) Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql>

최대 MySQL 연결

Amazon RDS MySQL DB 인스턴스에 허용되는 최대 연결 수는 DB 인스턴스의 DB 인스턴스 클래스에 사용 가능한 메모리의 양에 따라 결정됩니다. 사용 가능한 메모리가 많은 DB 인스턴스 클래스는 가능한 연결 수가 더 많아집니다. DB 인스턴스 클래스에 대한 자세한 내용은 다음(DB 인스턴스 클래스)을(를) 참조하십시오.

DB 인스턴스의 연결 제한은 기본적으로 DB 인스턴스의 DB 인스턴스 클래스 최대값으로 설정됩니다. DB 인스턴스의 파라미터 그룹에서 max_connections 파라미터를 사용하여 동시 연결 수를 허용되는 최대 연결 수까지로 제한할 수 있습니다. 자세한 내용은 DB 파라미터 그룹 작업을(를) 참조하십시오.

Amazon RDS MySQL DB 인스턴스에 허용되는 최대 연결 수는 해당 DB 인스턴스에 대해 다음 쿼리를 실행하여 확인할 수 있습니다.

Copy
SELECT @@max_connections;

DB 인스턴스에 대해 다음 쿼리를 실행하여 Amazon RDS MySQL DB 인스턴스에 대한 활성 연결 수를 확인할 수 있습니다.

Copy
SHOW STATUS WHERE `variable_name` = 'Threads_connected';

관련 주제