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

Data Management:APIの使用例

最終更新日:Aug 21, 2024

このトピックでは、Alibaba Cloud SDK for Pythonを使用してData Management (DMS) のListInstances操作を呼び出し、インスタンスの詳細を照会する方法について説明します。

APIドキュメントの表示

API操作を呼び出す前に、対応するAPIドキュメントを読んで、必要なパラメーターとアクセス許可を理解することをお勧めします。 詳細については、「機能別操作一覧」をご参照ください。

RAMユーザーを作成し、RAMユーザーに権限を付与する

RAMユーザーを作成して認証を完了した場合は、この手順をスキップできます。

  1. RAM ユーザーを作成します。

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

    2. ログイン名パラメーターをdms-openapi-operatorに設定します。 [アクセスモード][OpenAPIアクセス] を選択します。

    3. [OK] をクリックします。 表示されるページで、作成したRAMユーザーのAccessKet IDとAccesskey secretを保存します。

  2. RAMユーザーに権限を付与します。

    1. RAMコンソールの [ユーザー] ページに移動します。 作成したRAMユーザーを見つけ、[操作] 列の [権限の追加] をクリックします。

    2. 検索ボックスにAliyundmsと入力し、検索結果でAliyunDMSFullAccessポリシーを選択します。

      説明

      AliyunDMSFullAccess: DMSを管理するための権限

      AliyunDMSReadOnlyAccess: DMSへの読み取り専用アクセス許可。

    3. [OK] をクリックします。

API操作の呼び出し

このトピックでは、Alibaba Cloud SDK for Pythonを使用してAPI操作を呼び出す方法について説明します。 他の言語のSDKを使用して、同様の方法でAPI操作を呼び出すこともできます。 詳細については、をご覧ください。 DMS SDKを使用します。

Python環境の準備

Python 3をダウンロードしてインストールします。 Pythonをインストールしている場合は、次のコマンドを実行してPythonのバージョンを表示できます: python -- version

環境変数の設定

このセクションでは、オペレーティングシステムでALIBABA_CLOUD_ACCESS_KEY_IDおよびALIBABA_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を指定してから、システムを再起動します。

依存関係のインストール

ターミナルデバイスで次のコマンドを実行して、依存関係をインストールします。

pip install alibabacloud_credentials
pip install alibabacloud_dms_enterprise20181101
pip install alibabacloud_tea_console

サンプルコードのダウンロード

  1. APIをデバッグできるOpenAPI Explorerのリストインスタンスにアクセスします。

  2. 左側の [パラメーター] タブで、リクエストパラメーターを設定します。 この例では、パラメータを指定する必要はない。

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

  4. パッケージをオンプレミスディレクトリに解凍し、alibabacloud_sampleディレクトリに移動します。

Run the code

端末デバイスで次のコードを実行します。

python sample.py

サンプル結果:

[
    LOG
] {
    "headers": {
        "date":"Wed, 19 Jul 2023 03:11:46 GMT",
        "content-type":"application/json;charset=utf-8",
        "transfer-encoding":"chunked",
        "connection":"keep-alive",
        "keep-alive":"timeout=25",
        "vary":"Accept-Encoding",
        "access-control-allow-origin":"*",
        "access-control-expose-headers":"*",
        "x-acs-request-id":"D960D80C-01CD-5FA4-AB12-7FA90BE0D35D",
        "x-acs-trace-id":"8b51178c7317cbb3e0ba9b1223eba55a"
  },
  "statusCode":200,
  "body": {
      "InstanceList": {
              "Instance": [
                      { 
                         "DataLinkName":"dbl_mysql_7",
                         "DatabasePassword":"******",
                         "DatabaseUser":"root",
                         "DbaId":54****,
                         "DbaNickName":"db_doc",
                         "DdlOnline":0,
                         "EcsRegion":"cn-hangzhou",
                         "EnvType":"product",
                         "ExportTimeout":86400,
                         "Host":"172.20.XXX.XXX",
                         "InstanceAlias":"zjq-test",
                         "InstanceId":220****,
                         "InstanceSource":"ECS_OWN",
                         "InstanceType":"mysql",
                         "OwnerIdList":{
                             "OwnerIds":[54****]
                               },
                         "OwnerNameList":{
                             "OwnerNames":["db_doc"]
                               },
                         "Port":3306,
                         "QueryTimeout":7200,
                         "SafeRuleId":829***,
                         "SellSitd":false,
                         "StandardGroup":{
                               "GroupMode":"NONE_CONTROL",
                               "GroupName":"Flexible Management"
                                },
                         "State":"NORMAL",
                         "UseDsql":"1"
                     },
                     {
                         "DataLinkName":"dbl_sls_1",
                         "DatabasePassword":"******",
                         "DatabaseUser":"LTA****",
                         "DbaId":54****,
                         "DbaNickName":"db_doc",
                         "DdlOnline":0,
                         "EcsRegion":"cn-hangzhou",
                         "EnvType":"product",
                         "ExportTimeout":86400,
                         "Host":"cn-hangzhou.log.aliyuncs.com",
                         "InstanceAlias":"DMSTEST",
                         "InstanceId":22****,
                         "InstanceSource":"FILE",
                         "InstanceType":"sls",
                         "OwnerIdList":{
                               "OwnerIds":[54****]
                                },
                          "OwnerNameList":{
                               "OwnerNames":["db_doc"]
                                },
                          "Port":0,
                          "QueryTimeout":7200,
                          "SafeRuleId":82****,
                          "SellSitd":false,
                          "Sid":"dmstest",
                          "StandardGroup":{
                               "GroupMode":"NONE_CONTROL",
                               "GroupName":"Flexible Management"
                                },
                           "State":"NORMAL",
                           "UseDsql":"1"
                     }

      }
    ]
  },
      "RequestId":"D960D80C-01CD-5FA4-AB12-7FA90BE0D35D",
      "Success":true,
      "TotalCount":2
   }
 }