Todos os produtos
Search
Central de documentação

Data Management:Exemplo de SDK Python para DBS

Última atualização: Jun 27, 2026

Chame a operação da API DescribeBackupPlanList para consultar detalhes de planos de backup com o SDK Python do Data Disaster Recovery.

Pré-requisitos

Antes de começar, verifique se você tem:

  • Python 3 instalado. Execute python --version para verificar.

  • Um usuário do Resource Access Management (RAM) com credenciais AccessKey e a política AliyunDBSFullAccess ou AliyunDBSReadOnlyAccess anexada. Consulte Criar um usuário RAM e conceder permissões caso ainda não tenha feito isso.

Como funciona

Todos os exemplos neste tópico usam o pacote SDK alibabacloud_dbs20190306 para enviar solicitações de API ao serviço Data Disaster Recovery. O SDK lê as credenciais das variáveis de ambiente, envia uma solicitação DescribeBackupPlanList e retorna uma resposta JSON paginada com os detalhes do plano de backup.

Criar um usuário RAM e conceder permissões

Ignore esta seção se você já possui um usuário RAM com AccessKey e as permissões necessárias.

  1. Acesse a página Users no console RAM e clique em Create User.

  2. Defina Logon Name como dbs-openapi-operator e Access Mode como Using permanent AccessKey to access.

  3. Clique em OK. Na página exibida, salve o AccessKey ID e o AccessKey secret do usuário RAM.

  4. Na página Users, localize o usuário RAM e clique em Add Permissions na coluna Actions.

  5. Insira AliyunDBS na caixa de pesquisa e selecione uma das seguintes políticas:

    Política

    Permissões

    AliyunDBSFullAccess

    Acesso de leitura e gravação. Permite comprar, configurar e gerenciar planos de backup.

    AliyunDBSReadOnlyAccess

    Acesso somente leitura. Permite visualizar detalhes e configurações de tarefas, mas não alterar dados.

    Para criar uma política personalizada conforme os requisitos do seu negócio, consulte Políticas personalizadas para Data Disaster Recovery .
  6. Clique em Grant permissions.

Chamar a API

1. Instale o pacote SDK

pip install alibabacloud_dbs20190306
Dica: Execute este comando em um ambiente virtual para evitar conflitos de dependência com outros pacotes instalados no sistema: python -m venv .venv source .venv/bin/activate # Linux or macOS .venv\Scripts\activate # Windows pip install alibabacloud_dbs20190306

2. Defina variáveis de ambiente

O SDK lê suas credenciais das variáveis de ambiente ALIBABA_CLOUD_ACCESS_KEY_ID e ALIBABA_CLOUD_ACCESS_KEY_SECRET.

Linux ou macOS — Execute os comandos abaixo e substitua os espaços reservados pelo seu AccessKey ID e AccessKey secret:

export ALIBABA_CLOUD_ACCESS_KEY_ID=<your-access-key-id>
export ALIBABA_CLOUD_ACCESS_KEY_SECRET=<your-access-key-secret>

Windows — Adicione ALIBABA_CLOUD_ACCESS_KEY_ID e ALIBABA_CLOUD_ACCESS_KEY_SECRET às variáveis de ambiente do sistema e reinicie-o.

3. Obter o código de exemplo

  1. Acesse a página de depuração da DescribeBackupPlanList no OpenAPI Explorer.

  2. Na aba Parameters, defina Region como cn-hangzhou (ou sua região de destino).

  3. Na aba SDK Sample Code, selecione Python e clique em Download Project.

  4. Extraia o pacote e acesse o diretório alibabacloud_sample.

4. Execute o código de exemplo

python sample.py

Uma resposta bem-sucedida é semelhante a esta:

{
    "headers": {
        "date": "Mon, 17 Jun 2024 07:22:04 GMT",
        "content-type": "application/json;charset=utf-8",
        "content-length": "1064",
        "connection": "keep-alive",
        "keep-alive": "timeout=25",
        "vary": "Accept-Encoding",
        "access-control-allow-origin": "*",
        "access-control-expose-headers": "*",
        "x-acs-request-id": "4C4073F2-35A9-5819-88F1-C018A871****",
        "x-acs-trace-id": "3c79c1be14f6f17be6aaa9af0f02****",
        "etag": "1Jukbw3tBgZiZxgb8TVR****"
    },
    "statusCode": 200,
    "body": {
        "HttpStatusCode": 200,
        "Items": {
            "BackupPlanDetail": [
                {
                    "BackupGatewayId": 16****,
                    "BackupMethod": "physical",
                    "BackupObjects": "[]",
                    "BackupPeriod": "SUNDAY,MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURDAY",
                    "BackupPlanCreateTime": 1718606018000,
                    "BackupPlanId": "dbsqe3w3vxq****",
                    "BackupPlanName": "DBS-csyl-L-3",
                    "BackupPlanStatus": "init",
                    "BackupRetentionPeriod": 730,
                    "BackupStartTime": "12:00",
                    "BackupStorageType": "system",
                    "DuplicationArchivePeriod": 0,
                    "DuplicationInfrequentAccessPeriod": 0,
                    "EnableBackupLog": true,
                    "InstanceClass": "medium",
                    "OSSBucketName": "dbs-backup-137383785969****-cn-hangzhou-qxl0qf4g****",
                    "OSSBucketRegion": "cn-hangzhou",
                    "OpenBackupSetAutoDownload": false,
                    "ResourceGroupId": "rg-acfmz7u4zzr****",
                    "SourceEndpointDatabaseName": "",
                    "SourceEndpointInstanceID": "",
                    "SourceEndpointInstanceType": "agent",
                    "SourceEndpointIpPort": "121.XX.XXX.171:3306",
                    "SourceEndpointRegion": "cn-hangzhou",
                    "SourceEndpointUserName": "root"
                }
            ]
        },
        "PageNum": 0,
        "PageSize": 30,
        "RequestId": "4C4073F2-35A9-5819-88F1-C018A871****",
        "Success": true,
        "TotalElements": 1,
        "TotalPages": 1
    }
}

Principais campos da resposta:

Campo

Descrição

BackupPlanStatus

Status atual do plano de backup. init indica que o plano foi criado, mas ainda não iniciado.

BackupRetentionPeriod

Tempo de retenção dos backups, em dias. Neste exemplo, 730 dias (2 anos).

BackupMethod

Tipo de backup. physical significa backup físico no nível de armazenamento.

BackupPeriod

Dias da semana em que os backups são executados.

BackupStartTime

Horário diário de início do backup.

EnableBackupLog

Indica se o backup de log está ativado para recuperação point-in-time.

TotalElements

Número total de planos de backup na resposta. Use com PageNum e PageSize para paginação.

Próximos passos