CREATE PROFILE jibo_test_profile,限制
SESSIONS_PER_USER
CPU_PER_SESSION,,,,,,,,,,,,,,,,,,,,,,,,,,无限的
CPU_PER_CALL,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,1500
CONNECT_TIME,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,45
LOGICAL_READS_PER_SESSION,,默认的
LOGICAL_READS_PER_CALL,,,,,,,,,, 1000
PRIVATE_SGA,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 15 k
COMPOSITE_LIMIT,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 5000000;
我想通过执行查询超过15秒来限制Oracle用户,为此我用下面的脚本创建了新的配置文件,并将其分配给user。
CREATE PROFILE jibo_test_profile,限制
SESSIONS_PER_USER
CPU_PER_SESSION,,,,,,,,,,,,,,,,,,,,,,,,,,无限的
CPU_PER_CALL,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,1500
CONNECT_TIME,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,45
LOGICAL_READS_PER_SESSION,,默认的
LOGICAL_READS_PER_CALL,,,,,,,,,, 1000
PRIVATE_SGA,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 15 k
COMPOSITE_LIMIT,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 5000000;
然后我尝试执行简单的选择查询(select * from something),其工作时间超过15秒,但它不停止时,查询执行时间达到15秒(甚至5分钟:)),然后我尝试分配"CPU_PER_SESSION"1500,但没有任何变化。
你知道为什么这个限制对我不起作用吗?
问题的原因是,资源限制设置为"false",所以配置文件限制对用户不起作用。
要使用配置文件限制,RESOURCE_LIMIT应该设置为"true"