返回首页

gbase数据、南大通用产品文档:GBase8sLOW_MEMORY_RESERVE 配置参数

更新日期:2024年09月11日

当关键活动需要而服务器的空闲内存有限时,使用 LOW_MEMORY_RESERVE 配置参数来保留
使用特定的内存量。
如果您通过将其设定为一个特定的 KB 值来启用新的 LOW_MEMORY_RESERVE 配置参数,则
即使您收到内存用尽的警告,诸如回滚活动这样的关键活动仍可完成。
onconfig.std 值
LOW_MEMORY_RESERVE 0

0 或 128 - 2147483648,虽然最大值不可高于 SHMVIRTSIZE 配置参数值的 20%
单位
KB
生效
编辑 onconfig 文件并重启数据库服务器之后。

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 101 -

当您通过运行 onmode -wf 命令在 onconfig 文件中动态地重置该值时。
当您通过运行 onmode -wm 命令重置内存中的该值时。
用法
不管如何设置 LOW_MEMORY_RESERVE 配置参数,
保留的内存大小最大值是 SHMVIRTSIZE 配
置参数值的 20%。
例如,要保留 512 KB 内存,请指定:
LOW_MEMORY_RESERVE 512
您可使用 onstat -g seg 命令来查看低内存保留信息。输出包括若干行,显示保留的内存
大小、服务器已经使用的保留内存次数和需要的最大内存。

每个 SQLCODE 值具有相关联消息。$GBASEDBTDIR/msg 目录中的错误消息文
件存储消息编号和它的文本。
当使用 SQLCODE 和 sqlca 结构时,
可以使用 rgetlmsg() 或 rgetmsg() 函数检索错
误消息。这些函数都将 SQLCODE 错误代码作为输入并返回相关联的错误消息。
提示: 当使用 SQLSTATE 和 GET DIAGNOSTICS 语句时,可以访问诊断区域
MESSAGE_TEXT 的字段中的信息,来检索与异常相关联的消息文本。
重要: 在您写的任何新的 GBase 8s ESQL/C 代码中使用 rgetlmsg()。GBase 8s
ESQL/C 提供 rgetmsg() 函数主要为了兼容较早的版本。
在 Windows 环境中的显示错误消息
GBase 8s ESQL/C 应用程序可以使用 GBase 8s ERRMESS.HLP 文件显示描述错误及
其修正操作的文本。
可以使用 WinHelp 参数调用 Windows™ API WinHelp()。
WinHelp 参数
数据
HELP_CONTEXT
SQLCODE 或 sqlca.sqlcode 的错误号
HELP_CONTEXTPOPUP
SQLCODE 或 sqlca.sqlcode 的错误号

GBase 8s ESQL/C 编程指南
南大通用数据技术股份有限公司
- 312 -
HELP_KEY
指向包含 SQLCODE 或 sqlca.sqlcode 中的错误编号的字符串,
并使用 sprintf()
或 wsprintf() 转换为 ASCII
HELP_PARTIALKEY
指向包含 SQLCODE 或 sqlca.sqlcode 中的错误编号的字符串,
并使用 sprintf()
或 wsprintf() 转换为 ASCII

语法:

元素
用途
关键注意事项
-d -l
lognum
删除日志文件号所指
定的逻辑日志文件
Restrictions: lognum 值必须是大于或等于 0 的无
符号整数。
可以从 onstat -l 的 number 字段获得 lognum。
lognum 的可能是无序的
-y
导致数据库服务器自
动对所有提示响应
“是”


用法
一次只能删除一个日志文件。
在所有时间,数据库服务器最少需要三个逻辑日志文件。如果数据库服务器配置有三个逻
辑日志文件,那么您不能删除日志文件。
重要: 在删除任意前三个逻辑日志文件前,您必须添加新的逻辑日志文件并对逻辑日志文
件进行备份。必须使用 ontape -a 命令或 ontape -c 命令执行备份。在添加新的逻辑日志文
件并执行备份之后,您可以使用 onparams -d -llognum 删除前三个逻辑日志文件。
日志文件的状态取决于该日志文件是否被删除和日志文件被删除时数据库服务器采取的操
作:
 如果删除一个从未被写入的状态为|“新添加”(A)日志文件,数据库服务器删除
日志文件并立即释放空间。

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 384 -
 如果删除一个已使用的状态为“已使用”(U)或 “空闲”(F)的文件,那么数
据库服务器将它标记为“已删除” (D)。并在对包含该日志文件的 dbspace 和
root dbspace 采用 0 级备份之后,数据库服务器删除此日志文件并释放空间。
 您不能删除当前使用(C)的日志文件或包含最近检查点记录(L)的日志文件。
该命令有等同的 SQL 管理 API 命令。
将逻辑日志文件移动到另一个 dbspace 时,
使用 onparams 命令添加或删除逻辑日志文件。
请参阅 GBase 8s 管理员指南 中的 管理逻辑日志文件 一章中的移动逻辑日志文件。