

# 一般的なデータベースタスク
<a name="db2-managing-databases"></a>

RDS for Db2 DB インスタンスでデータベースを作成、削除、または復元できます。データベースを作成、削除、または復元するには、マスターユーザーが使用できない上位レベルの `SYSADM` 権限が必要です。代わりに、Amazon RDS ストアドプロシージャを使用します。

また、モニタリング、メンテナンス、データベースに関する情報の収集など、一般的な管理タスクを実行することもできます。

**Topics**
+ [データベースを作成する](#db2-creating-database)
+ [データベース設定の構成](#db2-configuring-database)
+ [データベースのパラメータの修正](#db2-modifying-db-parameters)
+ [ログの保持を設定](#db2-configuring-log-retention)
+ [ログ情報の一覧表示](#db2-listing-log-information)
+ [きめ細かなアクセス制御 (FGAC) の使用](#db2-using-fine-grained-access-control)
+ [データベースの非アクティブ化](#db2-deactivating-database)
+ [データベースのアクティブ化](#db2-activating-database)
+ [データベースの再アクティブ化](#db2-reactivating-database)
+ [データベースの削除](#db2-dropping-database)
+ [データベースのバックアップ](#db2-backing-up-database)
+ [Amazon S3 へのアーカイブログのコピー](#db2-copying-archive-logs-to-s3)
+ [データベースの復元](#db2-restoring-database)
+ [データベースのリスト化](#db2-listing-databases)
+ [データベースに関する情報の収集](#db2-collecting-info-db)
+ [データベースからのアプリケーションの強制削除](#db2-forcing-application-off-db)
+ [パフォーマンスレポートの生成](#db2-generating-performance-reports)

## データベースを作成する
<a name="db2-creating-database"></a>

RDS for Db2 DB インスタンスでデータベースを作成するには、`rdsadmin.create_database` ストアドプロシージャを呼び出します。詳細については、IBM Db2 ドキュメントの「[CREATE DATABASE コマンド](https://www.ibm.com/docs/en/db2/11.5?topic=commands-create-database)」を参照してください。

**注記**  
`db2_compatibility_vector` パラメータを変更する場合は、データベースを作成する前に変更します。詳細については、「[db2\$1compatibility\$1vector パラメータの設定](db2-known-issues-limitations.md#db2-known-issues-limitations-db2-compatibility-vector)」を参照してください。

**データベースを作成する**

1. RDS for Db2 DB インスタンスのマスターユーザー名とマスターパスワードを使用して、`rdsadmin` データベースに接続します。次の例で、*master\$1username* と *master\$1password* を自分の情報に置き換えます。

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. `rdsadmin.create_database` を呼び出してデータベースを作成します。詳細については、「[rdsadmin.create\$1database](db2-sp-managing-databases.md#db2-sp-create-database)」を参照してください。

   ```
   db2 "call rdsadmin.create_database(
       'database_name',
       'database_page_size',
       'database_code_set',
       'database_territory',
       'database_collation',
       'database_autoconfigure_str',
       'database_non-restrictive')"
   ```

1. (オプション) 作成する各データベースを、`rdsadmin.create_database` を呼び出して作成します。各 Db2 DB インスタンスには、最大 50 個のデータベースを含めることができます。詳細については、「[rdsadmin.create\$1database](db2-sp-managing-databases.md#db2-sp-create-database)」を参照してください。

   ```
   db2 "call rdsadmin.create_database('database_name')"
   ```

1. (オプション) 次のいずれかの方法を使用して、データベースが作成されたことを確認します。
   + `rdsadmin.list_databases` を呼び出します。詳細については、「[rdsadmin.list\$1databases](db2-user-defined-functions.md#db2-udf-list-databases)」を参照してください。
   + 次の SQL コマンドを実行します。

     ```
     db2 "select varchar(r.task_type,25) as task_type, r.database_name, 
         varchar(r.lifecycle,15) as lifecycle, r.created_at, r.database_name,
         varchar(bson_to_json(task_input_params),256) as input_params, 
         varchar(r.task_output,1024) as task_output 
         from table(rdsadmin.get_task_status(null,null,'create_database')) 
         as r order by created_at desc"
     ```

## データベース設定の構成
<a name="db2-configuring-database"></a>

RDS for Db2 DB インスタンスのデータベースの設定を構成するには、`rdsadmin.set_configuration` ストアドプロシージャを呼び出します。例えば、復元オペレーション中に作成するバッファまたはバッファマニピュレータの数を設定できます。

**データベース設定の構成方法**

1. RDS for Db2 DB インスタンスのマスターユーザー名とマスターパスワードを使用して、`rdsadmin` データベースに接続します。次の例で、*master\$1username* と *master\$1password* を自分の情報に置き換えます。

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. (オプション) `rdsadmin.show_configuration` を呼び出して、現在の構成設定を確認します。詳細については、「[rdsadmin.show\$1configuration](db2-sp-managing-databases.md#db2-sp-show-configuration)」を参照してください。

   ```
   db2 "call rdsadmin.show_configuration('name')"
   ```

1. `rdsadmin.set_configuration` を呼び出して、データベースの設定を構成します。詳細については、「[rdsadmin.set\$1configuration](db2-sp-managing-databases.md#db2-sp-set-configuration)」を参照してください。

   ```
   db2 "call rdsadmin.set_configuration(
       'name',  
       'value')"
   ```

## データベースのパラメータの修正
<a name="db2-modifying-db-parameters"></a>

Amazon RDS for Db2 は、データベースマネージャー設定パラメータ、レジストリ変数、データベース設定パラメータの 3 種類のパラメータを使用します。最初の 2 つのタイプはパラメータグループで管理でき、最後のタイプは [rdsadmin.update\$1db\$1param](db2-sp-managing-databases.md#db2-sp-update-db-param) ストアドプロシージャで更新できます。

**注記**  
既存のパラメータの値のみ変更できます。RDS for Db2 がサポートしていない新しいパラメータを追加することはできません。

これらのパラメータとその値を変更する方法の詳細については、「[Amazon RDS for Db2 パラメータ](db2-supported-parameters.md)」を参照してください。

## ログの保持を設定
<a name="db2-configuring-log-retention"></a>

Amazon RDS が RDS for Db2 データベースのログファイルを保持する期間を設定するには、`rdsadmin.set_archive_log_retention` ストアドプロシージャを呼び出します。

**データベースのログの保持の設定方法**

1. RDS for Db2 DB インスタンスのマスターユーザー名とマスターパスワードを使用して、`rdsadmin` データベースに接続します。次の例で、*master\$1username* と *master\$1password* を自分の情報に置き換えます。

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. (オプション) `rdsadmin.show_archive_log_retention` を呼び出して、現在の設定でログの保持を確認します。詳細については、「[rdsadmin.show\$1archive\$1log\$1retention](db2-sp-managing-databases.md#db2-sp-show-archive-log-retention)」を参照してください。

   ```
   db2 "call rdsadmin.show_archive_log_retention(
       ?,
       'database_name')"
   ```

1. `rdsadmin.set_archive_log_retention` を呼び出して、データベースのログ保持を設定します。詳細については、「[rdsadmin.set\$1archive\$1log\$1retention](db2-sp-managing-databases.md#db2-sp-set-archive-log-retention)」を参照してください。

   ```
   db2 "call rdsadmin.set_archive_log_retention(
       ?,            
       'database_name',  
       'archive_log_retention_hours')"
   ```

## ログ情報の一覧表示
<a name="db2-listing-log-information"></a>

使用された合計ストレージサイズなど、アーカイブログファイルの詳細を一覧表示するには、`rdsadmin.list_archive_log_information` ストアドプロシージャを呼び出します。

**データベースのログ情報を一覧表示するには**

1. RDS for Db2 DB インスタンスのマスターユーザー名とマスターパスワードを使用して、`rdsadmin` データベースに接続します。次の例で、*master\$1username* と *master\$1password* を自分の情報に置き換えます。

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. `rdsadmin.list_archive_log_information` を呼び出して、ログファイル情報のリストを返します。詳細については、「[rdsadmin.list\$1archive\$1log\$1information](db2-sp-managing-databases.md#db2-sp-list-archive-log-information)」を参照してください。

   ```
   db2 "call rdsadmin.list_archive_log_information(
       ?,            
       'database_name')"
   ```

## きめ細かなアクセス制御 (FGAC) の使用
<a name="db2-using-fine-grained-access-control"></a>

きめ細かなアクセス制御コマンドを使用して RDS for Db2 DB インスタンスのデータベース内のテーブルデータへのアクセスを制御するには、`rdsadmin.fgac_command` ストアドプロシージャを呼び出します。FGAC を使用して、ユーザーロールまたはデータ属性に基づいてデータへのアクセスを制限できます。例えば、データの種類や特定の医療プロバイダーに基づいて、患者の医療データへのアクセスを制限できます。

**きめ細かなアクセス制御を使用してデータベース内のテーブルデータへのアクセスを制御するには**

1. RDS for Db2 DB インスタンスのマスターユーザー名とマスターパスワードを使用して、`rdsadmin` データベースに接続します。次の例で、*master\$1username* と *master\$1password* を自分の情報に置き換えます。

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. `rdsadmin.fgac_command` を呼び出して、さまざまなきめ細かなアクセス制御コマンドを実行します。詳細については、「[rdsadmin.fgac\$1commandパラメータ](db2-sp-managing-databases.md#db2-sp-fgac-command)」を参照してください。

   ```
   db2 "call rdsadmin.fgac_command(     
       ?,
       'database_name',
       'fgac_command')"
   ```

## データベースの非アクティブ化
<a name="db2-deactivating-database"></a>

RDS for Db2 DB インスタンスのデータベースを非アクティブ化するには、`rdsadmin.deactivate_database` ストアドプロシージャを呼び出します。

デフォルトでは、Amazon RDS は RDS for Db2 DB インスタンスでデータベースを作成するときに、データベースをアクティブ化します。使用頻度の低いデータベースを非アクティブ化して、メモリリソースを節約できます。

**データベースを非アクティブ化するには**

1. RDS for Db2 DB インスタンスのマスターユーザー名とマスターパスワードを使用して、`rdsadmin` データベースに接続します。次の例で、*master\$1username* と *master\$1password* を自分の情報に置き換えます。

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. `rdsadmin.deactivate_database` を呼び出してデータベースを非アクティブ化します。詳細については、「[rdsadmin.deactivate\$1database](db2-sp-managing-databases.md#db2-sp-deactivate-database)」を参照してください。

   ```
   db2 "call rdsadmin.deactivate_database(    
       ?, 
       'database_name')"
   ```

## データベースのアクティブ化
<a name="db2-activating-database"></a>

スタンドアロン RDS for Db2 DB インスタンスのデータベースをアクティブ化するには、`rdsadmin.activate_database` ストアドプロシージャを呼び出します。

デフォルトでは、Amazon RDS は RDS for Db2 DB インスタンスでデータベースを作成するときに、データベースをアクティブ化します。使用頻度の低いデータベースを非アクティブ化してメモリリソースを節約したり、後でそのデータベースをアクティブ化したりできます。

**データベースをアクティブ化するには**

1. RDS for Db2 DB インスタンスのマスターユーザー名とマスターパスワードを使用して、`rdsadmin` データベースに接続します。次の例で、*master\$1username* と *master\$1password* を自分の情報に置き換えます。

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. `rdsadmin.activate_database` を呼び出してデータベースをアクティブ化します。詳細については、「[rdsadmin.activate\$1database](db2-sp-managing-databases.md#db2-sp-activate-database)」を参照してください。

   ```
   db2 "call rdsadmin.activate_database(
       ?, 
       'database_name')"
   ```

## データベースの再アクティブ化
<a name="db2-reactivating-database"></a>

レプリカソースの RDS for Db2 DB インスタンスのデータベースを再アクティブ化するには、`rdsadmin.reactivate_database` ストアドプロシージャを呼び出します。データベース設定を変更した後、RDS for Db2 DB インスタンスのデータベースを再アクティブ化する必要が生じる場合があります。データベースを再アクティブ化する必要があるかどうかを判断するには、データベースに接続して `db2 get db cfg show detail` を実行します。

また、このストアドプロシージャを呼び出して、データベース設定を変更した後にスタンドアロン RDS for Db2 DB インスタンスのデータベースを再アクティブ化することもできます。または、まず `rdsadmin.deactivate_database` ストアドプロシージャを呼び出し、次に `rdsadmin.activate_database` ストアドプロシージャを呼び出して、スタンドアロン RDS for Db2 DB インスタンスのデータベースを再アクティブ化することもできます。詳細については、「[データベースの非アクティブ化](#db2-deactivating-database)」および「[データベースのアクティブ化](#db2-activating-database)」を参照してください。

**データベースを再アクティブ化するには**

1. RDS for Db2 DB インスタンスのマスターユーザー名とマスターパスワードを使用して、`rdsadmin` データベースに接続します。次の例で、*master\$1username* と *master\$1password* を自分の情報に置き換えます。

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. `rdsadmin.reactivate_database` を呼び出してデータベースを再アクティブ化します。詳細については、「[rdsadmin.reactivate\$1database](db2-sp-managing-databases.md#db2-sp-reactivate-database)」を参照してください。

   ```
   db2 "call rdsadmin.reactivate_database(
       ?, 
       'database_name')"
   ```

## データベースの削除
<a name="db2-dropping-database"></a>

RDS for Db2 DB インスタンスからデータベースを削除するには、`rdsadmin.drop_database` ストアドプロシージャを呼び出します。詳細については、「IBM Db2 ドキュメント」の「[データベースの削除](https://www.ibm.com/docs/en/db2/11.5?topic=databases-dropping)」を参照してください。

**注記**  
特定の条件が満たされた場合にのみ、ストアドプロシージャを呼び出してデータベースを削除できます。詳細については、「`rdsadmin.drop_database` の [使用に関する注意事項](db2-sp-managing-databases.md#db2-sp-drop-database-usage-notes)」を参照してください。

**データベースを削除するには**

1. RDS for Db2 DB インスタンスのマスターユーザー名とマスターパスワードを使用して、`rdsadmin` データベースに接続します。次の例で、*master\$1username* と *master\$1password* を自分の情報に置き換えます。

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. `rdsadmin.drop_database` を呼び出してデータベースを削除します。詳細については、「[rdsadmin.drop\$1database](db2-sp-managing-databases.md#db2-sp-drop-database)」を参照してください。

   ```
   db2 "call rdsadmin.drop_database('database_name')"
   ```

## データベースのバックアップ
<a name="db2-backing-up-database"></a>

RDS for Db2 DB インスタンスのデータベースを Amazon S3 にバックアップするには、`rdsadmin.backup_database` ストアドプロシージャを呼び出します。詳細については、「IBM Db2 ドキュメント」の「[BACKUP DATABASE command](https://www.ibm.com/docs/en/db2/11.5.x?topic=commands-backup-database)」を参照してください。

**注記**  
このストアドプロシージャでは、Amazon S3 との統合を使用します。続行する前に、統合が設定されていることを確認してください。詳細については、「[Amazon RDS for Db2 DB インスタンスと Amazon S3 の統合](db2-s3-integration.md)」を参照してください。

**データベースをバックアップするには**

1. RDS for Db2 DB インスタンスのマスターユーザー名とマスターパスワードを使用して、`rdsadmin` データベースに接続します。次の例で、*master\$1username* と *master\$1password* を自分の情報に置き換えます。

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. S3 の VPC ゲートウェイエンドポイントを作成します。S3 用の VPC ゲートウェイエンドポイントが既にある場合は、ステップ 4 に進みます。

   RDS for Db2 DB インスタンスから Amazon S3 と対話できるようにするには、プライベートサブネットが使用する VPC と Amazon S3 ゲートウェイエンドポイントが必要です。詳細については、「[ステップ 1: これにより、Amazon S3 用の VPC ゲートウェイエンドポイントを作成する](db2-troubleshooting.md#db2-creating-endpoint)」を参照してください。

1. S3 の VPC ゲートウェイエンドポイントを確認します。詳細については、「[ステップ 2: Amazon S3 の VPC ゲートウェイエンドポイントが存在することを確認する](db2-troubleshooting.md#db2-confirming-endpoint)」を参照してください。

1. `rdsadmin.backup_database` を呼び出してデータベースをバックアップします。詳細については、「[rdsadmin.backup\$1database](db2-sp-managing-databases.md#db2-sp-backup-database)」を参照してください。

   ```
   db2 "call rdsadmin.backup_database(
       ?,
       'database_name', 
       's3_bucket_name', 
       's3_prefix', 
       'backup_type',
       'compression_option',
       'util_impact_priority', 
       'num_files',
       'parallelism',
       'num_buffers')"
   ```

1. 接続を終了します。

   ```
   terminate
   ```

1. (オプション) バックアップファイルが *s3\$1prefix/dbi\$1resource\$1id/db\$1name* で Amazon S3 バケットにアップロードされたことを確認します。ファイルが *s3\$1prefix/dbi\$1resource\$1id/db\$1name* に表示されない場合は、データベースのバックアップのステータスを確認して問題を特定します。詳細については、「[rdsadmin.get\$1task\$1status](db2-user-defined-functions.md#db2-udf-get-task-status)」を参照してください。特定された問題を解決できない場合は、[AWS サポート](https://aws.amazon.com/premiumsupport/)にお問い合わせください。

1. (オプション) Amazon S3 へのバックアップが完了したら、バックアップを RDS for Db2 DB インスタンスまたはローカルサーバーなどの別の場所に復元できます。RDS for Db2 DB インスタンスに復元する方法については、「[データベースの復元](#db2-restoring-database)」を参照してください。

## Amazon S3 へのアーカイブログのコピー
<a name="db2-copying-archive-logs-to-s3"></a>

Db2 アーカイブログを RDS for Db2 DB インスタンスから Amazon S3 にコピーできるようになりました。`rdsadmin.backup_database` を使用して作成されたネイティブバックアップと組み合わせたアーカイブログは、別の RDS for Db2 インスタンスまたは EC2 データベースの特定の時点にデータベースを復元およびロールフォワードするために使用できます。

 この機能を設定する前に、ストアドプロシージャ `rdsadmin.backup_database` を使用して RDS for Db2 データベースを設定します。

この機能は RDS for Db2 DB インスタンスレベルで動作しますが、アーカイブログのコピーはデータベースごとに有効または無効にできます。

**Amazon S3 へのアーカイブログのコピーを設定するには**

1. RDS for Db2 DB インスタンスのマスターユーザー名とマスターパスワードを使用して、`rdsadmin` データベースに接続します。次の例で、*master\$1username* と *master\$1password* を自分の情報に置き換えます。

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. [rdsadmin.set\$1configuration](db2-sp-managing-databases.md#db2-sp-set-configuration) を呼び出してアーカイブログの S3 へのバックアップを設定します。

   ```
   db2 "call rdsadmin.set_configuration(
       'name',
       'value')"
   ```

    **例:** 

   ```
   db2 "call rdsadmin.set_configuration('ARCHIVE_LOG_COPY_TARGET_S3_ARN', 'arn:aws:s3:::my_rds_db2_backups/archive-log-copy/')"
   ```

1. `rdsadmin.enable_archive_log_copy` を呼び出して、データベースのアーカイブログのコピーを有効にします。*database\$1name* をデータベースの名前に置き換えます。

   ```
   db2 "call rdsadmin.enable_archive_log_copy(?, 'database_name')"
   ```

1. 同様に、データベースのアーカイブログのコピーを無効にするには、`rdsadmin.disable_archive_log_copy` を呼び出します。

   ```
   db2 "call rdsadmin.disable_archive_log_copy(?, 'database_name')"
   ```

1. `rdsadmin.list_databases` を呼び出して、アーカイブログのコピーステータスを確認します。

   ```
   db2 "select * from table(rdsadmin.list_databases())"
   ```

    **サンプル出力。**

   ```
   DATABASE_NAME   CREATE_TIME                DATABASE_UNIQUE_ID                                 ARCHIVE_LOG_RETENTION_HOURS ARCHIVE_LOG_COPY ARCHIVE_LOG_LAST_UPLOAD_FILE ARCHIVE_LOG_LAST_UPLOAD_FILE_TIME ARCHIVE_LOG_COPY_STATUS
   --------------- -------------------------- -------------------------------------------------- --------------------------- ---------------- ---------------------------- --------------------------------- ------------------------------
   RDSADMIN        2026-01-06-02.03.42.569069 RDSADMIN                                                                     0 DISABLED         -                            -                                 -
   FOO             2026-01-06-02.13.42.885650 F0D81C7E-7213-4565-B376-4F33FCF420E3                                         7 ENABLED          S0006536.LOG                 2026-01-28-19.15.10.000000        UPLOADING
   CODEP           2026-01-14-19.42.42.508476 106EEF95-6E30-4FFF-85AE-B044352DF095                                         0 DISABLED         -                            -                                 -
   ...
   ```

## データベースの復元
<a name="db2-restoring-database"></a>

Amazon S3 バケットのデータベースを RDS for Db2 DB インスタンスに移動するには、`rdsadmin.restore_database` ストアドプロシージャを呼び出します。詳細については、IBM Db2 ドキュメントの「[RESTORE DATABASE コマンド](https://www.ibm.com/docs/en/db2/11.5?topic=commands-restore-database)」を参照してください。

**データベースを復元するには**

1. RDS for Db2 DB インスタンスのマスターユーザー名とマスターパスワードを使用して、`rdsadmin` データベースに接続します。次の例で、*master\$1username* と *master\$1password* を自分の情報に置き換えます。

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. (オプション) `rdsadmin.show_configuration` を呼び出して復元オペレーションを最適化するには、現在の設定を確認します。詳細については、「[rdsadmin.show\$1configuration](db2-sp-managing-databases.md#db2-sp-show-configuration)」を参照してください。

   ```
   db2 "call rdsadmin.show_configuration('name')"
   ```

1. `rdsadmin.set_configuration` を呼び出して、復元オペレーションを最適化するように設定します。これらの値を明示的に設定すると、大量のデータを含むデータベースを復元する際のパフォーマンスを向上させることができます。詳細については、「[rdsadmin.set\$1configuration](db2-sp-managing-databases.md#db2-sp-set-configuration)」を参照してください。

   ```
   db2 "call rdsadmin.set_configuration(
       'name',  
       'value')"
   ```

1. `rdsadmin.restore_database` を呼び出してデータベースを復元します。詳細については、「[rdsadmin.restore\$1database](db2-sp-managing-databases.md#db2-sp-restore-database)」を参照してください。

   ```
   db2 "call rdsadmin.restore_database(
       ?,
       'database_name', 
       's3_bucket_name', 
       's3_prefix', 
       restore_timestamp, 
       'backup_type')"
   ```

1. (オプション) データベースが復元されたことを、`rdsadmin.list_databases` を呼び出して確認し、そのデータベースがリストにあるかをチェックします。詳細については、「[rdsadmin.list\$1databases](db2-user-defined-functions.md#db2-udf-list-databases)」を参照してください。

1. `rdsadmin.rollforward_database` を呼び出して、データベースをオンラインにし、追加のトランザクションログを適用します。詳細については、「[rdsadmin.rollforward\$1database](db2-sp-managing-databases.md#db2-sp-rollforward-database)」を参照してください。

   ```
   db2 "call rdsadmin.rollforward_database(
       ?,
       'database_name',
       's3_bucket_name', 
       s3_prefix, 
       'rollforward_to_option', 
       'complete_rollforward')"
   ```

1. (オプション) [rdsadmin.rollforward\$1status](db2-sp-managing-databases.md#db2-sp-rollforward-status) ストアドプロシージャを呼び出して、`rdsadmin.rollforward_database` ストアドプロシージャのステータスを確認します。

1. 前のステップで `complete_rollforward` を `FALSE` に設定した場合は、`rdsadmin.complete_rollforward` を呼び出してデータベースをオンラインに戻す必要があります。詳細については、「[rdsadmin.complete\$1rollforward](db2-sp-managing-databases.md#db2-sp-complete-rollforward)」を参照してください。

   ```
   db2 "call rdsadmin.complete_rollforward(
       ?,
       'database_name')"
   ```

1. (オプション) [rdsadmin.rollforward\$1status](db2-sp-managing-databases.md#db2-sp-rollforward-status) ストアドプロシージャを呼び出して、`rdsadmin.complete_rollforward` ストアドプロシージャのステータスを確認します。

## データベースのリスト化
<a name="db2-listing-databases"></a>

Amazon RDS for Db2 で実行中のすべてのデータベースを一覧表示するには、`rdsadmin.list_databases` ユーザー定義関数を呼び出します。

**データベースを一覧表示するには**

1. RDS for Db2 DB インスタンスのマスターユーザー名とマスターパスワードを使用して、`rdsadmin` データベースに接続します。次の例で、*master\$1username* と *master\$1password* を自分の情報に置き換えます。

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. `rdsadmin.list_databases` を呼び出してデータベースを一覧表示します。詳細については、「[rdsadmin.list\$1databases](db2-user-defined-functions.md#db2-udf-list-databases)」を参照してください。

   ```
   db2 "select * from table(rdsadmin.list_databases())"
   ```

## データベースに関する情報の収集
<a name="db2-collecting-info-db"></a>

RDS for Db2 DB インスタンスのデータベースに関する情報を収集するには、`rdsadmin.db2pd_command` ストアドプロシージャを呼び出します。この情報は、データベースのモニタリングや問題のトラブルシューティングに役立ちます。

**データベースに関する情報を収集するには**

1. RDS for Db2 DB インスタンスのマスターユーザー名とマスターパスワードを使用して、`rdsadmin` データベースに接続します。次の例で、*master\$1username* と *master\$1password* を自分の情報に置き換えます。

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. `rdsadmin.db2pd_command` を呼び出して、データベースに関する情報を収集します。詳細については、「[rdsadmin.db2pd\$1command](db2-sp-managing-databases.md#db2-sp-db2pd-command)」を参照してください。

   ```
   db2 "call rdsadmin.db2pd_command('db2pd_cmd')"
   ```

## データベースからのアプリケーションの強制削除
<a name="db2-forcing-application-off-db"></a>

アプリケーションを RDS for Db2 DB インスタンスのデータベースから強制的にオフにするには、`rdsadmin.force_application` ストアドプロシージャを呼び出します。データベースのメンテナンスを実行する前に、アプリケーションをデータベースから強制的にオフにします。

**データベースからアプリケーションを強制的に削除するには**

1. RDS for Db2 DB インスタンスのマスターユーザー名とマスターパスワードを使用して、`rdsadmin` データベースに接続します。次の例で、*master\$1username* と *master\$1password* を自分の情報に置き換えます。

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. `rdsadmin.force_application` を呼び出して、アプリケーションをデータベースから強制的に削除します。詳細については、「[rdsadmin.force\$1application](db2-sp-managing-databases.md#db2-sp-force-application)」を参照してください。

   ```
   db2 "call rdsadmin.force_application(     
       ?,
       'applications')"
   ```

## パフォーマンスレポートの生成
<a name="db2-generating-performance-reports"></a>

プロシージャまたはスクリプトを使用して、パフォーマンスレポートを生成できます。手順の使用方法については、 IBM Db2 ドキュメントの「[DBSUMMARY procedure ‐ Generate a summary report of system and application performance metrics](https://www.ibm.com/docs/en/db2/11.5?topic=mm-dbsummary-procedure-generate-summary-report-system-application-performance-metrics)」を参照してください。

Db2 では `~sqllib/sample/perf` ディレクトリに `db2mon.sh` ファイルを含めます。スクリプトを実行すると、低コストで広範な SQL メトリクスレポートが生成されます。`db2mon.sh` ファイルおよび関連するスクリプトファイルをダウンロードするには、IBM db2-samples GitHubリポジトリの [https://github.com/IBM/db2-samples/tree/master/perf](https://github.com/IBM/db2-samples/tree/master/perf) ディレクトリを参照してください。

**スクリプトを使用してパフォーマンスレポートを生成するには**

1. RDS for Db2 DB インスタンスのマスターユーザー名とマスターパスワードを使用して、Db2 データベースに接続します。次の例で、*master\$1username* と *master\$1password* を自分の情報に置き換えます。

   ```
   db2 connect to rdsadmin user master_username using master_password
   ```

1. `rdsadmin.create_bufferpool` を呼び出して、ページサイズが 4096 の `db2monbp` という名前のバッファプールを作成します。詳細については、「[rdsadmin.create\$1bufferpool](db2-sp-managing-buffer-pools.md#db2-sp-create-buffer-pool)」を参照してください。

   ```
   db2 "call rdsadmin.create_bufferpool('database_name','db2monbp',4096)"
   ```

1. `rdsadmin.create_tablespace` を呼び出して、`db2monbp` バッファプールを使用する `db2montmptbsp` という名前の一時テーブルスペースを作成します。詳細については、「[rdsadmin.create\$1tablespace](db2-sp-managing-tablespaces.md#db2-sp-create-tablespace)」を参照してください。

   ```
   db2 "call rdsadmin.create_tablespace('database_name',\
       'db2montmptbsp','db2monbp',4096,1000,100,'T')"
   ```

1. `db2mon.sh` スクリプトを開き、データベースへの接続に関する行を変更します。

   1. 次の行を削除します。

      ```
      db2 -v connect to $dbName
      ```

   1. 前のステップの行を次の行に置き換えます。次の例では、*master\$1username* と *master\$1password* を RDS for Db2 DB インスタンスのマスターユーザー名とマスターパスワードに置き換えます。

      ```
      db2 -v connect to $dbName user master_username using master_password
      ```

   1. 次の行を削除します。

      ```
      db2 -v create bufferpool db2monbp
      
      db2 -v create user temporary tablespace db2montmptbsp bufferpool db2monbp
      
      db2 -v drop tablespace db2montmptbsp
      
      db2 -v drop bufferpool db2monbp
      ```

1. `db2mon.sh` スクリプトを実行して、指定した間隔でレポートを出力します。次の例では、*absolute\$1path* をスクリプトファイルへの完全なパスに、*rds\$1database\$1alias* をデータベースの名前に、*seconds* をレポート生成間の秒数 (0～3600) に置き換えます。

   ```
   absolute_path/db2mon.sh rds_database_alias seconds | tee -a db2mon.out
   ```

   **例**

   次の例は、スクリプトファイルが `perf` ディレクトリの下の `home` ディレクトリにあることを示しています。

   ```
   /home/db2inst1/sqllib/samples/perf/db2mon.sh rds_database_alias seconds | tee -a db2mon.out
   ```

1. `db2mon.sh` ファイル用に作成されたバッファプールとテーブルスペースを削除します。次の例では、*master\$1username* と *master\$1password* を RDS for Db2 DB インスタンスのマスターユーザー名とマスターパスワードに置き換えます。*database\$1name* をデータベースの名前に置き換えます。詳細については、「[rdsadmin.drop\$1tablespace](db2-sp-managing-tablespaces.md#db2-sp-drop-tablespace)」および「[rdsadmin.drop\$1bufferpool](db2-sp-managing-buffer-pools.md#db2-sp-drop-buffer-pool)」を参照してください。

   ```
   db2 connect to rdsadmin user master_username using master_password
   
   db2 "call rdsadmin.drop_tablespace('database_name','db2montmptbsp')"
   
   db2 "call rdsadmin.drop_bufferpool('database_name','db2monbp')"
   ```