db get snapshot for database on DBNAME
并查找以下的行
Database files closed =
如果上述参数的值不为 那么增加MAXFILOP的值直到不断打开和关闭文件的状态停埂
db update db cfg for DBNAME using MAXFILOP N
四锁
LOCKTIMEOUT的缺省值是 这意味着将没有锁超时(对 OLTP 应用程序这种情况可能会是灾难性的)尽管如此我还是经常发现许多 DB 用户用LOCKTIMEOUT= 将LOCKTIMEOUT设置为很短的时间值例如 或 秒在锁上等待过长时间会在锁上产生雪崩效应
首先用以下命令检查LOCKTIMEOUT的值
db get db cfg for DBNAME
并查找包含以下文本的行
Lock timeout (sec) (LOCKTIMEOUT) =
如果值是 考虑使用以下命令将它更改为 秒(一定要首先询问应用程序开发者或您的供应商以确保应用程序能够处理锁超时)
db update db cfg for DBNAME using LOCKTIMEOUT
您同时应该监视锁等待的数量锁等待时间和正在使用锁列表内存(lock list memory)的量请发出以下命令
db get snapshot for database on DBNAME
查找以下行
Locks held currently=
Lock waits=
Time database waited on locks (ms)=
Lock list memory in use (Bytes)=
Deadlocks detected=
Lock escalations=
[] [] [] [] [] [] [] [] []