Utilize o Alibaba Cloud SDK for Python para invocar a operação DescribeDBInstances do ApsaraDB RDS e listar suas instâncias de banco de dados.
Pré-requisitos
Antes de começar, verifique se você possui:
O Python 3 instalado. Execute
python --versionpara confirmar.Uma conta Alibaba Cloud com um AccessKey ID e um AccessKey secret
Um usuário RAM com a política
AliyunRDSReadOnlyAccess(ou superior). Consulte Configurar um usuário RAM caso ainda não tenha feito isso.
Configurar um usuário RAM
Ignore esta seção se já possuir um usuário RAM com as permissões necessárias.
Faça login no console RAM, acesse a página Users e clique em Create User.
Defina Logon Name como
rds-openapi-operatore configure Access Mode para Using permanent AccessKey to access.Clique em OK. Salve o AccessKey ID e o AccessKey secret exibidos, pois não será possível recuperá-los posteriormente.
Na página Users, localize o usuário RAM recém-criado e clique em Add Permissions na coluna Actions.
-
Pesquise por
AliyunRDSe selecione AliyunRDSReadOnlyAccess.A política
AliyunRDSReadOnlyAccessconcede permissão para consultar instâncias RDS. SelecioneAliyunRDSFullAccesspara obter permissões completas de gerenciamento ou crie uma política personalizada. Para mais informações, consulte Create custom policies . Clique em Grant permissions.
Chamar a API
Etapa 1: Revisar a referência da API
Antes de chamar uma operação de API, revise seus parâmetros e as permissões exigidas na referência da API do ApsaraDB RDS.
Etapa 2: Configurar variáveis de ambiente
Armazene suas credenciais em variáveis de ambiente para evitar que o AccessKey secret fique exposto no código-fonte e no controle de versão.
Linux ou macOS:
export ALIBABA_CLOUD_ACCESS_KEY_ID=<access_key_id>
export ALIBABA_CLOUD_ACCESS_KEY_SECRET=<access_key_secret>
Windows (Prompt de Comando):
setx ALIBABA_CLOUD_ACCESS_KEY_ID "<access_key_id>"
setx ALIBABA_CLOUD_ACCESS_KEY_SECRET "<access_key_secret>"
Após executar setx, reinicie seu terminal para que as alterações entrem em vigor.
Etapa 3: Instalar o SDK
pip install alibabacloud_rds20140815==5.0.1
Etapa 4: Baixar e executar o código de exemplo
Acesse DescribeDBInstances no OpenAPI Explorer.
Na aba Parameters, defina RegionId como
cn-beijing.Na aba SDK Sample Code, selecione Python e clique em Download Project.
Extraia o pacote e acesse o diretório
alibabacloud_sample.-
Execute o exemplo:
python sample.pySe a chamada for bem-sucedida, a resposta será semelhante a:
{ "headers": { "date": "Tue, 18 Jun 2024 10:12:14 GMT", "content-type": "application/json;charset=utf-8", "content-length": "1018", "connection": "keep-alive", "keep-alive": "timeout=25", "access-control-allow-origin": "*", "access-control-expose-headers": "*", "x-acs-request-id": "3BBF9A9B-E74C-5EF5-99BB-4F65B4B67499", "x-acs-trace-id": "dcfce27991f7d63647cc3c31ae3daa65", "etag": "1se2pACCKd0kse87Rqtbprg8" }, "statusCode": 200, "body": { "Items": { "DBInstance": [ { "ConnectionMode": "Standard", "ConnectionString": "rm-2zea24972vgw2****.mysql.rds.aliyuncs.com", "CreateTime": "2024-06-18T10:09:56Z", "DBInstanceClass": "mysql.n1e.small.1", "DBInstanceId": "rm-2zea24972vgw2****", "DBInstanceMemory": 1024, "DBInstanceNetType": "Intranet", "DBInstanceStatus": "Creating", "DBInstanceStorageType": "general_essd", "DBInstanceType": "Primary", "DeletionProtection": false, "Engine": "MySQL", "EngineVersion": "8.0", "ExpireTime": "2024-07-18T16:00:00Z", "InstanceNetworkType": "VPC", "LockMode": "Unlock", "MutriORsignle": false, "PayType": "Prepaid", "ReadOnlyDBInstanceIds": { "ReadOnlyDBInstanceId": [] }, "RegionId": "cn-beijing", "ResourceGroupId": "rg-acfmz7u4zzr****", "TipsLevel": 0, "VSwitchId": "vsw-2zeyawzswr2lno0ys****", "VpcCloudInstanceId": "rm-2zea24972vgw2****-20240618180950", "VpcId": "vpc-2zeev9fov0chw8hjt****", "ZoneId": "cn-beijing-l" } ] }, "NextToken": "o7PHCFqQhehg8NUW9EJ7Yw", "PageNumber": 1, "PageRecordCount": 1, "RequestId": "3BBF9A9B-E74C-5EF5-99BB-4F65B4B67499", "TotalRecordCount": 1 } }
Próximos passos
Explore outras operações da API do ApsaraDB RDS no OpenAPI Portal.
Aplique o mesmo fluxo de trabalho do SDK para chamar operações da API do ApsaraDB RDS em outras linguagens de programação.