

# Tarefas comuns para grupos de buffer
<a name="db2-managing-buffer-pools"></a>

É possível criar, alterar ou descartar grupos de buffers para um banco de dados do RDS para Db2. Criar, alterar ou descartar grupos de buffers requer a autoridade `SYSADM` ou `SYSCTRL` de nível mais alto, que não está disponível para o usuário principal. Em vez disso, use procedimentos armazenados do Amazon RDS.

Também é possível limpar grupos de buffers.

**Topics**
+ [Criar um grupo de buffers](#db2-creating-buffer-pool)
+ [Alterar um grupo de buffers](#db2-altering-buffer-pool)
+ [Descartar um grupo de buffers](#db2-dropping-buffer-pool)
+ [Liberar os grupos de buffers](#db2-flushing-buffer-pools)

## Criar um grupo de buffers
<a name="db2-creating-buffer-pool"></a>

Para criar um grupo de buffers para o banco de dados do RDS para Db2, chame o procedimento armazenado `rdsadmin.create_bufferpool`. Para ter mais informações, consulte [Declaração CREATE BUFFERPOOL](https://www.ibm.com/docs/en/db2/11.5?topic=statements-create-bufferpool) na documentação do IBM Db2.

**Como criar um grupo de buffers**

1. Conecte-se ao banco de dados `rdsadmin` usando o nome de usuário principal e a senha mestra da instância de banco de dados do RDS para Db2. No exemplo a seguir, substitua *master\$1username* e *master\$1password* por suas próprias informações.

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

1. Crie um grupo de buffers chamando `rdsadmin.create_bufferpool`. Para obter mais informações, consulte [rdsadmin.create\$1bufferpool](db2-sp-managing-buffer-pools.md#db2-sp-create-buffer-pool).

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

## Alterar um grupo de buffers
<a name="db2-altering-buffer-pool"></a>

Para alterar um grupo de buffers para o banco de dados do RDS para Db2, chame o procedimento armazenado `rdsadmin.alter_bufferpool`. Para ter mais informações, consulte [Declaração ALTER BUFFERPOOL](https://www.ibm.com/docs/en/db2/11.5?topic=statements-alter-bufferpool) na documentação do IBM Db2.

**Como alterar um grupo de buffers**

1. Conecte-se ao banco de dados `rdsadmin` usando o nome de usuário principal e a senha mestra da instância de banco de dados do RDS para Db2. No exemplo a seguir, substitua *master\$1username* e *master\$1password* por suas próprias informações.

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

1. Altere um grupo de buffers chamando `rdsadmin.alter_bufferpool`. Para obter mais informações, consulte [rdsadmin.alter\$1bufferpool](db2-sp-managing-buffer-pools.md#db2-sp-alter-buffer-pool).

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

## Descartar um grupo de buffers
<a name="db2-dropping-buffer-pool"></a>

Para descartar um grupo de buffers para o banco de dados do RDS para Db2, chame o procedimento armazenado `rdsadmin.drop_bufferpool`. Para ter mais informações, consulte [Dropping buffer pools](https://www.ibm.com/docs/en/db2/11.5?topic=pools-dropping-buffer) na documentação do IBM Db2.

**Importante**  
Garanta que nenhum espaço de tabela esteja atribuído ao grupo de buffers que você deseja descartar. 

**Como descartar um grupo de buffers**

1. Conecte-se ao banco de dados `rdsadmin` usando o nome de usuário principal e a senha mestra da instância de banco de dados do RDS para Db2. No exemplo a seguir, substitua *master\$1username* e *master\$1password* por suas próprias informações.

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

1. Descarte um grupo de buffers chamando `rdsadmin.drop_bufferpool`. Para obter mais informações, consulte [rdsadmin.drop\$1bufferpool](db2-sp-managing-buffer-pools.md#db2-sp-drop-buffer-pool).

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

## Liberar os grupos de buffers
<a name="db2-flushing-buffer-pools"></a>

É possível liberar os grupos de buffers para forçar um ponto de verificação para que o RDS para Db2 grave páginas da memória para o armazenamento. 

**nota**  
Não é necessário liberar os grupos de buffers. O Db2 grava logs de forma síncrona antes de confirmar as transações. As páginas sujas ainda podem estar em um grupo de buffers, mas o Db2 as grava no armazenamento de forma assíncrona. Mesmo que o sistema seja desligado inesperadamente, ao reiniciar o banco de dados, o Db2 executa automaticamente a recuperação de falhas. Durante a recuperação de falhas, o Db2 grava as alterações confirmadas no banco de dados ou as reverte para transações não confirmadas. 

**Como liberar os grupos de buffers**

1. Conecte-se ao banco de dados Db2 usando o nome de usuário principal e a senha principal da instância de banco de dados do RDS para Db2. No exemplo a seguir, substitua *rds\$1database\$1alias*, *master\$1username* e *master\$1password* por suas próprias informações.

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

1. Libere os grupos de buffers.

   ```
   db2 flush bufferpools all
   ```