

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

# RDS for Db2 緩衝集區的預存程序
<a name="db2-sp-managing-buffer-pools"></a>

本主題中所述的內建預存程序會管理 Amazon RDS for Db2 資料庫的緩衝集區。若要執行這些程序，主要使用者必須先連線到 `rdsadmin` 資料庫。

這些預存程序用於各種任務。這不是完整清單。
+ [緩衝集區的常見任務](db2-managing-buffer-pools.md)
+ [產生效能報告](db2-managing-databases.md#db2-generating-performance-reports)
+ [使用 db2look 複製資料庫中繼資料](db2-native-db2-tools-db2look.md)
+ [為 IBM Db2 Data Management Console 建立儲存庫資料庫](db2-connecting-with-ibm-data-management-console.md#db2-creating-repo-db-monitoring-dmc)

如需語法、參數、用量備註和範例的相關資訊，請參閱下列內建預存程序。

**Topics**
+ [rdsadmin.create\$1bufferpool](#db2-sp-create-buffer-pool)
+ [rdsadmin.alter\$1bufferpool](#db2-sp-alter-buffer-pool)
+ [rdsadmin.drop\$1bufferpool](#db2-sp-drop-buffer-pool)

## rdsadmin.create\$1bufferpool
<a name="db2-sp-create-buffer-pool"></a>

建立緩衝集區。

### 語法
<a name="db2-sp-create-buffer-pool-syntax"></a>

```
db2 "call rdsadmin.create_bufferpool(
    'database_name', 
    'buffer_pool_name', 
    buffer_pool_size, 
    'immediate', 
    'automatic', 
    page_size, 
    number_block_pages, 
    block_size)"
```

### Parameters
<a name="db2-sp-create-buffer-pool-parameters"></a>

下列是必要參數：

*database\$1name*  
將在其中執行命令之資料庫的名稱。資料類型為 `varchar`。

*buffer\$1pool\$1name*  
要建立的緩衝集區之名稱。資料類型為 `varchar`。

下列是選用參數：

*buffer\$1pool\$1size*  
緩衝集區的大小，以頁數表示。資料類型為 `integer`。預設值為 `-1`。

*immediate*  
指定命令是否立即執行。資料類型為 `char`。預設值為 `Y`。

*automatic*  
指定是否將緩衝集區設定為自動。資料類型為 `char`。預設值為 `Y`。

*page\$1size*  
緩衝集區的頁面大小。資料類型為 `integer`。有效值：`4096`、`8192`、`16384`、`32768`。預設值為 `8192`。

*number\$1block\$1pages*  
緩衝集區中的區塊頁面數目。資料類型為 `integer`。預設值為 `0`。

*block\$1size*  
區塊頁面的區塊大小。資料類型為 `integer`。有效值：`2` 到 `256`。預設值為 `32`。

### 使用須知
<a name="db2-sp-create-buffer-pool-usage-notes"></a>

如需檢查建立緩衝集區狀態的資訊，請參閱 [rdsadmin.get\$1task\$1status](db2-user-defined-functions.md#db2-udf-get-task-status)。

### 範例
<a name="db2-sp-create-buffer-pool-examples"></a>

**範例 1：使用預設參數建立緩衝集區**

下列範例會為具有預設參數名為 `TESTDB` 的資料庫建立名為 `BP8` 的緩衝集區，因此緩衝集區會使用 8 KB 的頁面大小。

```
db2 "call rdsadmin.create_bufferpool(
    'TESTDB', 
    'BP8')"
```

**範例 2：建立緩衝集區以使用自動配置立即執行**

下列範例會為名為 `TESTDB` 的資料庫建立名為 `BP16` 的緩衝集區，該資料庫使用 16 KB 頁面大小，初始頁面計數為 1,000，並設定為自動。Db2 會立即執行命令。如果您使用的初始頁面計數為 -1，則 Db2 將使用頁面的自動配置。

```
db2 "call rdsadmin.create_bufferpool(
    'TESTDB', 
    'BP16', 
    1000, 
    'Y', 
    'Y', 
    16384)"
```

**範例 3：建立緩衝集區以使用區塊頁面立即執行**

下列範例會為名為 `TESTDB` 的資料庫建立名為 `BP16` 的緩衝集區。此緩衝集區具有 16 KB 的頁面大小，初始頁面計數為 10,000。Db2 使用區塊大小為 512 的 500 個區塊頁面立即執行命令。

```
db2 "call rdsadmin.create_bufferpool(
    'TESTDB', 
    'BP16',
    10000, 
    'Y', 
    'Y', 
    16384, 
    500, 
    512)"
```

## rdsadmin.alter\$1bufferpool
<a name="db2-sp-alter-buffer-pool"></a>

修改緩衝集區。

### 語法
<a name="db2-sp-alter-buffer-pool-syntax"></a>

```
db2 "call rdsadmin.alter_bufferpool(
    'database_name', 
    'buffer_pool_name', 
    buffer_pool_size, 
    'immediate', 
    'automatic', 
    change_number_blocks, 
    number_block_pages, 
    block_size)"
```

### Parameters
<a name="db2-sp-alter-buffer-pool-parameters"></a>

下列是必要參數：

*database\$1name*  
將在其中執行命令之資料庫的名稱。資料類型為 `varchar`。

*buffer\$1pool\$1name*  
要更改的緩衝集區之名稱。資料類型為 `varchar`。

*buffer\$1pool\$1size*  
緩衝集區的大小，以頁數表示。資料類型為 `integer`。

下列是選用參數：

*immediate*  
指定命令是否立即執行。資料類型為 `char`。預設值為 `Y`。

*automatic*  
指定是否將緩衝集區設定為自動。資料類型為 `char`。預設值為 `N`。

*change\$1number\$1blocks*  
指定緩衝集區中的區塊頁面數目是否有變更。資料類型為 `char`。預設值為 `N`。

*number\$1block\$1pages*  
緩衝集區中的區塊頁面數目。資料類型為 `integer`。預設值為 `0`。

*block\$1size*  
區塊頁面的區塊大小。資料類型為 `integer`。有效值：`2` 到 `256`。預設值為 `32`。

### 使用須知
<a name="db2-sp-alter-buffer-pool-usage-notes"></a>

如需檢查更改緩衝集區狀態的資訊，請參閱 [rdsadmin.get\$1task\$1status](db2-user-defined-functions.md#db2-udf-get-task-status)。

### 範例
<a name="db2-sp-alter-buffer-pool-examples"></a>

下列範例會將名為 `TESTDB` 的資料庫名為 `BP16` 的緩衝集區更改為非自動，並將大小變更為 10,000 頁。Db2 會立即執行此命令。

```
db2 "call rdsadmin.alter_bufferpool(
    'TESTDB',
    'BP16', 
    10000, 
    'Y', 
    'N')"
```

## rdsadmin.drop\$1bufferpool
<a name="db2-sp-drop-buffer-pool"></a>

捨棄緩衝集區。

### 語法
<a name="db2-sp-drop-buffer-pool-syntax"></a>

```
db2 "call rdsadmin.drop_bufferpool(
    'database_name', 
    'buffer_pool_name'"
```

### Parameters
<a name="db2-sp-drop-buffer-pool-parameters"></a>

下列是必要參數：

*database\$1name*  
緩衝集區所屬資料庫的名稱。資料類型為 `varchar`。

*buffer\$1pool\$1name*  
要捨棄的緩衝集區之名稱。資料類型為 `varchar`。

### 使用須知
<a name="db2-sp-drop-buffer-pool-usage-notes"></a>

如需檢查捨棄緩衝集區狀態的資訊，請參閱 [rdsadmin.get\$1task\$1status](db2-user-defined-functions.md#db2-udf-get-task-status)。

### 範例
<a name="db2-sp-drop-buffer-pool-examples"></a>

下列範例會為名為 `TESTDB` 的資料庫捨棄名為 `BP16` 的緩衝集區。

```
db2 "call rdsadmin.drop_bufferpool(
    'TESTDB',
    'BP16')"
```