早教吧 育儿知识 作业答案 考试题库 百科 知识分享

ANALYZE索引的问题1、ANALYZEINDEXindexnameVALIDATESTRUCTURE;使用这种OFFLINE方式会比使用ONLINE方式得到更精确的分析结果?2、使用ONLINE方式,无法在INDEXSTATS中产生分析数据,既然分析是为了验证是否

题目详情
ANALYZE索引的问题
1、ANALYZE INDEX index_name VALIDATE STRUCTURE;
使用这种OFFLINE方式会比使用ONLINE方式得到更精确的分析结果?
2、使用ONLINE方式,无法在INDEX_STATS中产生分析数据,既然分析是为了验证是否需要重建索引,但INDEX_STATS又没有数据,这种ONLINE方式还有什么用处呢?
3、OFFLINE重建索引是否产生一个4级别的锁,禁止DML操作,但允许SELECT操作?
呵呵,那请问对于表分析ANALYZE不就是为了获得相关索引信息,然后决定是否需要重建索引么?如果使用ONLINE方式,无法看到index_stats的信息,那这个ONLINE模式还有什么用呢?
但使用ONLINE方式如何看到其分析结果呢?“做系统海量数据测试和开发就可能要用!
▼优质解答
答案和解析
理论是如此的!老弟,你不是挺清楚的么?怎么问起我了,想入我的团吧?哈哈!
----------------------------------------------------------------------------------------------------------------------
OFFLINE 时 启用了S(4)级锁,DML那是封死的,但是SELECT不是DML语句,是可以查询的.主要是防止你分析的时候对表修改,那分析数据就没意义了.所以用表共享锁.
一个在线分析【ONLINE】和不在线分析【OFFLINE】.
在线分析是开放此时的外来修改,这种情况的确不多见,所以用OFFLINE的居多,
默认也是OFFLINT,同时这种不在线方式能够在 同一个SESSION中使用INDEX_STATS
---------------------------------------------------------------------------------------------------------------
ANALYZE INDEX
[PARTITION ]
[SUBPARTITION ]
VALIDATE STRUCTURE CASCADE
INTO
-----------------------------------------------------------------------------------------------------------------
看如上,那个INTO 表因为很少人用,名字输错了给自己找麻烦.所以DBA喜欢用INDEX_STATS视图的方式,这就要用OFFLINE的方法了.
------------------------------------------------------------------------------------------------------
你说的是对的,是通过分析索引决定是否要重建索引.那个ONLINE虽然用的不多,但是如果在分析的时候不阻止别人修改表就是它的用武之地了.做系统海量数据测试和开发就可能要用!