有没有办法在 Oracle 中节流或限制用户使用的资源?
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/2418581/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Is there a way to throttle or limit resources used by a user in Oracle?
提问by bitstream
I have a multi-user web application and am encountering issues when a third party reporting application queries my Oracle 10g database.
我有一个多用户 Web 应用程序,当第三方报告应用程序查询我的 Oracle 10g 数据库时遇到问题。
The reporting queries are slowing the system and impacting all other users.
报告查询正在减慢系统并影响所有其他用户。
Is there a way to throttle this user's session so their queries don't impact the other users?
有没有办法限制这个用户的会话,这样他们的查询就不会影响其他用户?
回答by Vincent Malgrat
you can use the Database Resource Managerto manage workload. Have a look at the Oracle documentationor at this example from Joel Kallman's APEX blog.
您可以使用数据库资源管理器来管理工作负载。查看Oracle 文档或Joel Kallman 的 APEX 博客中的此示例。
回答by DCookie
AFAIK, you can only throttle sessions based on CPU in 10g, which usually isn't the problem with long running queries. The most useful thing would be limits placed on disk I/O, which it appears is now available in 11g in the Database Resource Manager.
AFAIK,您只能在 10g 中基于 CPU 限制会话,这通常不是长时间运行的查询的问题。最有用的是对磁盘 I/O 的限制,它现在似乎在 11g 的Database Resource Manager 中可用。