Knowledge Center Monthly Newsletter - July 2025
Stay up to date with the latest from the Knowledge Center. See all new Knowledge Center articles published in the last month, and re:Post’s top contributors.
AWS DMS 엔드포인트 연결 실패 문제를 해결하려면 어떻게 해야 합니까?
AWS Database Migration Service(AWS DMS) 엔드포인트에 연결할 수 없고 테스트 연결에 실패합니다. 연결 문제를 해결하고 싶습니다.
해결 방법
복제 인스턴스에서 원본 또는 대상 엔드포인트로의 연결을 테스트할 때 연결 문제 또는 기본 데이터베이스 문제가 발생할 수 있습니다.
복제 인스턴스와 원본 또는 대상 간에 연결 문제가 있는 경우 다음과 비슷한 오류가 나타납니다.
- "Application-Status: 1020912, Application-Message: Failed to connect Network error has occurred, Application-Detailed-Message: RetCode: SQL_ERROR SqlState: HYT00 NativeError: 0 Message: [unixODBC][Microsoft][ODBC Driver 13 for SQL Server]Login timeout expired ODBC general error."
- "Application-Status: 1020912, Application-Message: Cannot connect to ODBC provider Network error has occurred, Application-Detailed-Message: RetCode: SQL_ERROR SqlState: 08001 NativeError: 101 Message: [unixODBC]timeout expired ODBC general error."
- "Application-Status: 1020912, Application-Message: Cannot connect to ODBC provider ODBC general error., Application-Detailed-Message: RetCode: SQL_ERROR SqlState: HY000 NativeError: 2005 Message: [unixODBC][MySQL][ODBC 5.3(w) Driver]Unknown MySQL server host 'mysql1.xxxxx.us-east-1.rds.amazonaws.com' (22) ODBC general error."
데이터베이스 권한 또는 인증 오류와 같은 기본 데이터베이스 문제로 인해 오류가 발생하면 다음과 비슷한 오류가 나타납니다.
"Application-Status: 1020912, Application-Message: Cannot connect to ODBC provider Network error has occurred, Application-Detailed-Message: RetCode: SQL_ERROR SqlState: 08001 NativeError: 101 Message: [unixODBC]FATAL: password authentication failed for user "dmsuser" ODBC general error."
참고: 원본 및 대상 엔드포인트를 생성한 후 AWS DMS 복제 인스턴스에서 엔드포인트로의 연결을 테스트하는 것이 모범 사례입니다. AWS DMS 마이그레이션 작업을 시작하기 전에 테스트를 완료하십시오.
AWS에서 호스팅되는 리소스의 연결 문제 해결
원본 또는 대상 데이터베이스와 복제 인스턴스 간의 연결을 설정할 수 있는지 확인합니다. 사용 사례와 네트워크 인프라에 따라 원본 또는 대상 데이터베이스를 퍼블릭 서브넷 또는 프라이빗 서브넷의 복제 인스턴스에 연결합니다. 자세한 내용은 복제 인스턴스의 네트워크 설정을 참조하십시오.
참고: AWS DMS 버전 3.4.7 이상에서는 Amazon Virtual Private Cloud(Amazon VPC) 엔드포인트를 사용하도록 AWS DMS를 구성해야 합니다. 또는 특정 AWS 서비스와 상호 작용하는 모든 원본 및 대상 엔드포인트에 대한 퍼블릭 경로를 사용해야 합니다.
복제 인스턴스 구성 확인
복제 인스턴스에서 구성에 다음 규칙이 포함되어 있는지 확인합니다.
- 보안 그룹에 있는 원본 또는 대상 데이터베이스의 포트가 있는 IP 주소에 대한 아웃바운드 규칙. 기본적으로 보안 그룹의 아웃바운드 규칙은 모든 트래픽을 허용합니다. 보안 그룹은 스테이트풀이므로 기본 ** 인바운드 규칙**을 유지할 수 있습니다.
- 네트워크 액세스 제어 목록(ACL)의 원본 또는 대상 데이터베이스 포트가 있는 IP 주소에 대한 아웃바운드 규칙. 기본적으로 네트워크 ACL의 아웃바운드 규칙은 모든 트래픽을 허용합니다.
- 네트워크 ACL에 있는 원본 또는 대상 데이터베이스의 임시 포트가 있는 IP 주소에 대한 인바운드 규칙. 기본적으로 네트워크 ACL의 인바운드 규칙은 모든 트래픽을 허용합니다.
원본 또는 대상 데이터베이스 구성 확인
원본 또는 대상 데이터베이스에서 구성에 다음 규칙이 포함되어 있는지 확인합니다.
- 복제 인스턴스의 IP 주소 또는 복제 인스턴스의 서브넷 그룹 CIDR 블록에 대한 인바운드 규칙. 인바운드 규칙에는 보안 그룹의 원본 또는 대상 데이터베이스 포트가 포함되어야 합니다. 보안 그룹은 스테이트풀이므로 기본 ** 아웃바운드 규칙**을 유지할 수 있습니다.
- 복제 인스턴스의 IP 주소 또는 복제 인스턴스의 서브넷 그룹 CIDR 블록에 대한 인바운드 규칙. 인바운드 규칙에는 네트워크 ACL의 원본 또는 대상 데이터베이스 포트가 포함되어야 합니다. IP 주소 및 포트에 대한 명시적인 거부 규칙이 없는지 확인합니다.
- 네트워크 ACL에 임시 포트가 있는 복제 인스턴스의 서브넷 그룹 IP 주소 또는 CIDR 블록에 대한 아웃바운드 규칙. 기본적으로 네트워크 ACL의 아웃바운드 규칙은 모든 트래픽을 허용합니다.
복제 인스턴스의 서브넷 그룹 CIDR 블록을 허용하도록 네트워크를 구성하는 것이 모범 사례입니다. 복제 인스턴스의 IP 주소는 페일오버 또는 호스트 교체 이벤트 중에 변경됩니다.
서브넷 그룹의 IP 주소 및 CIDR 블록 확인
인바운드 및 아웃바운드 규칙을 설정하려면 서브넷 그룹의 IP 주소와 CIDR 블록을 확인합니다. AWS DMS 콘솔 또는 AWS Command Line Interface(AWS CLI) 중 하나를 사용할 수 있습니다.
참고: AWS CLI 명령을 실행할 때 오류가 발생하면 AWS CLI의 오류 해결을 참조하십시오. 또한 최신 AWS CLI 버전을 사용하고 있는지 확인하십시오.
AWS DMS 콘솔
다음 단계를 완료하십시오.
- AWS DMS 콘솔을 엽니다.
- 탐색 창에서 복제 인스턴스를 선택합니다.
- 복제 인스턴스를 선택합니다.
- 세부 정보에서 복제 인스턴스의 퍼블릭 IP 주소, 프라이빗 IP 주소, 복제 서브넷 그룹을 복사합니다.
- 복제 서브넷 그룹에서 링크를 선택하여 서브넷 그룹 페이지에 액세스합니다. 서브넷 그룹에 있는 각 서브넷의 이름을 복사합니다.
- 각 서브넷의 CIDR 블록을 확인하려면 Amazon VPC 콘솔을 엽니다.
- 서브넷 탭에서 서브넷을 검색합니다. 각 서브넷에 대해 CIDR 블록을 기록해 둡니다.
AWS CLI
각 서브넷의 CIDR 블록을 확인하려면 describe-subnets AWS CLI 명령을 실행합니다.
aws ec2 describe-subnets --filters Name=subnet-id,Values="$(aws dms describe-replication-instances --filters "Name=replication-instance-id,Values=replication-instance-name" --query "ReplicationInstances[*].ReplicationSubnetGroup.Subnets[*].SubnetIdentifier" --output text | sed -e 's/\t/,/g')" --query "Subnets[*].{SubnetId:SubnetId,CidrBlock:CidrBlock}" --output table
참고: replication-instance-name을 복제 인스턴스의 이름으로 대체하십시오.
복제 인스턴스의 IP 주소를 확인하려면 describe-replication-instances 명령을 실행합니다.
aws dms describe-replication-instances --filters "Name=replication-instance-id,Values=replication-instance-name" --query "ReplicationInstances[*].{ReplicationInstancePublicIpAddresses:ReplicationInstancePublicIpAddresses,ReplicationInstancePrivateIpAddresses:ReplicationInstancePrivateIpAddresses}" --output table
참고: replication-instance-name을 복제 인스턴스의 이름으로 대체하십시오.
온프레미스 리소스의 연결 문제 해결
원본 또는 대상 데이터베이스를 온프레미스로 호스팅하는 경우 데이터베이스가 AWS DMS 복제 인스턴스에서 들어오는 연결을 허용하는지 확인하십시오. 확인하려면 네트워크 관리자에게 문의하십시오. 또한 방화벽이 원본 또는 대상 데이터베이스와의 통신을 차단하지 않는지 확인하십시오.
DNS 구성을 올바르게 설정했는지 확인하십시오. DNS 확인이 필요한 경우 Amazon Route 53 Resolver를 사용합니다. Route 53 Resolver를 사용하여 온프레미스 이름 서버를 통해 엔드포인트를 확인하는 방법에 대한 자세한 내용은 자체 온프레미스 이름 서버 사용을 참조하십시오. 또는 AWS CLI를 통해 새 DMS 인스턴스를 생성하여 고객 DNS 이름 서버(--dns-name-servers)를 통해 DNS 문제를 해결합니다. 기본적으로 AWS DMS 인스턴스는 Amazon이 확인용으로 제공하는 DNS 이름을 사용합니다. 자세한 내용은 create-replication-instance를 참조하십시오.
참고: 사용자 지정 DNS를 사용하도록 원본 또는 대상을 구성하면 AWS DMS 엔드포인트가 실패할 수 있습니다.
Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스의 네트워크 구성이 연결 문제가 있는 AWS DMS 복제 인스턴스와 동일한지 확인하십시오. 네트워크 연결 문제를 해결하려면 먼저 새 Amazon EC2 인스턴스에서 다음 명령을 실행합니다.
telnet database_IP_address_or_DNS port_number
참고: database_IP_address_or_DNS를 AWS DMS 소스 또는 대상 엔드포인트에 지정된 데이터베이스의 IP 주소 또는 도메인 이름으로 대체하십시오. port_number를 AWS DMS 원본 또는 대상 엔드포인트에 지정된 데이터베이스의 포트 번호로 대체하십시오.
그리고 나서 다음 명령을 실행합니다.
nslookup domain_name
참고: domain_name을 AWS DMS 원본 또는 대상 엔드포인트에 지정된 데이터베이스의 도메인 이름으로 대체하십시오.
기본 데이터베이스 오류 해결
기본 데이터베이스 오류를 해결하려면 다음 엔드포인트 구성이 올바르게 설정되었는지 확인하십시오.
- 사용자 이름
- 암호
- ServerName
참고: ServerName을 온프레미스 데이터베이스의 DNS 또는 IP 주소 또는 Amazon Relational Database Service(RDS) 엔드포인트로 설정합니다. - 포트
- 데이터베이스 이름
참고: MySQL 원본 또는 대상의 데이터베이스 이름을 지정하지 마십시오.
AWS Secrets Manager를 사용하여 위 필드 중 하나를 지정하는 경우 비밀을 사용하여 AWS DMS 엔드포인트에 액세스를 참조하십시오.
참고: Secrets Manager는 암호에 세미콜론(;), 마침표(.), 콜론(:), 더하기 기호(+), 중괄호({}) 등의 문자를 지원하지 않습니다.
원본 또는 대상 데이터베이스와 관련된 기본 데이터베이스 오류는 해당 데이터베이스 설명서의 해결 방법을 참조하십시오. AWS DMS 콘솔에서 받은 오류 코드 및 오류 메시지를 사용하십시오.
엔드포인트 구성을 위한 자격 증명을 수동으로 입력할 때는 암호 주위에 중괄호를 포함하지 않도록 하십시오. 중괄호를 포함하면 다음과 비슷한 오류 메시지가 나타납니다.
Amazon Redshift가 대상 엔드포인트인 경우의 오류 예시
"[SERVER ]E: RetCode: SQL_ERROR SqlState: 28000 NativeError: 10 Message: [Amazon][Amazon Redshift] (10) Error occurred while trying to connect: [SQLState 28000] connection to server at Your workgroup endpoint (IP), port 5439 failed: FATAL: password authentication failed for user Your Username [1022502] (ar_odbc_conn.c:614)"
MySQL이 대상 엔드포인트인 경우의 오류 예시
"00012920: 2025-05-08T20:27:50:341649 [SERVER ]D: RetCode: SQL_ERROR SqlState: HY000 NativeError: 1045 Message: [MySQL][ODBC 8.0(w) Driver]Access denied for user UserName@IP (using password: YES) [1022502] (ar_odbc_conn.c:614)"
SQL Server가 대상 엔드포인트인 경우의 오류 예시
"00012920: 2025-05-08T21:15:20:185761 [SERVER ]E: RetCode: SQL_ERROR SqlState: 28000 NativeError: 18456 Message: [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]Login failed for user UserName. [1022502] (ar_odbc_conn.c:614)"
참고: PostgreSQL을 대상 엔드포인트로 사용하는 경우 중괄호를 사용할 수 있습니다.
자세한 내용은 원본 또는 대상 데이터베이스의 오류, 추적, 경보 또는 기타 로그를 확인하십시오.
데이터베이스 액세스 오류의 경우 AWS DMS에서 특정 원본 또는 대상에 요구하는 권한을 확인하십시오.
SSL을 사용한 원본 및 대상 엔드포인트 연결을 암호화하는 방법에 대한 자세한 내용은 AWS DMS에서 SSL 사용을 참조하십시오.
관련 정보
AWS DMS를 사용할 때 Amazon S3 엔드포인트 연결 테스트 실패 문제를 해결하려면 어떻게 해야 합니까?
Amazon Redshift를 대상 엔드포인트로 사용하는 AWS DMS 작업의 연결 실패 및 오류 문제를 해결하려면 어떻게 해야 합니까?
- 언어
- 한국어

관련 콘텐츠
- 질문됨 6달 전