免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2520 | 回复: 1
打印 上一主题 下一主题

【分享】删除dual表的解决方法 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-04-28 16:29 |只看该作者 |倒序浏览
删除DUAL表后,发现数据库无法启动到Mount状态

数据库在正常启动的时候,会对系统表进行依赖性鉴权,发现dual表不存在,鉴权失败!
由此可见,dual表对ORACLE来说,虽然很小(只有一行一列),但却及其重要,没有它甚至不能正常登陆数据库!
但现在如何进入数据库重建dual表呢?
启动参数中可以通过replication_dependency_tracking=FALSE来指示数据库启动不对依赖性鉴权。将其写入init.ora文件,指定该参数文件进行启动。

SQL> startup pfile=/home/ora10g/admin/orcl/pfile/init.ora
ORACLE instance started.

Total System Global Area  629145600 bytes
Fixed Size                   780420 bytes
Variable Size             170137468 bytes
Database Buffers          457179136 bytes
Redo Buffers                1048576 bytes
Database mounted.
Database opened.

现在数据库可以启动了,而且处于OPEN状态,
赶快重建dual表吧~
SQL> create table sys.dual
  2  (dummy varchar2(1)
  3  )
  4  pctfree 10 pctused 4;
Table created.
SQL> insert into dual values('x');
1 row created.
SQL> commit;
Commit complete.
SQL> grant select on dual to public;
Grant succeeded.

建好该表后,正常启动验证一下,没有问题了^_^
SQL> shutdown  immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.

Total System Global Area  629145600 bytes
Fixed Size                   780420 bytes
Variable Size             174331772 bytes
Database Buffers          452984832 bytes
Redo Buffers                1048576 bytes
Database mounted.
Database opened.

结论、解决方案及效果
Dual表虽然很小,只有一行一列,但对ORACLE数据库却及其重要,很多SQL语句都直接用到该表,不管是ORACLE内部的还是应用中用到的。
通过该案例希望大家较为深入的了解dual表在ORACLE中的作用。

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
2 [报告]
发表于 2011-04-28 21:21 |只看该作者
看来Oracle的系统表不能随便删除。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP