如果 onmode 实用程序无法关闭数据库服务器或无法重启服务器,可使用 onclean 实用程序强制执行立即关闭数据库服务器。onclean 实用程序试图去清除共享内存和信号量并且停止数据库服务器的虚拟进程。
语法
在 UNIX 和 Linux 上,必须以用户 root 或 gbasedbt 的身份执行 onclean 命令。在Windows 上,必须以 Gbasedbt-Admin 组成员的身份执行该命令。
元素 | 用途 |
-k | 通过停止数据库服务器虚拟进程和尝试清除剩余信号量、共享 内存片段(尽管它们仍在运行中)来关闭联机的服务器 |
-V | 显示简短的版本信息 |
-version | 显示所有的版本信息 |
-y | 不提示输入确认 |
用法
只能在 onmode 实用程序无法关闭数据库服务器或无法重启服务器的情况下,使用onclean 实用程序去停止数据库服务器。数据库服务器可能由于不可控的方法关闭并且无法 恢复,或者它被挂载。如果数据库服务器无法重启,它以前的实例却仍会连接共享内存片段。可以检查消息日志来查看数据库服务器是否正常关闭。onclean 实用程序停止所有的oninit 进程并尝试移除所有的共享内存片段和在 $GBS_HOME/etc/.conf.dbservername 文 件中记录的信号量。
注意
请谨慎使用 onclean 实用程序。当运行 onclean 时,任意挂起的事务和进程将无法 完成并且用户会话会突然断线。然而,当数据库服务器重新启动后,它会回滚这些事务。GBS_HOME 环境变量必须设置可用的值以运行该实用程序。
onclean 命令在下例情况下使用:
库服务器仍然在线,将会显示一个指导运行 onclean -k 命令的消息。