下载此文档

Oracle数据库规范.ppt


文档分类:IT计算机 | 页数:约55页 举报非法文档有奖
1/55
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/55 下载此文档
文档列表 文档介绍
? 2010 Oracle Corporation 1 <Insert Picture Here> Oracle 数据库规范 Victor Li Senior Consultant – Oracle Consulting Service ? 2010 Oracle Corporation 3 Oracle 数据库规范?数据库模型设计规范? SQL 开发规范?数据库管理规范?数据库性能优化建议? 2010 Oracle Corporation 建表的参数设置?存储参数 PCTFREE - 对于经常被 UPDATE 且被 update 的列所占字节比较大的表,需要设置较大的 PCTFREE ,避免造成过多行迁移。-对于可能造成热点块的表, PCTFREE 参数需要设置较大,尽量减少热点块发生概率。?事务参数- 对并发 DML 事务很大的表,可以在建表初期设置较大的 initrans 参数。 initrans 值过小可能会引起 ITL 竞争, 导致热点块或者 enqueue 较为严重。 4 ? 2010 Oracle Corporation 建表的参数设置? Initrans 使用原则????每个 initrans 在数据块上占用 24Bytes 空间 Initrans 不可以超过 10 不可以修改 maxtrans 值修改 initrans 后只对新的数据块起作用,如需要对全部数据起作用需要重新组织表? alter index xxx initrans 8; ? Alter table xxx storage (freelists 8) ; 注意: ASSM 表空间上无需设置 freelists 5 ? 2010 Oracle Corporation 列设计?定长字符型列使用 CHAR 类型,不定长字符型列使用 VARCHAR2 类型。?固定长度用 char ,相对 varchar2 可以提高查询速度?不定长度用 varchar2, 如果用 char ,则会在列末用空格补充,在处理上需要用 trim 等函数去空格,因此容易造成处理的不便和效率问题。?日期字段需定义为 DATE 类型。如果定义为 varchar2 或者 char 时需要进行转换,影响效率.。需要数据精确到微秒的字段需定义为 TIMESTAMP 类型。?列为 null 时,需定义 default 值,避免因为 null 而造成索引不能被用到的情况。?使用 NUMBER 型时必须指定长度。由 number 得精度和密度来保障数据的一致性 6 ? 2010 Oracle Corporation 列设计?表中字段的命名长度不应该超过 20个字节。?记录数达到千万级的表,必须进行分区,分区一般遵循以下原则: ?数据具有明显的范围属性,比如日期,大小等,且经常进行范围条件查询的表,采用范围分区?数据具有明显的列表属性,比如地点,省份等,且经常用列表条件查询的表,采用列表分区?数据不具有明显的范围属性或者列表属性,且数据量很大,则可以采用 hash 分区 7 ? 2010 Oracle Corporation 临时表?对于只对本事务有效的临时表使用 MIT DELETE ROWS 关键字创建该表。?对于只对本会话有效的临时表使用 MIT PRESERVE ROWS 关键字创建该表。?对于临时表空间要求比较大的业务系统,临时表要存储在独立的表空间中,并且临时表空间的数据文件需要放在单独的磁盘上。 8 ? 2010 Oracle Corporation 9 索引?小表(数据量小于 5000 条记录为标准)不需要创建索引。?对于 OLTP 应用,分区表使用分区索引。?创建或重建大索引时需指定使用 NOLOGGING 子句,指定并行度,指定较大的排序区,提高执行效率。 EXAMPLE: ALTER SESSION SET WORKAREA_SIZE_POLICY=MANUAL; ALTER SESSION SET SORT_AREA_SIZE=2000000000; ALTER SESSION SET SORT_AREA_RETAINED_SIZE=2000000000; CREATE INDEX XXX NOLOGGING PARALLEL X; ALTER INDEX XXX NOPARALLEL; ?将记录差别数最多的列放在索引顺序的最前面。?对于 OLTP 应用的业务系统索引数据的重复率不能超过 20% 。?进行 order by column desc 排序时,创建 column desc 索引。? 2010 Oracle Corporation 索引?频繁使用的 index 需要放入库缓存的 keep 池中。对于频繁使用的较小的 index( 可以根据 s

Oracle数据库规范 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数55
  • 收藏数0 收藏
  • 顶次数0
  • 上传人mh900965
  • 文件大小1.41 MB
  • 时间2017-05-10