只读环境中的 oracle temporary table

oracle temporary table in read only environment

我们的数据库环境包含同步的主要站点和报告站点。主要是 read/write 并且报告只读。为了创建报告,我只被允许使用报告网站。现在我想使用临时表。我可以在主站点上创建它们,同步机制将其移动到报告站点。但是由于缺少权限,我无法填写它们。有没有一种方法(角色概念、特殊权限...)可以在 Oracle 中使用临时表,即使环境是只读的?顺便说一下,我们使用的是 Oracle 11。

(我假设您使用的是备用数据库而不是您自己开发的选项)

Oracle 11 你有麻烦了:-)

对于 12.1 及更高版本,我们有一个称为临时撤消的东西(请参阅 https://docs.oracle.com/database/121/ADMIN/undo.htm#CEGJGIAE

使用临时撤消,您正在执行的过程将起作用,因为重做和撤消都位于只读环境中的临时表空间中。

也许更好的选择是升级到 19c,我们有一个叫做备用 DML 重定向的东西,我们拦截针对备用的 DML,将其重定向到主服务器,然后将其重放回备用服务器。

您可以在此处大致了解这些内容

https://youtu.be/-B9eorpmikU