WEB开发网
开发学院数据库DB2 DB2 9.5中多线程架构的工作原理 阅读

DB2 9.5中多线程架构的工作原理

 2010-02-18 15:00:57 来源:WEB开发网   
核心提示:不能永久地为不同的数据库分区设置不同的 INSTANCE_MEMORY 值,对于一个 DB2 Express 许可,DB2 9.5中多线程架构的工作原理(5),INSTANCE_MEMORY 的上限被进一步限制为至多 4GB 内存(1,048,576 * 4KB 页),DB2 Workgroup 许可被限制为至多 16

不能永久地为不同的数据库分区设置不同的 INSTANCE_MEMORY 值。对于一个 DB2 Express 许可,INSTANCE_MEMORY 的上限被进一步限制为至多 4GB 内存(1,048,576 * 4KB 页)。DB2 Workgroup 许可被限制为至多 16GB 内存(4,194,304 * 4KB 页)。如果尝试将 INSTANCE_MEMORY 配置参数更新为大于这些限制的值,那么会遭到失败,并收到 SQL5130N 返回码,指定该许可允许的限制范围。其他许可类型没有附加的限制。不能将 INSTANCE_MEMORY 设为大于 RAM。

解决 DPF 备份和恢复问题

每个分区获得一个不同的时间戳

在之前的 DB2 版本上:

$ db2_all " db2 backup db test"

Backup successful. The timestamp for this backup image is : 20080304124529
eva88: db2 backup db test completed ok

Backup successful. The timestamp for this backup image is : 20080304124544
eva88: db2 backup db test completed ok

Backup successful. The timestamp for this backup image is : 20080304124554
eva88: db2 backup db test completed ok

然而,在 DB2 9.5 中,BACKUP 命令得到增强,现在可以接收一组数据库分区,并提供一个单独的系统视图。

$ db2 backup db test on all dbpartitionnums
Part  Result
----  -------------------------------
0000  DB20000I  The BACKUP DATABASE command completed successfully.
0010  DB20000I  The BACKUP DATABASE command completed successfully.

Backup successful. The timestamp for this backup image is : 20080304135942

如何确定前滚期间需要什么日志文件?

$ db2 rollforward db test to 2008-03-01 and stop
SQL1275N  The stoptime passed to roll-forward must be greater than or equal to 
"2008-03-04-12.45.54.000000 UTC", because  database "TEST" on node(s) "0,1" 
contains information later than the specified time.

$ db2 rollforward db test to 2008-03-04-12.45.54.000000 and stop
DB20000I  The ROLLFORWARD command completed successfully.

以上例子表明,在前滚期间,如果命令中指定的时间点(PIT)过早,那么会收到错误消息(SQL1275N)。该错误消息告诉您正确的 PIT。可以考虑使用 BACKUP 和 INCLUDE 日志。但是,在 DPF 数据库中,BACKUP 和 INCLUDE 日志会生成错误消息(SQL2032N)。因此,不能使用该方法。

然而,在 DB2 9.5 中,可以使用 “TO END OF BACKUP” 子句和 ROLLFORWARD 命令将一个分区数据库中的所有分区前滚到最小恢复时间。这个最小恢复时间是前滚期间数据库处于一致状态(数据库编目中列出的对象与磁盘上物理存在的对象相匹配)的最早时间点。手动地确定前滚一个数据库的正确时间点比较困难,对于分区数据库更是如此。而 “END OF BACKUP” 选项可以使这件事变得容易起来。

$ db2 rollforward db test to end of backup and stop
DB20000I  The ROLLFORWARD command completed successfully

关于用户限制,什么是重要的?

用户限制(User limits)设置或显示一个 shell 在资源使用方面的不同限制。它是一个很好的实践,可用于设置一些限制,防止诸如一个有错误的 shell 脚本开始无限制的自我复制之类的问题,或者防止系统上的用户启动永远运行的进程。但是,将它设置成什么呢?下面是对于资源的不同限制的一些考虑:

在 db2 启动时,数据和 nofile 是无限制的。

栈限制不重要,因为 DB2 创建它自己的栈空间(AGENT_STACK_SZ dbm cfg)

在 64 位 UNIX 上
Default : 4 MB
Minimum : 1 MB
Maximum : 128 MB

在 32 位 LINUX 上
Default : 1MB
Minimum : 64 KB
Maximum : 4MB

上一页  1 2 3 4 5 6  下一页

Tags:DB 线程 架构

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接