Tarefas comuns para grupos de buffer - Amazon Relational Database Service

Tarefas comuns para grupos de buffer

É 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.

Criar um grupo de buffers

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 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_username e master_password por suas próprias informações.

    db2 "connect to rdsadmin user master_user using master_password"
  2. Crie um grupo de buffers chamando rdsadmin.create_bufferpool. Para ter mais informações, consulte rdsadmin.create_bufferpool.

    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

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 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_username e master_password por suas próprias informações.

    db2 "connect to rdsadmin user master_username using master_password"
  2. Altere um grupo de buffers chamando rdsadmin.alter_bufferpool. Para ter mais informações, consulte rdsadmin.alter_bufferpool.

    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

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 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_username e master_password por suas próprias informações.

    db2 "connect to rdsadmin user master_user using master_password"
  2. Descarte um grupo de buffers chamando rdsadmin.drop_bufferpool. Para ter mais informações, consulte rdsadmin.drop_bufferpool.

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

Liberar os grupos de buffers

É 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_database_alias, master_username e master_password por suas próprias informações.

    db2 connect to rds_database_alias user master_username using master_password
  2. Libere os grupos de buffers.

    db2 flush bufferpools all