sql >> Database teknologi >  >> RDS >> PostgreSQL

Importer Postgres-data til RDS ved hjælp af S3 og aws_s3

Hovedproblemet her er, at du skal 1) tilføje en IAM-rolle til RDS-instansen for at få adgang til S3-bøtten og 2) tilføje et S3-slutpunkt til den VPC, hvor RDS-instansen kører, for at tillade kommunikation.

Dette er den procedure, jeg fulgte for at få det til at fungere, ved at bruge AWS cli-kommandoer i en shell (pas godt på værdien af ​​de involverede miljøvariabler), håber det kan hjælpe:

  1. Opret IAM-rollen:
$ aws iam create-role \
    --role-name $ROLE_NAME \
    --assume-role-policy-document '{"Version": "2012-10-17", "Statement": [{"Effect": "Allow", "Principal": {"Service": "rds.amazonaws.com"}, "Action": "sts:AssumeRole"}]}'
  1. Opret den IAM-politik, der vil blive knyttet til IAM-rollen:
$ aws iam create-policy \
    --policy-name $POLICY_NAME \
    --policy-document '{"Version": "2012-10-17", "Statement": [{"Sid": "s3import", "Action": ["s3:GetObject", "s3:ListBucket"], "Effect": "Allow", "Resource": ["arn:aws:s3:::${BUCKET_NAME}", "arn:aws:s3:::${BUCKET_NAME}/*"]}]}'
  1. Vedhæft politikken:
$ aws iam attach-role-policy \
    --policy-arn arn:aws:iam::$AWS_ACCOUNT_ID:policy/$POLICY_NAME \
    --role-name $ROLE_NAME
  1. Tilføj rollen til en specifik instans – dette trin skal gentages for hver ny instans:
$ aws rds add-role-to-db-instance \
    --db-instance-identifier $RDS_INSTANCE_NAME \
    --feature-name s3Import \
    --role-arn arn:aws:iam::$AWS_ACCOUNT_ID:role/$ROLE_NAME \
    --region $REGION
  1. Opret VPC-slutpunktet for S3-tjenesten:
$ aws ec2 create-vpc-endpoint \
    --vpc-id $VPC_ID \
    --service-name com.amazonaws.$REGION.s3
    --route-table-ids $ROUTE_TABLE_ID

Rutetabel-id'et relateret til den VPC, hvor endepunktet er oprettet, kan hentes gennem kommandoen

$ aws ec2 describe-route-tables | jq -r '.RouteTables[] | "\(.VpcId) \(.RouteTableId)"'


  1. Hvordan implementerer man hierarkiske cms-websteder?

  2. Er det muligt at lave N-master => 1-slave replikering med MySQL?

  3. Tips og tricks ved hjælp af revisionslogning til MariaDB

  4. ORA-30926 - Sammenfletningstilstand