すべてのプロダクト
Search
ドキュメントセンター

Data Management:DBS の Python SDK の使用例

最終更新日:Mar 29, 2026

Data Disaster Recovery (DBS) Python SDK を使用して DescribeBackupPlanList API オペレーションを呼び出し、バックアッププランの詳細をクエリします。

前提条件

開始する前に、以下のものが揃っていることを確認してください:

  • Python 3 がインストールされていること。確認するには、python --version を実行します。

  • AccessKey 認証情報と AliyunDBSFullAccess または AliyunDBSReadOnlyAccess ポリシーがアタッチされた Resource Access Management (RAM) ユーザー。まだ作成していない場合は、「RAM ユーザーの作成と権限の付与」をご参照ください。

仕組み

このトピックのすべての例では、alibabacloud_dbs20190306 SDK パッケージを使用して、DBS サービスに API リクエストを送信します。SDK は環境変数から認証情報を読み取り、DescribeBackupPlanList リクエストを送信し、バックアッププランの詳細を含むページ分割された JSON 応答を返します。

RAM ユーザーの作成と権限の付与

AccessKey と必要な権限を持つ RAM ユーザーが既にある場合は、このセクションをスキップしてください。

  1. RAM コンソールの[ユーザー] ページに移動し、[ユーザーの作成] をクリックします。

  2. [ログイン名]dbs-openapi-operator に、[アクセスモード][永続的な AccessKey を使用してアクセス] に設定します。

  3. [OK] をクリックします。表示されたページで、RAM ユーザーの AccessKey ID と AccessKey Secret を保存します。

  4. [ユーザー] ページで、対象の RAM ユーザーを見つけ、[操作] 列の [権限の追加] をクリックします。

  5. 検索ボックスに AliyunDBS と入力し、次のいずれかのポリシーを選択します:

    ポリシー権限
    AliyunDBSFullAccess読み取りおよび書き込みアクセス。バックアッププランの購入、構成、管理を許可します。
    AliyunDBSReadOnlyAccess読み取り専用アクセス。タスクの詳細と構成の表示を許可しますが、変更はできません。
    ビジネス要件に基づいてカスタムポリシーを作成するには、「データディザスタリカバリのカスタムポリシー」をご参照ください。
  6. [権限を付与] をクリックします。

API の呼び出し

1. SDK パッケージのインストール

pip install alibabacloud_dbs20190306
ヒント: システムにインストールされている他のパッケージとの依存関係の競合を避けるため、このコマンドは仮想環境内で実行してください:
python -m venv .venv
source .venv/bin/activate   # Linux または macOS
.venv\Scripts\activate      # Windows
pip install alibabacloud_dbs20190306

2. 環境変数の設定

SDK は、ALIBABA_CLOUD_ACCESS_KEY_ID および ALIBABA_CLOUD_ACCESS_KEY_SECRET 環境変数から認証情報を読み取ります。

Linux または macOS — 次のコマンドを実行し、プレースホルダーをご利用の AccessKey ID と AccessKey Secret に置き換えます:

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

WindowsALIBABA_CLOUD_ACCESS_KEY_IDALIBABA_CLOUD_ACCESS_KEY_SECRET をシステム環境変数に追加し、システムを再起動します。

3. サンプルコードの取得

  1. OpenAPI Explorer の DescribeBackupPlanList デバッグページに移動します。

  2. [パラメーター] タブで、[リージョン]cn-hangzhou (またはターゲットリージョン) に設定します。

  3. [SDK サンプルコード] タブで、[Python] を選択し、[プロジェクトのダウンロード] をクリックします。

  4. パッケージを展開し、alibabacloud_sample ディレクトリに移動します。

4. サンプルコードの実行

python sample.py

成功した場合の応答は、次のようになります:

{
    "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
    }
}

主要な応答フィールド:

フィールド説明
BackupPlanStatusバックアッププランの現在のステータス。init は、プランは作成されたがまだ開始されていないことを意味します。
BackupRetentionPeriodバックアップが保持される期間 (日数)。この例では 730 日 (2 年) です。
BackupMethodバックアップの種類。physical は、ストレージレベルでの物理バックアップを意味します。
BackupPeriodバックアップが実行される曜日。
BackupStartTimeバックアップが開始される時刻。
EnableBackupLogポイントインタイムリカバリのためにログバックアップが有効になっているかどうか。
TotalElements応答に含まれるバックアッププランの総数。ページネーションには PageNumPageSize と共に使用します。

次のステップ