ORA-00600和ORA-08103错误(oracle10g)
2014-01-09连接未全部断开,就进行了oracle表空间移动,导致数据损坏。
alter tablespace $ts read only;
alter tablespace $ts offline;
!mv $src1 $dst1
alter database rename file '$src1' to '$dst1';
alter tablespace $ts online;
alter tablespace $ts read write;
1、oracle症状,查询或者插入数据报错“
select count(*) from VIEW;
*
ERROR at line 1:
ORA-08103: object no longer exists
insert数据
ORA-00600 kcbz_check_objd_typ_3
2、通常这个错误意味着存在着数据损坏。官方文档,如下:
ORA-08103: object no longer exists
Cause: The object has been deleted by another user since the operation began, or a prior incomplete recovery restored the database to a point in time during the deletion of the object.
Action: Delete the object if this is the result of an incomplete recovery.
原因是:在执行操作之前对象已经被另一个用户删除了,或者在删除些对象之前有一个未完成的数据库恢复。
3、处理过程:
a)有的文章说执行下列该语句后,错误消失,但是我执行后无效;
exec dbms_scheduler.disable('AUTO_SPACE_ADVISOR_JOB');
alter system flush buffer_cache;
b)重启数据库实例无效
4、最终重新创建表空间,创建表,将原来的数据导入
insert into newtable select * from oldtable;
5、结论:禁止有连接的情况下转移数据。有文章称ORACLE的新版本11g在这一方面进行了改进。
分类:数据库 | 标签: oracle |相关日志
- rman-0level全备份及恢复
- nagios监测dbbak
- oracle限制远程访问
- 给left join关联关系字段加索引
- Oracle ASM
- Oracle Database 18c
- DG两个数据库SID不同
- DG-Dgmgrl
- Oracle中的BLOB和CLOB
- oracle 启动错误:MEMORY_TARGET not supported on this system
- create bigfile tablespace
- Oracle11G新特性:分区表分区默认segment大小64k变为8M
- oracle增加md5函数
- oracle删除重复行delete repeat
- rollback回滚 (1)
- oracle中drop一个表,让数据文件释放空间
- CentOS 5.11 x64静默安装(slient install)oracle 11.2.0.4 x64
- sqlplus USER/PWD@IP:PORT/SID
- oracle删除所有表
- oracle查询长整数实例
- oracle设置NLS_DATE_FORMAT参数实例
- oracle user passwd用户密码
- oracle导入txt数据文件实例
- conn user as sysdba
- SGA/PGA的设置与调整 (9)
- ORA-01843: not a valid month (3)
- oracle表空间(tablespace)的增删改查(create/drop/rename,move/select) (2)
- rlwrap实现sqlplus使用上下键查历史命令