我们的数据库环境包含一个同步的主站点和一个报告站点。Primary是读/写,报告只读。对于创建报表,我只允许使用报表站点。现在我想使用临时表。我可以在主站点上创建它们,然后同步机制将其移动到报表站点。但是由于缺少许可,我无法填写。是否有一种方法(角色概念,特殊权限…),使它可能在Oracle中使用临时表,即使环境是只读的?顺便说一下,我们使用的是Oracle 11。
(我正在假设您正在使用备用数据库而不是您自己的本地选项)
Oracle 11你有麻烦了:-)
在12.1及以上版本中,我们有一个叫做临时撤销的东西(参见https://docs.oracle.com/database/121/ADMIN/undo.htm#CEGJGIAE)
使用临时撤销,您所遵循的过程将正常工作,因为重做和撤销都位于只读环境的临时表空间中。
也许一个更好的选择是升级到19c,在那里我们有一个叫做备用DML重定向的东西,我们拦截瞄准备用的DML,将其重定向到主服务器,然后重放回备用服务器。
您可以在这里获得这些的概述
https://youtu.be/-B9eorpmikU