缓冲池的常见任务
您可以针对 RDS for Db2 数据库创建、更改或删除缓冲池。创建、更改或删除缓冲池需要更高级别的 SYSADM 或 SYSCTRL 权限,而主用户无法获得相应的权限。因此,可改为使用 Amazon RDS 存储过程。
您也可以刷新缓冲池。
创建缓冲池
要创建 RDS for Db2 数据库的缓冲池,请调用 rdsadmin.create_bufferpool 存储过程。有关更多信息,请参阅 IBM Db2 文档中的 CREATE BUFFERPOOL 语句
创建缓冲池
-
使用 RDS for Db2 数据库实例的主用户名和主密码连接到
rdsadmin数据库。在以下示例中,用您自己的信息替换master_username和master_password。db2 "connect to rdsadmin usermaster_usernameusingmaster_password" -
通过调用
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 语句
更改缓冲池
-
使用 RDS for Db2 数据库实例的主用户名和主密码连接到
rdsadmin数据库。在以下示例中,用您自己的信息替换master_username和master_password。db2 "connect to rdsadmin usermaster_usernameusingmaster_password" -
通过调用
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 文档中的删除缓冲池
重要
确保没有为要删除的缓冲池分配任何表空间。
删除缓冲池
-
使用 RDS for Db2 数据库实例的主用户名和主密码连接到
rdsadmin数据库。在以下示例中,用您自己的信息替换master_username和master_password。db2 "connect to rdsadmin usermaster_usernameusingmaster_password" -
通过调用
rdsadmin.drop_bufferpool删除缓冲池。有关更多信息,请参阅 rdsadmin.drop_bufferpool。db2 "call rdsadmin.drop_bufferpool( 'database_name', 'buffer_pool_name')"
刷新缓冲池
您可以刷新缓冲池以强制实施检查点,以便 RDS for Db2 将页面从内存写入存储。
注意
您不需要刷新缓冲池。Db2 在提交事务之前同步写入日志。脏页可能仍在缓冲池中,但是 Db2 会将它们异步写入存储。即使系统意外关闭,当您重启数据库时,Db2 也会自动执行崩溃恢复。在崩溃恢复期间,Db2 将已提交的更改写入数据库,或者回滚对未提交事务的更改。
刷新缓冲池
-
使用 RDS for Db2 数据库实例的主用户名和主密码连接到您的 Db2 数据库。在以下示例中,用您自己的信息替换
rds_database_alias、master_username和master_password。db2 connect tords_database_aliasusermaster_usernameusingmaster_password -
刷新缓冲池。
db2 flush bufferpools all