sys/system用户可以登录,普通用户登录HANG住的问题 _MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 1804 | 回复: 0   主题: sys/system用户可以登录,普通用户登录HANG住的问题         下一篇 
youduoduo
注册用户
等级:新兵
经验:78
发帖:78
精华:0
注册:2011-11-26
状态:离线
发送短消息息给youduoduo 加好友    发送短消息息给youduoduo 发消息
发表于: IP:您无权察看 2015-7-1 14:18:23 | [全部帖] [楼主帖] 楼主

1.先用普通用户登录

SQL> conn sjh/sjh
已连接。

SQL> show user


USER 为 "SJH"

 

2.再用sys用户登录,修改resource_manager_plan的值为'INTERNAL_QUIESCE'。

 

SQL> show user
USER 为 "SYS"
SQL> alter system set resource_manager_plan='INTERNAL_QUIESCE';

系统已更改。

SQL> show parameter resource_manager_plan;

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------
resource_manager_plan                string      INTERNAL_QUIESCE
SQL> select * from v$rsrc_plan;
ID NAME                             IS_TO
---------- -------------------------------- -----
4840 INTERNAL_QUIESCE                 TRUE


3.验证普通用户的操作

SQL> select table_name from user_tables;
SQL> conn sjh/sjh
--两个操作均失去了响应。


4.sys用户的操作是OK的。如下:

 

SQL> create table sjh.test (id number(2));

表已创建。

SQL> insert into sjh.test values(10);

已创建 1 行。

SQL> commit;

提交完成。

SQL> select * from sjh.test;

        ID
----------
        10

 

 

5.分析。我们来看一下等待事件:

 

SQL> select SID,SEQ#,EVENT FROM v$session_wait;

       SID       SEQ# EVENT

---------- ---------- ----------------------------------------------------------------
143          7 resmgr:become active
145         55 SQL*Net message to client
146        282 SQL*Net message from client
148         91 SQL*Net message from client
150          2 Streams AQ: waiting for time management or cleanup tasks
152          1 jobq slave wait
153          2 Streams AQ: qmn slave idle wait
154          6 Streams AQ: qmn coordinator idle wait
158         70 resmgr:become active
160          6 rdbms ipc message
161        253 rdbms ipc message
162         62 rdbms ipc message
163          6 rdbms ipc message
164       1444 smon timer
165        480 rdbms ipc message
166        385 rdbms ipc message
167         84 rdbms ipc message
168          7 rdbms ipc message
169         39 rdbms ipc message
170          3 pmon timer
20 rows selected
--注意蓝色的部分 resmgr:become active 这个等待事件的解释如下:

The session is waiting for a resource manager active session slot. This event occurs when the resource manager is enabled and the number of active sessions in the session's current consumer group exceeds the current resource plan's active session limit for the consumer group. 


这个等待跟resource manager的启用有关。通过查询resource_manager_plan参数获得其值为:INTERNAL_QUIESCE。这个值代表什么?

INTERNAL_QUIESCE - freezes all sessions out (by setting max number of sessions to 0) except for SYS_GROUP  

除了SYS_GROUP 组的用户,其它用户的session都被冻结。注意冻结这个词,OK,我来解冻。

 

6.解冻

 

SQL>  alter system set resource_manager_plan='';

 

系统已更改。

 

hang住的普通用户操作立刻有了反应。

 

SQL> select table_name from user_tables;

TABLE_NAME

------------------------------
TEST
SQL> conn sjh/sjh


已连接。



--转自 北京联动北方科技有限公司




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论