
Oracle
supermancoke
合肥架构师一名
展开
-
Oracle服务器优化配置--OLTP和大数据量导入场景
AIO开启Oracle AIO选项,采用异步磁盘IO检查Oracle是否支持AIO,有输出代表已经启用/usr/bin/ldd $ORACLE_HOME/bin/oracle | grep libaio检查系统异步I/O是否在使用,如果结果中kiocp对应的前两项为0,说明系统中没有使用异步iocat /proc/slabinfo | grep kio在Oracle中检查--检查Oracle异原创 2017-04-10 09:54:28 · 902 阅读 · 0 评论 -
Oracle11高性能开发--(1)表概念
近期做了一个Oracle大批量数据导入、处理、查询的项目,看了不少官方文档和书籍。把相关技术知识点简单整理一下,作为一个专题以供留存。推荐书籍《Oracle性能诊断艺术》《Oracle高效设计》Oracle官方文档表分类堆表Ordinary (heap-organized) table默认表类型,索引和数据分开存储索引组织表Index-organized table含义:主键索引采用Btr原创 2017-04-10 09:57:22 · 933 阅读 · 0 评论 -
Oracle11高性能开发--(2)索引
推荐书籍《Oracle性能诊断艺术》《Oracle高效设计》Oracle官方文档索引索引数据结构分类B树索引 创建方式:create index name on table(field)特点:采用树结构存储,优化= > <等性能一个查询中只能使用一个B树索引(Oracle可设置更改)位图索引 创建方式:create bitmap index name on table(fiel原创 2017-04-10 09:58:23 · 368 阅读 · 0 评论 -
Oracle11高性能开发--(3)批量处理语句总结
批量新增数据INSERT INTO db1_name (field1,field2) SELECT field1,field2 FROM db2_name批量更新数据Update (select * from a,b where a.id=b.id)set a.name = b.name如果是对a表字段更新,要求select中对b表的过滤字段必须有唯一约束批量更新或插入数据MERGE INTO pr原创 2017-04-10 09:59:08 · 445 阅读 · 0 评论 -
Oracle11高性能开发--(4)CBO和解释计划
CBORBORule-Based Optimization 基于规则的优化器, 根据数据库结构(表结构、索引等进行自动优化)。 Oracle10起弃用。CBOCost-Based Optimization 基于代价的优化器, 根据数据库统计信息(系统性能信息、数据信息)进行代价估算,自动选择优化方案。 Oracle8引入,Oracle10替代RBO。CBO系统性能统计无负载时统计负载下系统原创 2017-04-10 10:00:52 · 890 阅读 · 0 评论 -
Oracle11高性能开发--(5)SQL调优
单表访问路径全表扫描Hints:FULLOperation和Options:TABLE ACCESS FULL适用场景:需要对表的大部分数据进行处理 优化目标:减少访问数据量(分区)、变为索引扫描(使用索引字段)示例:select * from c_fraud_detail tRowid访问Operation和Options:TABLE ACCESS BY USER ROWID适用场原创 2017-04-10 10:01:57 · 442 阅读 · 0 评论 -
Oracle11高性能开发--(6)高效数据插入与并行操作
高效数据插入直接路径插入,使用以下Hints Append:用于insert into select语句Append_VALUES :用于insert into 语句设置表、索引或表空间为NOLOGGING,NOLOGGING在以下情况下不写重做日志 直接路径 INSERTSQL*LoaderCREATE TABLE … AS SELECTCREATE INDEXALTER IND原创 2017-04-10 10:02:48 · 4513 阅读 · 0 评论