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

ApsaraDB RDS:Python SDK の使用例

最終更新日:Feb 28, 2026

このトピックでは、Alibaba Cloud SDK for Python をインストールおよび使用して、DescribeDBInstances 操作を呼び出し、ご利用の ApsaraDB RDS インスタンスを照会する方法について説明します。

前提条件

開始する前に、以下の条件を満たしていることを確認してください。

  • Python 3 のインストール(ダウンロード

  • pip(Python 3.4 以降に同梱)

  • AccessKey ペアを保有する Alibaba Cloud アカウント

手順 1:RAM ユーザーの作成と権限の付与

必要な権限を付与済みの Resource Access Management (RAM) ユーザーを既にお持ちの場合は、この手順はスキップできます。

RAM ユーザーの作成

  1. RAM コンソールにログインし、ユーザー ページへ移動します。

  2. ユーザーの作成 をクリックします。

  3. ログイン名rds-openapi-operator を設定し、アクセスモード永続的な AccessKey を使用したアクセス を選択します。

  4. OK をクリックします。AccessKey ID および AccessKey Secret を保存してください。AccessKey Secret は一度のみ表示されます。

権限の付与

  1. ユーザー ページで、対象の RAM ユーザーを検索し、操作 列の 権限の追加 をクリックします。

  2. AliyunRDS を検索し、AliyunRDSReadOnlyAccess ポリシーを選択します。

    説明

    AliyunRDSReadOnlyAccess ポリシーは、RDS への読み取り専用アクセスを許可します。完全な管理権限が必要な場合は、代わりに AliyunRDSFullAccess を選択してください。詳細なアクセス制御が必要な場合は、カスタムポリシーの作成をご検討ください。

  3. 権限の付与 をクリックします。

手順 2:認証情報の設定

環境変数 ALIBABA_CLOUD_ACCESS_KEY_ID および ALIBABA_CLOUD_ACCESS_KEY_SECRET を、ご利用の AccessKey ペアの値に設定します。

Linux または macOS

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

Windows

ALIBABA_CLOUD_ACCESS_KEY_ID および ALIBABA_CLOUD_ACCESS_KEY_SECRET を、ご利用の AccessKey ペアの値でシステム環境変数として登録し、その後システムを再起動します。

手順 3:SDK のインストール

pip install alibabacloud_rds20140815==5.0.1

手順 4:コードの作成および実行

以下のコードを含む sample.py というファイルを作成します。この例では、DescribeDBInstances 操作を呼び出して、cn-beijing リージョンの RDS インスタンスを一覧表示します。ご利用のインスタンスが配置されているリージョンに応じて、cn-beijingap-southeast-1 などの適切なリージョンに置き換えてください。

import os
import sys
import json

from alibabacloud_rds20140815.client import Client
from alibabacloud_rds20140815.models import DescribeDBInstancesRequest
from alibabacloud_tea_openapi.models import Config


def create_client():
    """環境変数の認証情報を使用して ApsaraDB RDS クライアントを作成します。"""
    config = Config(
        access_key_id=os.environ.get("ALIBABA_CLOUD_ACCESS_KEY_ID"),
        access_key_secret=os.environ.get("ALIBABA_CLOUD_ACCESS_KEY_SECRET"),
        endpoint="rds.aliyuncs.com",
    )
    return Client(config)


def main():
    """指定されたリージョンの RDS インスタンスを照会します。"""
    client = create_client()
    request = DescribeDBInstancesRequest(region_id="cn-beijing")

    try:
        response = client.describe_dbinstances(request)
        print(json.dumps(response.body.to_map(), indent=4))
    except Exception as e:
        print(f"エラー: {e}", file=sys.stderr)
        sys.exit(1)


if __name__ == "__main__":
    main()

コードを実行します:

python sample.py

代替方法:OpenAPI ポータルからサンプルコードをダウンロード

カスタムパラメーターでサンプルコードを生成・ダウンロードするには、以下の手順を実行します。

  1. OpenAPI ポータルの DescribeDBInstances ページを開きます。

  2. パラメーター タブで、RegionIdcn-beijing またはご利用のインスタンスのリージョンに設定します。

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

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

  5. サンプルを実行します:

       python sample.py

サンプル応答

正常な応答は、以下のようになります。

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

次のステップ