oracle实例操作经验总结-数据库规划-2

oracle实例操作经验总结-数据库规划-2

ID:8962705

大小:39.50 KB

页数:4页

时间:2018-04-13

oracle实例操作经验总结-数据库规划-2_第1页
oracle实例操作经验总结-数据库规划-2_第2页
oracle实例操作经验总结-数据库规划-2_第3页
oracle实例操作经验总结-数据库规划-2_第4页
资源描述:

《oracle实例操作经验总结-数据库规划-2》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、数据库规划文档1、数据库表空间规划根据应用情况建立应用数据表空间,索引表空间,临时表空间,回滚表空间。表空间存储参数划分:initial=next,pctincreas0,minextents2,maxtentsunlimited如果是小表,则对应initail以k为单位。如果数据量比较大的表,例如历史表等initial以M为单位。数据表空间的划分:数据表空间可划分为多个数据表空间,按数据量、业务类型进行划分。系统小表:bsys_area,bsys_code等使用缺省表空间历史表:CARD_BILL

2、ING_DETAIL_200203、BILLING_COMDETAIL_200203等使用历史表空间其它表:如当前详单表、消费、粗帐表、用户信息表、认证表等归属一个数据表空间特殊表:mid_record,卡替重表等归属一个表空间接口表、宽带表等:以业务类型划分数据表空间,接口表空间、宽带表空间2、Oracle性能考虑Insert操作考虑:插入操作运行速度慢,会伴随大量的输入输出。如果高性能比空间的重新使用更为重要,那么可以使用一个能够绕过空闲列表的ORACLE8SQL提示。即通过在INSERT关键词

3、之后放置/*+append*/,这个提示将确保所有插入内容都放入到空数据块中,从而提高了速度。Pctfree:为insert保留的可用块空间的百分比,当到达pctfree限额时,块被认为已满,不能再插入新的行。块中pctfree限额到达以后,保留在块中的空间为已存在于块中的行UPDATE服务。数据库缺省值:PCTUSED=40PCTFREE=10大量的insert操作设置:如果表多数情况下是INSERT操作,可将pctfree设置趋向于小(缺省值10),pctused要加大,建议(60至70)。大量

4、Update操作设置:如果表有大量的UPDATA操作,可将PCTFREE设置大一些(20--25),pctused建议(50)。总体上PCTFREE+PCTUSED<80–90Freelists参数设置:freelists为向表中进行insert操作,而保留的空闲块队列的数目,此参数可设为当前update操作的最大数值。对有很多并发UPDATE操作的数据表,定义额外的空闲列表。例如表test有20个并发执行insert操作的终端用户,那么test表应该设置freelists=201、数据文件划分原则

5、:数据库文件的基本划分原则是:DATA空间段与其索引INDEXS空间段分开;RBS空间段与DATA空间段分开;SYSTEM空间段应同数据库中的所有其它空间段分开。磁盘数据文件内容1系统表空间,控制文件1、在线重做日志12数据文件13数据文件24数据文件35索引段6工具段,回滚段,控制文件2、在线重做日志27临时段,用户段,在线重做日志3,控制文件32、SQL语句设计为了保证Oracle数据库运行在最佳的性能状态下,在业务系统开发之前就应该考虑数据库的优化策略。Sql语句与其执行计划一同进行检查。避免

6、无计划的全表扫描,如下情况进行全表扫描:该表无索引、对返回的行无Where子句、对于索引主列(索引的第一列)无限制条件等等。对SQL语句的编写可参考如下原则:改变SQL来源在实际的编程过程中,建议从应用程序中去掉所有的SQL语句。强调通过将所有的SQL放置在存储过程中,将存储过程打包来实现。在SQL语句中避免使用直接量包含有直接量的SQL语句都不可能被再次使用。解决的办法是建议开发者在SQL语句中使用主机变量。去掉不必要的大型表的全表扫描全表扫描会造成不必要的硬盘I/0,调整方法是通过添加索引,使用

7、标准的B树索引,使用位图索引或基于函数的索引,去掉不必要的全表扫描。Oracle8提供了含有内置函数的索引。下面是一些经常使用的OracleSQL内置函数:to_charupperlowersubstrdecode如果没有创建与内置函数匹配的基于函数的索引,这些函数通常会导致SQL优化器执行全表扫描。缓存小型表的全表扫描在全表扫描是更快的访问方式的情况下,将小表KEEP到数据缓冲区中。altertable表名storage(buffer_poolkeep);并行技术对于合法的大型表全表扫描可使用AL

8、TERTABLEPARALLELDEGREEnn命令进行并行化。采用基于规则的优化器的一些特性:(optimizer_mode=rule)总是使用索引总是从驱动表开始,在from子句中的最后一个表是驱动表。表的名称从右向左读取,因此FROM子句中的最后一个表必须是可以返回最少记录的表。使用UnionAll而不是UnionUNIONALL操作不包括SortUnique操作,多数情况下不用临时段完成操作,绑定变量(BindVariable)的使用管理将like:name

9、

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。