|
(A)你可以检查V$INSTANCE视图中的ACTIVE_STATE这上字段。
SQL> SELECT ACTIVE_STATE FROM V$INSTANCE;
ACTIVE_ST
---------
NORMAL
ACTIVE_STATE有如下几个可能值:
Active_state
描述
Normal
数据库处于正常状态
QUIESCING
DATABASE wants to QUIESCED but waiting for active running transactions to finish.
数据库要想停顿,但要等待活动的运行事务完成。
Quiesced
数据库处于停顿的状态了.
(Q)怎样确定哪些连接着库的会话在等待停顿着的数据库呢?
(A)可以用如下的查询来确定:
SELECT SID,EVENT,TOTAL_WAITS,TIME_WAITED "TIME WAITED[100 OF SEC]",
AVERAGE_WAIT FROM V$SESSION_EVENT
WHERE EVENT=''''wait for possible QUIESCE finish''''
/ SQL> SID EVENT TOTAL_WAITS Time Waited[100 of Sec] AVERAGE_WAIT --- ---------------------------------- ----------- ----------------------- ------------ 6 wait for possible QUIESCE finish 412 126532 307
"wait for possible QUIESCE finish"这个事件表明会话正等着“正停顿”的数据库以至于它不能进行它的事物。库停顿后这些会话将呈现hung的状态。
(Q)在停顿数据库之前,对于资源管理器计划(resource manager plan) 需要做什么设定?
(A) 当你停顿了数据库,INTERNAL_QUIESCE资源计划被激活了。除SYS_GROUPS其它所有的资源组中的ACTIVE_SESS_POOL_P1应被设置为0。因SYS和SYSTEM用户都属于SYS_GROUPS组,所以只有它们可以连接到数据库。
要查看细节的信息可以查询DBA_RSRC_PLAN_DIRECTIVES这个视图。
记着如下几点:
- 处于停顿状态的数据库只有SYS和SYSTEM是有效的用户来执行维护的工作;其它有DBA权限的用户也被视为一般的用户。
- 在停顿的数据库中备份数据文件(泠备,拷贝数据文件)是无效的。
-
需要启动数据库以设置资源计划
- 停顿数据是9i的新特征,因此之前的版本中是不能用的。
结论:
停顿数据库是一个强大的特征使DBA不必重启数据库就可以执行一些特别的维护工作。
上一页 [1] [2] [电脑应用]用C#动态创建Access数据库 [Web开发]asp 在线备份与恢复sqlserver数据库代码详解 [电脑应用]教你如何远程管理MSSQL数据库 [其他]关于数据库优化查询计划的方法总结 [电脑应用]Linux数据库大比拚 [JAVA开发]Java连接各种数据库的实例 [聊天工具]QQ IP数据库Build 0825 纯真版__天极Yesky [系统软件]利用crontab系统每天定时备份MySQL数据库 [系统软件]备份与恢复Windows2003的AD数据库 [常用软件]活用FlashGet数据库
|