Monthly Archive for May, 2010
Page 2 of 2
索引是数据库中重要的数据结构,它的根本目的就是为了提高查询效率。现在大多数的数据库产品都采用IBM最先提出的ISAM索引结构。
索引的使用要恰到好处,其使用原则如下:
- 在经常进行连接,但是没有指定为外键的列上建立索引,而不经常连接的字段则由优化器自动生成索引。
- 在频繁进行排序或分组(即进行group by或order by操作)的列上建立索引。
- 在条件表达式中经常用到的不同值较多的列上建立检索,在不同值少的列上不要建立索引。比如在雇员表的“性别”列上只有“男”与“女”两个不同值,因此就无必要建立索引。如果建立索引不但不会提高查询效率,反而会严重降低更新速度。
- 如果待排序的列有多个,可以在这些列上建立复合索引(compound index)。
- 使用系统工具。如Informix数据库有一个tbcheck工具,可以在可疑的索引上进行检查。在一些数据库服务器上,索引可能失效或者因为频繁操作而 使得读取效率降低,如果一个使用索引的查询不明不白地慢下来,可以试着用tbcheck工具检查索引的完整性,必要时进行修复。另外,当数据库表更新大量 数据后,删除并重建索引可以提高查询速度。
- 有主键表的增/删/改数据同步(同步正常)
- 无主键表的增/删/改数据同步(无主键不能作同步复制,必须将每一张表加主键,否则无法配置到同步环境)
- 包含索引的表的增/删/改数据同步(同步正常)
- 包含触发器的表的增/删/改数据同步(如果A表包含有触发器,当增加记录时向B表插入数据,备库上会报错)
- 包含级连删除/修改数据的表的删/改数据同步 (同步正常)
- 包含大对象数据的表增/删/改数据同步(同步正常)



Recent Comments