1、发现故障。
    在Oracle10.2.0.1的alert.log文件中发现如下错误。

Sql代码
  1. ed Jul  8 22:00:08 2009
  2. Errors in file /export/home/oracle/admin/ora10g/bdump/ora10g_j000_1472.trc:
  3. ORA-12012: error on auto execute of job 8888
  4. ORA-20000: ORA-20000: Content of the tablespace specified is not permanent or tablespace name is invalid
  5. ORA-06512: at "SYS.PRVT_ADVISOR", line 1624
  6. ORA-06512: at "SYS.DBMS_ADVISOR", line 186
  7. ORA-06512: at "SYS.DBMS_SPACE", line 1338
  8. ORA-06512: at "SYS.DBMS_SPACE", line 1554
ed Jul  8 22:00:08 2009 Errors in file /export/home/oracle/admin/ora10g/bdump/ora10g_j000_1472.trc: ORA-12012: error on auto execute of job 8888 ORA-20000: ORA-20000: Content of the tablespace specified is not permanent or tablespace name is invalid ORA-06512: at "SYS.PRVT_ADVISOR", line 1624 ORA-06512: at "SYS.DBMS_ADVISOR", line 186 ORA-06512: at "SYS.DBMS_SPACE", line 1338 ORA-06512: at "SYS.DBMS_SPACE", line 1554 

仔细检查,几乎每天晚上10点都报这个错。显然是某个job出错了。

2、查看trc文件,发现如下错

Sql代码
  1. *** ACTION NAME:(AUTO_SPACE_ADVISOR_JOB) 2009-07-07 22:00:08.968
  2. *** MODULE NAME:(DBMS_SCHEDULER) 2009-07-07 22:00:08.968
  3. *** SERVICE NAME:(SYS$USERS) 2009-07-07 22:00:08.968
  4. *** SESSION ID:(1005.30306) 2009-07-07 22:00:08.968
*** ACTION NAME:(AUTO_SPACE_ADVISOR_JOB) 2009-07-07 22:00:08.968 *** MODULE NAME:(DBMS_SCHEDULER) 2009-07-07 22:00:08.968 *** SERVICE NAME:(SYS$USERS) 2009-07-07 22:00:08.968 *** SESSION ID:(1005.30306) 2009-07-07 22:00:08.968 

是Oracle AUTO_SPACE_ADVISOR_JOB任务。

3、再现并验证错误

Sql代码
  1. SQL> exec dbms_space.auto_space_advisor_job_proc;
  2. BEGIN dbms_space.auto_space_advisor_job_proc; END;
  3. *
  4. ERROR at line 1:
  5. ORA-20000: Content of the tablespace specified is not permanent or tablespace
  6. name is invalid
  7. ORA-06512: at "SYS.PRVT_ADVISOR", line 1624
  8. ORA-06512: at "SYS.DBMS_ADVISOR", line 186
  9. ORA-06512: at "SYS.DBMS_SPACE", line 1338
  10. ORA-06512: at "SYS.DBMS_SPACE", line 1554
  11. ORA-06512: at line 1
SQL> exec dbms_space.auto_space_advisor_job_proc; BEGIN dbms_space.auto_space_advisor_job_proc; END;  * ERROR at line 1: ORA-20000: Content of the tablespace specified is not permanent or tablespace name is invalid ORA-06512: at "SYS.PRVT_ADVISOR", line 1624 ORA-06512: at "SYS.DBMS_ADVISOR", line 186 ORA-06512: at "SYS.DBMS_SPACE", line 1338 ORA-06512: at "SYS.DBMS_SPACE", line 1554 ORA-06512: at line 1

果然出现同样的错误。

4、找出问题表空间名:参见(otn的一篇帖子 )

Sql代码
  1. SQL> select distinct tablespace_name from DBA_AUTO_SEGADV_CTL;
  2. TABLESPACE_NAME
  3. ------------------------------
  4. TBS_DNINMSV30
  5. ...
  6. SQL> select tablespace_name from dba_tablespaces;
  7. TABLESPACE_NAME
  8. ------------------------------
  9. ...
  10. TBS_DNINMSV3
SQL> select distinct tablespace_name from DBA_AUTO_SEGADV_CTL;  TABLESPACE_NAME ------------------------------ TBS_DNINMSV30 ...   SQL> select tablespace_name from dba_tablespaces;  TABLESPACE_NAME ------------------------------ ... TBS_DNINMSV3

果然,存在不一致情况(这是Oracle的一个Bug所致,Oracle10.2.0.1没有自动的更新字典表)。

继续

Sql代码
  1. SQL> select count(*) from DBA_AUTO_SEGADV_CTL where tablespace_name = 'TBS_DNINMSV3';
  2. COUNT(*)
  3. 1
  4. SQL> select segment_owner, segment_name, status from DBA_AUTO_SEGADV_CTL where tablespace_name='TBS_DNINMSV3';
  5. SEGMENT_OWNER SEGMENT_NAME STATUS
  6. BEING_PROCESSED
SQL> select count(*) from DBA_AUTO_SEGADV_CTL where tablespace_name = 'TBS_DNINMSV3'; COUNT(*) 1  SQL> select segment_owner, segment_name, status from DBA_AUTO_SEGADV_CTL where tablespace_name='TBS_DNINMSV3'; SEGMENT_OWNER SEGMENT_NAME STATUS BEING_PROCESSED

5、三步搞定,解决问题 (参考文档)
创建DBA_AUTO_SEGADV_CTL中存在,但实际却不存在的表空间(100K就够了,目的也就是借用它的“名字”):

Sql代码
  1. create tablespace TBS_DNINMSV30 datafile '/export/home/oracle/tmp/dninsmv30temp.dbf' size 100k;
    create tablespace TBS_DNINMSV30 datafile '/export/home/oracle/tmp/dninsmv30temp.dbf' size 100k;

运行

Sql代码
  1. exec dbms_space.auto_space_advisor_job_proc;
    exec dbms_space.auto_space_advisor_job_proc;

----果然不报错了
删除表空间

Sql代码
  1. drop tablespace TBS_DNINMSV30
    drop tablespace TBS_DNINMSV30 

6、再次验证
运行

Sql代码
  1. exec dbms_space.auto_space_advisor_job_proc;
    exec dbms_space.auto_space_advisor_job_proc; 

----依然不报错,说明问题解决。

另注:
直接删除DBA_AUTO_SEGADV_CTL中的条目是是不可以的。

ORA-20000故障排除手记相关推荐

  1. as死机了怎么办_Acer AS574/G开机死机故障排除手记

    ㈠ 故障现象 2012-12-14原本正常工作的机子,在无人值守情况下更新一个系统软件状态,因听不到 blog.sina.com.cn/u235016的背景音乐声(原来有乐声),走近查看时,脑脑屏幕显 ...

  2. shell 获取ora报错信息_频发:故障排除之又见 ORA-4031丨云和恩墨技术通讯

    亲爱的读者朋友: 为了及时共享行业案例,通知共性问题,达成共享和提前预防,我们整理和编辑了<云和恩墨技术通讯>,通过对过去一段时间的知识回顾,故障归纳,以期提供有价值的信息供大家参考.同时 ...

  3. teamviewer设备数量上限_智能控制设备连接故障排除

    智能家居控制设备,物联网,设备连接中配对和不在线常见问题故障排除方法: 手机通过WIFI 是否可以正常上网,如果不能正常上网,先要解决这个问题,很多设备是需要通过互联网才可以正常接入工作的. 手机和智 ...

  4. Linux主辅DNS数据不同步故障排除

         Linux主辅dns数据不同步故障排除 欢迎使用微信关注"云运维联盟"公众号,第一时间了解本博客动态! 在互联网中,我们知道任何一台提供应用服务的主机(例如:HTTP.F ...

  5. 详细故障排除步骤:针对 Azure 中到 Windows VM 的远程桌面连接问题

    本文提供详细的故障排除步骤,用于为基于 Windows 的 Azure 虚拟机诊断和修复复杂的远程桌面错误. Important 若要消除更常见的远程桌面错误,请务必先阅读远程桌面的基本故障排除文章, ...

  6. 网络故障排除连载之一:常用排除方法综述

    一.对网络管理人员的要求 目前互联网络技术.拓扑和应用的复杂性决定了网络管理人员必须: 1.确保网络稳定运行: 2.掌握故障排除方法: 3.熟悉各种协议可能故障点,迅速定位排除故障. 对协议要求有精深 ...

  7. 基于路由器网络诊断步骤和故障排除技巧

    网络诊断是管好.用好网络,使网络发挥最大作用的重要技术工作.本文简述分层诊断技术,结合讨论路由器各种接口的诊断,综述互联网络连通性故障的排除. 网络故障诊断概述 网络故障诊断,从故障现象出发,以网络诊 ...

  8. linux5启动过程及故障排除

    启动过程及故障排除 1加电-----cmos---(post上电自检程序------mbr引导----grub菜单 开机自检>MBR引导>GRUB菜单>加载内核>运行init进 ...

  9. 启动过程以及故障排除

    启动过程: -->开机自检(BIOS) -->MBR引导 -->GRUB菜单 [ 5秒内选择启动的操作系统,否则会超时而自动选择操作系统  参考配置文件 /etc/grub.conf ...

最新文章

  1. EcologyEvolution|微生物功能多样性从概念到应用
  2. Http中涉及到的知识点总结
  3. oracle sql为null值,在SQL Server Oracle MySQL当数据库中查出某值为NULL怎么办
  4. 常用方法 DataTable转换为Entitys
  5. 几种C#程序读取MAC地址的方法
  6. 旧金山运输系统攻击者威胁将公布消费者和职工个人数据
  7. 最新电脑为什么用ghost无法安装系统?安装版正常,是何原因?
  8. go mysql 初窥。查询
  9. Docker部署Nacos服务端
  10. chrome android版 插件下载,谷歌chrome安卓版
  11. correspondence analysis of drug and genotype(spss)
  12. 风口的猪-中国牛市(动态规划)
  13. C++2.0 shared_ptr和weak_ptr深入刨析
  14. 【算法题】2309. 兼具大小写的最好英文字母
  15. 二维码生成api接口调用示例
  16. rust申请解封_参考 - Rust的确切自动解除引用规则是什么?
  17. c语言阶乘编程题,C语言编程题:阶乘计算
  18. 优麒麟(18.10)安装五笔拼音输入法
  19. lua mysql 事务_Lua 操作数据库(MySQL)
  20. 【李某某进入少管所服刑 满18周岁后移送成人监狱】

热门文章

  1. IMS医药数据库简介
  2. 分享20款自己收藏的wordpress主题
  3. 2022年十一届认证杯D题
  4. WEBGUI配置和如何启动WEBGUI
  5. BluetoothOpp共享文件(一)之蓝牙设备选择
  6. mac如何更改iTerm的默认窗口大小
  7. 通信2M传输基本知识
  8. springboot排错
  9. k-PPD-ERT实现
  10. AP2403宽输入5——100V降压恒流车灯IC,内置MOS带短路保护功能