

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用 IBM CLPPlus 連線至 Amazon RDS for Db2 資料庫執行個體
<a name="db2-connecting-with-ibm-clpplus-client"></a>

您可以使用 IBM CLPPlus 等公用程式來連線至 Amazon RDS for Db2 資料庫執行個體。此公用程式是 IBM Data Server Runtime Client 的一部分。若要從 IBM Fix Central 下載用戶端****，請參閱 IBM 支援中的[IBM資料伺服器用戶端套件 11.5 版 Mod 8 Fix Pack 0。](https://www.ibm.com/support/pages/node/6830885)

**重要**  
建議您在支援圖形化使用者介面的作業系統上執行 IBM CLPPlus，例如 macOS、Windows 或 Linux 搭配 Desktop。如果執行無周邊 Linux，請使用 switch **-nw** 搭配 CLPPlus 命令。

**Topics**
+ [安裝用戶端](#db2-connecting-ibm-clpplus-install-client)
+ [連接至資料庫執行個體](#db2-connecting-ibm-clpplus-connect-db-instance)
+ [從 DB2 存放程序擷取 CLOB 資料](#db2-connecting-ibm-clpplus-retrieve-clob-data)

## 安裝用戶端
<a name="db2-connecting-ibm-clpplus-install-client"></a>

下載適用於 Linux 的套件後，請安裝用戶端。

**注意**  
若要在 AIX 或 Windows 上安裝用戶端，請遵循相同的程序，但修改作業系統的命令。

**在 Linux 上安裝用戶端**

1. 執行 **`./db2_install`**。

1. 執行 **`clientInstallDir/instance/db2icrt -s client` {{instance\_name}}**。將 {{instance\_name}} 取代為 Linux 上的有效作業系統使用者。在 Linux 中，Db2 資料庫執行個體名稱會繫結至作業系統使用者名稱。

   此命令會在 Linux 上指定使用者的主目錄中建立 **`sqllib`** 目錄。

## 連接至資料庫執行個體
<a name="db2-connecting-ibm-clpplus-connect-db-instance"></a>

若要連線至 RDS for Db2 資料庫執行個體，您需要其 DNS 名稱和連接埠號碼。如需尋找這些項目的相關資訊，請參閱 [尋找端點](db2-finding-instance-endpoint.md)。您也需要知道您在建立 RDS for Db2 資料庫執行個體時所定義的資料庫名稱、主要使用者名稱和主要密碼。如需尋找這些項目的詳細資訊，請參閱 [建立資料庫執行個體](USER_CreateDBInstance.md#USER_CreateDBInstance.Creating)。

**使用 IBM CLPPlus 連線至 RDS for Db2 資料庫執行個體**

1. 檢閱命令語法。在下列範例中，將 {{clientDir}} 取代為安裝用戶端的位置。

   ```
   cd {{clientDir}}/bin
       ./clpplus -h
   ```

1. 設定您的 Db2 伺服器。在下列範例中，將 {{dsn\_name}}、{{database\_name}}、{{endpoint}} 和 {{port}} 取代為 RDS for Db2 資料庫執行個體的 DSN 名稱、資料庫名稱、端點和連接埠。如需詳細資訊，請參閱[尋找您的 Amazon RDS for Db2 資料庫執行個體的端點](db2-finding-instance-endpoint.md)。

   ```
   db2cli writecfg add -dsn {{dsn_name}} -database {{database_name}} -host {{endpoint}} -port {{port}} -parameter "Authentication=SERVER_ENCRYPT"
   ```

1. 連線至 RDS for Db2 資料庫執行個體。在下列範例中，將 {{master\_username}} 和 {{dsn\_name}} 取代為主要使用者名稱和 DSN 名稱。

   ```
   ./clpplus -nw {{master_username}}@{{dsn_name}}
   ```

1. Java Shell 視窗隨即開啟。輸入 RDS for Db2 資料庫執行個體的主要密碼。
**注意**  
如果 Java Shell 視窗未開啟，請執行 `./clpplus -nw` 以使用相同的命令列視窗。

   ```
   Enter password: {{*********}}
   ```

   建立連線並產生類似下列範例的輸出：

   ```
   Database Connection Information :
   ---------------------------------
   Hostname = database-1.abcdefghij.us-east-1.rds.amazonaws.com
   Database server = DB2/LINUXX8664  SQL110590
   SQL authorization ID = admin
   Local database alias = DB2DB
   Port = 50000
   ```

1. 執行查詢並檢視結果。下列範例顯示選取您建立之資料庫的 SQL 陳述式。

   ```
   SQL > select current server from sysibm.dual;
   ```

   此命令會產生類似下列範例的輸出：

   ```
   1
       --------------------
       DB2DB
       SQL>
   ```

## 從 DB2 存放程序擷取 CLOB 資料
<a name="db2-connecting-ibm-clpplus-retrieve-clob-data"></a>

rdsadmin.db2pd\_command 等預存程序會在 CLOB 資料欄中傳回結果，該資料最多可支援 2 GB 的資料。不過，DB2 CLP 會將 CLOB 輸出限制為 8 KB (8192 位元組），進而截斷超過此閾值的任何資料。若要擷取完整的輸出，請改用 CLPPLUS。

1. 取得任務 ID (task\_id) 

   ```
   db2 "select task_id, task_type, database_name, lifecycle, varchar(bson_to_json(task_input_params), 500) as task_params,
   cast(task_output as varchar(500)) as task_output, CREATED_AT, LAST_UPDATED_AT from table(rdsadmin.get_task_status(null,null,null))"
   ```

1. 執行 CLPPLUS 命令

   取得 task\_id 後，請從 Unix 提示字元執行下列命令 （以實際的數值任務 ID 取代 TASK\_ID)：

   ```
   $ (echo "select task_output from table(rdsadmin.get_task_status({{task_id}},null,null));" ; echo "disconnect;" ; echo "exit;") | clpplus -nw -silent {{masteruser}}/{{MasterUserPassword}}@{{hostname}}:{{port_num}}/rdsadmin
   ```