MySQL에 대한 연합 쿼리 사용 시작하기 - Amazon Redshift

MySQL에 대한 연합 쿼리 사용 시작하기

MySQL 데이터베이스에 대한 연합 쿼리를 생성하려면 다음과 같은 일반적인 접근 방식을 따릅니다.

  1. Amazon Redshift 클러스터에서 Amazon RDS 또는 Aurora MySQL DB 인스턴스로의 연결을 설정합니다.

    이를 위해 RDS MySQL 또는 Aurora MySQL DB 인스턴스가 Amazon Redshift 클러스터로부터의 연결을 허용할 수 있는지 확인합니다. Amazon Redshift 클러스터와 Amazon RDS 또는 Aurora MySQL 인스턴스가 동일한 Virtual Private Cloud(VPC) 및 서브넷 그룹에 있는 것이 좋습니다. 이런 방식으로 RDS 또는 Aurora MySQL DB 인스턴스에 대한 보안 그룹의 인바운드 규칙에 Amazon Redshift 클러스터의 보안 그룹을 추가할 수 있습니다.

    또한 RDS 또는 Aurora MySQL 인스턴스에 Amazon Redshift가 연결할 수 있게 하는 VPC 피어링 또는 기타 네트워킹을 설정할 수 있습니다. VPC 네트워킹에 대한 자세한 내용은 다음을 참조하세요.

    참고

    Amazon Redshift 클러스터가 RDS 또는 Aurora MySQL 인스턴스와 다른 VPC에 있는 경우 Enhanced VPC Routing을 사용합니다. 그렇지 않으면 연합 쿼리를 실행할 때 시간 제한 오류가 발생할 수 있습니다.

  2. AWS Secrets Manager에서 RDS MySQL 및 Aurora MySQL 데이터베이스에 대한 보안 암호를 설정합니다. 그런 다음 AWS Identity and Access Management(IAM) 액세스 정책 및 역할에서 보안 암호를 참조합니다. 자세한 내용은 연합 쿼리 사용을 위해 비밀 및 IAM 역할 생성 단원을 참조하십시오.

    참고

    클러스터에서 향상된 VPC 라우팅을 사용하는 경우 AWS Secrets Manager에 대한 인터페이스 VPC 엔드포인트를 구성해야 할 수 있습니다. 이는 Amazon Redshift 클러스터의 VPC와 서브넷이 퍼블릭 AWS Secrets Manager 엔드포인트에 액세스할 수 없는 경우에 필요합니다. VPC 인터페이스 엔드포인트를 사용하면 VPC의 Amazon Redshift 클러스터와 AWS Secrets Manager 간 통신이 VPC에서 엔드포인트 인터페이스로 비공개로 라우팅됩니다. 자세한 내용은 Amazon VPC 사용 설명서인터페이스 엔드포인트 생성을 참조하세요.

  3. 이전에 생성한 IAM 역할을 Amazon Redshift 클러스터에 적용합니다. 자세한 내용은 연합 쿼리 사용을 위해 비밀 및 IAM 역할 생성 단원을 참조하십시오.

  4. 외부 스키마를 사용하여 RDS MySQL 및 Aurora MySQL 데이터베이스에 연결합니다. 자세한 내용은 CREATE EXTERNAL SCHEMA 단원을 참조하십시오. 연합 쿼리 사용 방법에 대한 예는 MySQL에서 연합 쿼리를 사용하는 예 섹션을 참조하세요.

  5. RDS MySQL 및 Aurora MySQL 데이터베이스를 참조하는 외부 스키마를 참조 중인 SQL 쿼리를 실행합니다.