我正在使用 boto3 将数据库快照恢复到尚未创建的新数据库实例。
rds.restore_db_instance_from_db_snapshot(
DBInstanceIdentifier=temp_db_name,
DBSnapshotIdentifier=snapshot_id
)
我收到了这个错误信息:
botocore.exceptions.ClientError: An error occurred (InvalidParameterCombination)
when calling the RestoreDBInstanceFromDBSnapshot operation:
The option group myproject-mysql-5-6 is associated with a different
VPC than the request.
我该如何解决这个问题?
我首先不知道如何找到选项组。
我可以根据 返回的数据计算出VpcId
和。OptionGroupName
describe_db_snapshots
这是一个文档与 VPC 设置相关:
当您将选项组分配给数据库实例时,该选项组还会链接到数据库实例所在的受支持平台,即 VPC 或 EC2-Classic(非 VPC)。如果数据库实例位于 VPC 中,则与数据库实例关联的选项组会链接到该 VPC。这意味着,如果您尝试将实例还原到不同的 VPC 或其他平台,则无法使用分配给数据库实例的选项组。如果将数据库实例还原到不同的 VPC 或其他平台,则必须将默认选项组分配给实例,分配链接到该 VPC 或平台的选项组,或者创建新选项组并将其分配给数据库实例。对于持久或永久选项,在将数据库实例还原到不同的 VPC 时,您必须创建包含持久或永久选项的新选项组。
但是我不明白这如何应用于restore_db_instance_from_db_snapshot
通话。
编辑
我如何通过boto3
API 设置这些信息?
答案1
我可以通过正确的DBSubnetGroupName
值来设置它
DBInstanceIdentifier=target_db_name,
DBSnapshotIdentifier=snapshot_id,
DBSubnetGroupName="mysql"
)