你好,游客 登录 注册 搜索
背景:
阅读新闻

Oracle数据库ORA-00257解决

[日期:2014-10-16] 来源:Linux社区  作者:Linux [字体: ]

今天Oracle数据库突然连不上了,报ORA-00257错误(空间不足错误),通过查找资料,绝大部分说这是由于Archivelog归档日志太多,占用了全部的硬盘剩余空间导致的,通过简单删除日志或加大存储空间就能够解决。

首先进入oracle用户,使用rman工具执行命令rman target/:

oracle@test-idm-db01$ rman target/ 

Recovery Manager: Release 11.2.0.1.0 - Production on Wed May 15 09:29:06 2013 

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved. 
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-00554: initialization of internal recovery manager package failed
RMAN-04005: error from target database:
ORA-01031: insufficient privileges

竟然报错了,如果你的空间100%一点剩余都没有,那么就会报这个错,只能想办法让你的系统腾出一点空间,哪怕几百兆!然后重启数据库应该就可以登陆dba了。

重启数据库,再次rman

oracle@test-idm-db01$ rman target/ 

Recovery Manager: Release 11.2.0.1.0 - Production on Wed May 15 09:29:40 2013 

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved. 

connected to target database: IDM_TEST (DBID=4064060693)

现在删除Archivelog归档文件,执行下面的命令来删除最近7天的归档:

RMAN> DELETE ARCHIVELOG FROM TIME 'SYSDATE-7';

也可以只保留最近7天的,其余的都删除:

RMAN> DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';

但是过一段时间你的日志还是回满,对于开发环境这样的归档功能其实没什么必要,彻底解决办法是关闭这个功能,用dba登陆oracle:

sqlplus / as sysdba;

然后执行下面的命令:

SQL> alter database flashback off;

然后重启数据库就OK了!

CentOS 6.4下安装Oracle 11gR2(x64) http://www.linuxidc.com/Linux/2014-02/97374.htm

Oracle 11gR2 在VMWare虚拟机中安装步骤 http://www.linuxidc.com/Linux/2013-09/89579p2.htm

Debian 下 安装 Oracle 11g XE R2 http://www.linuxidc.com/Linux/2014-03/98881.htm

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址http://www.linuxidc.com/Linux/2014-10/108121.htm

linux
相关资讯       ORA-00257 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款