当前位置:  开发笔记 > 编程语言 > 正文

Oracle序列存储在哪个表空间中?

如何解决《Oracle序列存储在哪个表空间中?》经验,为你挑选了1个好方法。

我和我的同事维护的应用程序在后端有一个Oracle数据库.我们正在考虑偶尔以"受限"模式运行应用程序,其中一个数据库表空间设置为只读.我们可以轻松地将必要的表和索引移到单独的表空间,这些表空间可以在"受限"模式下写入.但是,尽管有几次Google搜索,但我无法确定Oracle存储序列的表空间.

这个答案提到序列值存储在SYSTEM.SEQ $表中.我现在无权访问Oracle数据库,但我猜这个表存在于一个系统表空间中.我们使只读的表空间不是系统表空间,它是我们自己的数据表空间之一.

在dev数据库中,我可以从序列中成功地进行SELECT,并将相关的表空间设置为只读.

我怀疑将这个表空间设置为只读是不会有问题的,但我更倾向于通过临时实验证实我的怀疑.有人可以赐教吗?



1> Gary Myers..:

序列(大部分)在SEQ $中.零件将在OBJ $(并在其他地方授予).但是所有这些表都在SYSTEM表空间中.一些SYSTEM对象在SYSAUX中.DBA_SEGMENTS是一个很好的视图,用于标识对象(例如SEQ $)所在的表空间.

我怀疑Oracle不会让这些表空间进入READ ONLY模式,因为要这样做,它需要将该表空间标记为只读,该表空间记录在该表空间的SYSTEM表中.有点像锁定它解锁的保险箱中的钥匙.

推荐阅读
pan2502851807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有