全部產品
Search
文件中心

ApsaraDB RDS:Python調用SDK樣本

更新時間:Dec 12, 2024

本文介紹如何使用阿里雲Python語言SDK開發包,調用RDS的DescribeDBInstances介面(查詢RDS的執行個體列表)。

查看OpenAPI文檔

在調用OpenAPI前,建議您先閱讀對應介面文檔,瞭解、學習調用該介面所需要的參數及許可權等,更多資訊請參見API概覽

建立RAM使用者並完成授權

如您已建立RAM使用者並已完成授權,可跳過此步驟。

  1. 建立RAM使用者:

    1. 訪問RAM使用者列表,單擊建立使用者

    2. 設定登入名稱稱rds-openapi-operator,選擇訪問方式使用永久 AccessKey 訪問

    3. 單擊確定,建立RAM使用者並儲存AccessKey ID與AccessKey Secret資訊。

  2. 完成授權:

    1. 訪問RAM使用者列表,單擊目標RAM使用者操作列的添加許可權

    2. 在文字框中搜尋AliyunRDS,選擇AliyunRDSReadOnlyAccess策略。

      說明

      AliyunRDSReadOnlyAccess策略擁有查詢RDS執行個體的操作許可權,您也可以按需選擇AliyunRDSFullAccess許可權(具有查詢、修改RDS執行個體的完全控制許可權)或進行自訂策略,更多資訊請參見建立自訂權限原則

    3. 單擊確認新增授權,完成授權操作。

調用OpenAPI

本文介紹阿里雲Python語言SDK調用OpenAPI,其他語言SDK的用法也類似,更多資訊請參見雲資料庫RDS SDK

準備Python環境

下載並安裝Python 3。如您已安裝Python,查看Python版本的命令樣本:python --version

配置環境變數

配置環境變數ALIBABA_CLOUD_ACCESS_KEY_IDALIBABA_CLOUD_ACCESS_KEY_SECRET

  • Linux和macOS系統:將以下命令中的<access_key_id><access_key_secret>替換為您自己的AccessKey ID和AccessKey Secret,然後在終端裝置中逐條運行。

    export ALIBABA_CLOUD_ACCESS_KEY_ID=<access_key_id>
    export ALIBABA_CLOUD_ACCESS_KEY_SECRET=<access_key_secret>
  • Windows系統:建立環境變數檔案,添加環境變數ALIBABA_CLOUD_ACCESS_KEY_IDALIBABA_CLOUD_ACCESS_KEY_SECRET,並寫入已準備好的AccessKey ID和AccessKey Secret。然後重啟Windows系統。

安裝依賴

在終端裝置中,逐條運行如下命令,安裝環境依賴。

pip install alibabacloud_rds20140815==5.0.1

下載範例程式碼

  1. 訪問DescribeDBInstances,進入該介面在OpenAPI門戶的調試地址。

  2. 參數配置頁簽,填寫需要的參數資訊,本樣本需要在RegionId(地區ID)參數中輸入cn-beijing

  3. 在右側的SDK樣本頁簽,選擇Python語言,單擊下載完整工程按鈕,下載範例程式碼包。

  4. 本地解壓並進入alibabacloud_sample目錄。

運行代碼

執行以下命令。

python sample.py

返回樣本如下。

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