缓冲池的常见任务 - Amazon Relational Database Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

缓冲池的常见任务

您可以针对 RDS for Db2 数据库创建、更改或删除缓冲池。创建、更改或删除缓冲池需要更高级别的 SYSADMSYSCTRL 权限,而主用户无法获得相应的权限。而应使用 Amazon RDS 存储过程。

您也可以刷新缓冲池。

创建缓冲池

要创建 RDS for Db2 数据库的缓冲池,请调用 rdsadmin.create_bufferpool 存储过程。有关更多信息,请参阅 IBM Db2 文档中的 CREATE BUFFERPOOL 语句

创建缓冲池
  1. 使用 RDS for Db2 数据库实例的主用户名和主密码连接到 rdsadmin 数据库。在以下示例中,用您自己的信息替换 master_usernamemaster_password

    db2 "connect to rdsadmin user master_user using master_password"
  2. 通过调用 rdsadmin.create_bufferpool 创建缓冲池。有关更多信息,请参阅 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)"

更改缓冲池

要更改 RDS for Db2 数据库的缓冲池,请调用 rdsadmin.alter_bufferpool 存储过程。有关更多信息,请参阅 IBM Db2 文档中的 ALTER BUFFERPOOL 语句

更改缓冲池
  1. 使用 RDS for Db2 数据库实例的主用户名和主密码连接到 rdsadmin 数据库。在以下示例中,用您自己的信息替换 master_usernamemaster_password

    db2 "connect to rdsadmin user master_username using master_password"
  2. 通过调用 rdsadmin.alter_bufferpool 更改缓冲池。有关更多信息,请参阅 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)"

删除缓冲池

要删除 RDS for Db2 数据库的缓冲池,请调用 rdsadmin.drop_bufferpool 存储过程。有关更多信息,请参阅 IBM Db2 文档中的删除缓冲池

重要

确保没有为要删除的缓冲池分配任何表空间。

删除缓冲池
  1. 使用 RDS for Db2 数据库实例的主用户名和主密码连接到 rdsadmin 数据库。在以下示例中,用您自己的信息替换 master_usernamemaster_password

    db2 "connect to rdsadmin user master_user using master_password"
  2. 通过调用 rdsadmin.drop_bufferpool 删除缓冲池。有关更多信息,请参阅 rdsadmin.drop_bufferpool

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

刷新缓冲池

您可以刷新缓冲池以强制实施检查点,以便 RDS for Db2 将页面从内存写入存储。

注意

您不需要刷新缓冲池。Db2 在提交事务之前同步写入日志。脏页可能仍在缓冲池中,但是 Db2 会将它们异步写入存储。即使系统意外关闭,当您重启数据库时,Db2 也会自动执行崩溃恢复。在崩溃恢复期间,Db2 将已提交的更改写入数据库,或者回滚对未提交事务的更改。

刷新缓冲池
  1. 使用 RDS for Db2 数据库实例的主用户名和主密码连接到您的 Db2 数据库。在以下示例中,用您自己的信息替换 rds_database_aliasmaster_usernamemaster_password

    db2 connect to rds_database_alias user master_username using master_password
  2. 刷新缓冲池。

    db2 flush bufferpools all