Aurora DSQL의 문제 해결
참고
이어지는 주제에서는 Aurora DSQL을 사용할 때 발생할 수 있는 오류 및 문제에 대한 해결 방법을 조언합니다. 여기에 나열되지 않은 문제가 발견되면 AWS Support에 문의하세요.
연결 오류 문제 해결
오류: 인식할 수 없는 SSL 오류 코드: 6
원인: 버전 14
psql --version
을 사용하여 클라이언트 버전을 확인할 수 있습니다.
오류: NetworkUnreachable
연결 시도 중 NetworkUnreachable
오류가 발생하면 실제 네트워크에 문제가 있다는 신호라기보다는 클라이언트가 IPv6 연결을 지원하지 않는 것일 수 있습니다. 이 오류는 일반적으로 PostgreSQL 클라이언트가 듀얼 스택 연결을 처리하는 방식 때문에 IPv4 전용 인스턴스에서 발생합니다. 서버가 듀얼 스택 모드를 지원하는 경우 이러한 클라이언트는 먼저 호스트 이름을 IPv4 및 IPv6 주소로 확인합니다. 먼저 IPv4 연결을 시도한 다음 초기 연결이 실패하면 IPv6를 시도합니다. 시스템에서 IPv6를 지원하지 않는 경우 명확한 'IPv6 지원되지 않음' 메시지 대신 일반적인 NetworkUnreachable
오류가 표시됩니다.
인증 오류 문제 해결
사용자 '...'에 대한 IAM 인증 실패
Aurora DSQL IAM 인증 토큰을 생성할 때 설정할 수 있는 최대 기간은 1주일입니다. 1주일 후에는 해당 토큰으로 인증할 수 없습니다.
또한 Aurora DSQL은 위임된 역할이 만료된 경우 연결 요청을 거부합니다. 예를 들어 인증 토큰이 만료되지 않았더라도 임시 IAM 역할로 연결하려고 하면 Aurora DSQL은 연결 요청을 거부합니다.
IAM이 Aurora DSQL에서 작동하는 방식에 대한 자세한 내용은 Understanding authentication and authorization for Aurora DSQL 및 AWS Identity and Access Management in Aurora DSQL을 참조하세요.
GetObject 작업을 호출할 때 오류(InvalidAccessKeyId)가 발생했습니다. 제공한 AWS 액세스 키 ID가 레코드에 없습니다.
IAM이 요청을 거부했습니다. 자세한 내용은 요청에 서명하는 이유를 참조하세요.
<역할> IAM 역할이 존재하지 않음
Aurora DSQL에서 IAM 역할을 찾을 수 없습니다. 자세한 내용은 IAM 역할을 참조하세요.
IAM 역할은 IAM ARN과 같아야 합니다.
자세한 내용은 IAM 식별자 - IAM ARN을 참조하세요.
권한 부여 오류 문제 해결
<역할> 역할이 지원되지 않음
Aurora DSQL은 GRANT
작업을 지원하지 않습니다. Supported subsets of PostgreSQL commands in Aurora DSQL을 참조하세요.
<역할> 역할을 사용하여 신뢰를 구축할 수 없음
Aurora DSQL은 GRANT
작업을 지원하지 않습니다. Supported subsets of PostgreSQL commands in Aurora DSQL을 참조하세요.
<역할> 역할이 존재하지 않음
Aurora DSQL에서 지정된 데이터베이스 사용자를 찾을 수 없습니다. Authorize custom database roles to connect to a cluster를 참조하세요.
오류: <역할> 역할을 사용하여 IAM 신뢰를 부여하는 권한이 거부됨
데이터베이스 역할에 대한 액세스 권한을 부여하려면 관리자 역할을 사용하여 클러스터에 연결되어 있어야 합니다. 자세한 내용은 Authorize database roles to use SQL in a database를 참조하세요.
오류: <역할> 역할에 LOGIN 속성이 있어야 함
생성하는 데이터베이스 역할에 LOGIN
권한이 있어야 합니다.
이 오류를 해결하려면 LOGIN
권한이 있는 PostgreSQL 역할을 생성했는지 확인합니다. 자세한 내용은 PostgreSQL 설명서에서 CREATE ROLE
오류: 일부 객체가 해당 역할에 의존하기 때문에 <역할> 역할을 삭제할 수 없음
Aurora DSQL은 AWS IAM REVOKE
를 사용하여 관계를 취소할 때까지 IAM 관계가 있는 데이터베이스 역할을 삭제하면 오류를 반환합니다. 자세한 내용은 Revoking authorization을 참조하세요.
SQL 오류 문제 해결
오류: 지원되지 않음
Aurora DSQL은 모든 PostgreSQL 기반 언어를 지원하지 않습니다. 지원되는 항목에 대한 자세한 내용은 Supported PostgreSQL features in Aurora DSQL을 참조하세요.
오류: 읽기 전용 트랜잭션의 SELECT FOR UPDATE가 no-op임
읽기 전용 트랜잭션에서 허용되지 않는 작업을 시도하고 있습니다. 자세한 내용은 Understanding concurrency control in Aurora DSQL을 참조하세요.
오류: 대신 CREATE INDEX ASYNC
사용
기존 행이 있는 테이블에 인덱스를 생성하려면 CREATE INDEX
ASYNC
명령을 사용해야 합니다. 자세한 내용은 Creating indexes asynchronously in Aurora DSQL을 참조하세요.
OCC 오류 문제 해결
OC000 '오류: 변형이 다른 트랜잭션과 충돌합니다. 필요에 따라 다시 시도하세요.'
OC001 '오류: 스키마가 다른 트랜잭션에 의해 업데이트되었습니다. 필요에 따라 다시 시도하세요.'
PostgreSQL 세션에 스키마 카탈로그의 캐시된 복사본이 있었습니다. 캐시된 복사본은 로드 당시 유효했습니다. 이것을 T1 시점과 버전 V1이라고 하겠습니다.
또 다른 트랜잭션은 T2 시점에 카탈로그를 업데이트합니다. 이것을 V2라고 하겠습니다.
원래 세션이 T2 시점에 스토리지에서 읽기를 시도하면 카탈로그 버전 V1을 계속 사용하고 있는 것입니다. T2 시점의 최신 카탈로그 버전이 V2이므로 Aurora DSQL의 스토리지 계층은 요청을 거부합니다.
원래 세션에서 T3 시점에 다시 시도하면 Aurora DSQL이 카탈로그 캐시를 새로 고칩니다. T3 시점의 트랜잭션은 카탈로그 V2를 사용합니다. Aurora DSQL은 T2 시점 이후 다른 카탈로그 변경 사항이 없는 한 트랜잭션을 완료합니다.
SSL/TLS 연결 문제 해결
SSL 오류: 인증서 확인 실패
이 오류는 클라이언트가 서버의 인증서를 확인할 수 없음을 나타냅니다. 다음을 확인하세요.
-
Amazon Root CA 1 인증서가 올바르게 설치됨. 이 인증서를 검증하고 설치하는 방법에 대한 지침은 Aurora DSQL 연결을 위한 SSL/TLS 인증서 구성 섹션을 참조하세요.
-
PGSSLROOTCERT
환경 변수가 올바른 인증서 파일을 가리킴 -
인증서 파일에 올바른 권한이 있음
인식할 수 없는 SSL 오류 코드: 6
이 오류는 버전 14 미만의 PostgreSQL 클라이언트에서 발생합니다. PostgreSQL 클라이언트를 버전 17로 업그레이드하여 이 문제를 해결합니다.
SSL 오류: 등록되지 않은 체계(Windows)
이는 시스템 인증서를 사용할 때 Windows psql 클라이언트에서 알려진 문제입니다. Windows에서 연결 지침에 설명된 다운로드된 인증서 파일 메서드를 사용합니다.