ORA-12012 error on auto execute of job 1
ORA-08102 index key not found, obj# 239, file 1, block 1674 (2)
[oracle@vrh8 ~]$ oerr ora 8102
08102, 00000, “index key not found, obj# %s, file %s, block %s (%s)”
// *Cause: Internal error: possible inconsistency in index
// *Action: Send trace file to your customer support representative, along
// with information on reproducing the error
则可能你已经遇到了与本例类似的问题,可以通过下面的命令来分析是否是JOB$数据字典基础表与其索引I_JOB_NEXT上的数据不一致引起的:
select owner , object_name , object_type , status from dba_objects
where object_id=239
analyze table job$ valid structure cascade
如果analyze命令报错则说明确实有不一致, 一般这种情况可以rebuild I_JOB_NEXT索引来解决, 顺序是drop index I_JOB_NEXT然后重建。
如果重建索引后在此analyze 仍报错,则说明 数据的不一致主要出现在表块上,对于这种情况可以采取如下的手段。
重建job$表,并将数据再次导入
重建job$上的2个索引
如果自己搞不定可以找ASKMACLEAN专业数据库修复团队成员帮您恢复!
你好,你可以根据条件去添加索引,例如:
一、所有mysql索引列类型都可以被索引,对来相关类使用索引可以提高select查询性能,根据mysql索引数,可以是最大索引与最小索引,每种存储引擎对每个表的至少支持16的索引。总索引长度为256字节。
mysim和innodb存储引擎的表默认创建索引都是btree索引,目前mysql还不支持函数索引,但支持前缘索引,对字段前N个字符创建索引
二、mysql创建索引语法
Create [unioun|fulltext|spatial] index indexname[using indextype] on tablename( tablenamecol)
index_col_name:
col_name[ (length)][asc |desc]
如果你创建索引时搞错了,需要修改mysql索引我们可以用alert来修改索引,语法与create index创建索引差不多,我们就不说了,可以查看相关手册。
下面我们来看一个关于mysql创建索引实例教程。
mysql>create index cityname on city(city(2))
Query Ok,600 rows affected (0.26 sec)
Records :600 Duplicates:0 Warings 0:
我们现在来以city为条件进行查询,如下面。
->explain select * from city where city ='www.111cn.net' G
id:1
......
possible_keys:cityname
key:cityname
好了,现在我们来看看mysql删除索引等实例
Drop indexname on tablename
实例,我现在要删除刚才创建city索引
>drop index cityname on city
Query ok, .....
不过通常对百万级数据的查询或者其他 *** 作,都改换其他的大型的数据库了,希望能帮到你,望采纳。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)