《数据厍设计与开发》讲义 4.3.1.1管理 ORACLE数据库对象 索引与 PCTUSED/ PCTFREE 索引使用 PCTFREE和 PCTUSED与表相比不同。 只有当一个索引最初建立时这些参数适用 PCTFREE的设置应让索引结构最初在叶块中建 立时就有足够的空间,这样就可以增加辅助关 键字,而不必拆分已存在的叶块提供给新关键 字。索引不必设置 PCTUSED。 当为一个已存在的表建立新索引时,如果 预料到表中的数据较稳定,修改不多时,可选 择较小的 PCTFREE,反之则应选择较大的值。 家邮电大学物你学院 部明80080
北京邮电大学软件学院 郭文明 2003.06 《数据库设计与开发》讲义 4.3.1.1 管理ORACLE数据库对象 –索引与PCTUSED/PCTFREE 索引使用PCTFREE和PCTUSED与表相比不同。 只有当一个索引最初建立时这些参数适用。 PCTFREE的设置应让索引结构最初在叶块中建 立时就有足够的空间,这样就可以增加辅助关 键字,而不必拆分已存在的叶块提供给新关键 字。索引不必设置PCTUSED。 当为一个已存在的表建立新索引时,如果 预料到表中的数据较稳定,修改不多时,可选 择较小的PCTFREE,反之则应选择较大的值
《数据厍设计与开发》讲义 4.3.1.1管理 ORACLE数据库对象 管理表存储区 创建表时,系统自动在表空间中分配一个 区间,构成数据段。表的空间需求是平均行长 与行数的乘积。确定表的容量应该在表建立之 前的设计阶段完成。预期的增长和存储参数值 等问题应该在建表时处理。 ORACLE用如下方式 来为未来的数据预留空间(参看2.1内容): 1)为表的数据段设置存储参数,控制每次 分配的区间大小。 2)用存储参数 PCTFREE和 PCTUSED控制构成 数据段的区间中各个块的空间利用率 家邮电大学物你学院 部明80080
北京邮电大学软件学院 郭文明 2003.06 《数据库设计与开发》讲义 4.3.1.1 管理ORACLE数据库对象 –管理表存储区 创建表时,系统自动在表空间中分配一个 区间,构成数据段。表的空间需求是平均行长 与行数的乘积。确定表的容量应该在表建立之 前的设计阶段完成。预期的增长和存储参数值 等问题应该在建表时处理。ORACLE用如下方式 来为未来的数据预留空间(参看2.1内容): 1)为表的数据段设置存储参数,控制每次 分配的区间大小。 2)用存储参数PCTFREE和PCTUSED控制构成 数据段的区间中各个块的空间利用率
《数据厍设计与开发》讲义 4.3.1.1管理 ORACLE数据库对象 管理索引 当查询语句中的 WHERE子句表达式含有被索 引的关键字时, ORACLE将自动启动索引。 许多应用程序员(以及DBA通过申请更多索 引的办法解决数据库的性能问题。但更多的索 引不仅会影响修改性能,而且在一个查询中并 不是子句中涉及的索引都启用 过多的索引并不会一直提供比较好的 SELECT 性能。 家邮电大学物你学院 部明80080
北京邮电大学软件学院 郭文明 2003.06 《数据库设计与开发》讲义 4.3.1.1 管理ORACLE数据库对象 –管理索引 当查询语句中的WHERE子句表达式含有被索 引的关键字时,ORACLE将自动启动索引。 许多应用程序员(以及DBA)通过申请更多索 引的办法解决数据库的性能问题。但更多的索 引不仅会影响修改性能,而且在一个查询中并 不是子句中涉及的索引都启用。 过多的索引并不会一直提供比较好的SELECT 性能
《数据厍设计与开发》讲义 4.3.1.1管理 ORACLE数据库对象 管理索引:关于索引的管理和使用的几点技巧: )组合索引是提高性能的有力工具,特别是针对只需从 索引段读出而不用从数据段的查询 2)如果在查询子句中包含“ IS NULL或‘ IS NOT NULL', 索引将不在启用。 3)在查询条件中涉及多个索引,而又无明显优先可选项 的查询中, ORACLE一般按索引类型及列的性质选择启动 索引,当有唯一性和非唯一性索引均可使用时,选择只 启用唯一性索引。 4)在关键字列上进行运算可以屏蔽定义在此列上的索引 5)在WERE子句中若包含不等于(!=或‘NOT)运算, ORACLE将不在启用索引,但可对其他列使用索引 家邮电大学物你学院 部明80080
北京邮电大学软件学院 郭文明 2003.06 《数据库设计与开发》讲义 4.3.1.1 管理ORACLE数据库对象 –管理索引: 关于索引的管理和使用的几点技巧: 1)组合索引是提高性能的有力工具,特别是针对只需从 索引段读出而不用从数据段的查询。 2)如果在查询子句中包含‘IS NULL’或‘IS NOT NULL’ , 索引将不在启用。 3)在查询条件中涉及多个索引,而又无明显优先可选项 的查询中,ORACLE一般按索引类型及列的性质选择启动 索引,当有唯一性和非唯一性索引均可使用时,选择只 启用唯一性索引。 4)在关键字列上进行运算可以屏蔽定义在此列上的索引。 5)在WHERE子句中若包含不等于(‘!=’或‘NOT’)运算, ORACLE将不在启用索引,但可对其他列使用索引
《数据厍设计与开发》讲义 4.3.1.1管理 ORACLE数据库对象 监控回滚段 回滚段实际上是动态的,DBA应该集中精力 保证每个回滚段及与之联系的表空间有足够 的空间用于增长。 关心回滚段的目的在于合理地配置系统资 源,提高回滚段的利用率,关键是各个事务 要占用多大的存储空间,其活动时间有多长。 家邮电大学物你学院 部明80080
北京邮电大学软件学院 郭文明 2003.06 《数据库设计与开发》讲义 4.3.1.1 管理ORACLE数据库对象 –监控回滚段 回滚段实际上是动态的,DBA应该集中精力 保证每个回滚段及与之联系的表空间有足够 的空间用于增长。 关心回滚段的目的在于合理地配置系统资 源,提高回滚段的利用率,关键是各个事务 要占用多大的存储空间,其活动时间有多长