oracle进阶与提高讲义教程

上传人:aa****6 文档编号:57286497 上传时间:2018-10-20 格式:PPT 页数:81 大小:152KB
返回 下载 相关 举报
oracle进阶与提高讲义教程_第1页
第1页 / 共81页
oracle进阶与提高讲义教程_第2页
第2页 / 共81页
oracle进阶与提高讲义教程_第3页
第3页 / 共81页
oracle进阶与提高讲义教程_第4页
第4页 / 共81页
oracle进阶与提高讲义教程_第5页
第5页 / 共81页
点击查看更多>>
资源描述

《oracle进阶与提高讲义教程》由会员分享,可在线阅读,更多相关《oracle进阶与提高讲义教程(81页珍藏版)》请在金锄头文库上搜索。

1、ORACLE 进阶与提高,王忠海 2018/10/20,主要内容,数据库优化 RMAN RAC(如果有时间的话),数据库优化,操作系统设置不当 数据库参数设置不当 库结构设计不合理 应用程序语句不当,可能影响数据库性能的原因有哪些?,AIX5.3中操作系统优化,Oracle用户资源限制 操作系统核心参数 补丁,AIX中一些基本的查看资源的命令,如何查看CPU数量 如何查看内存数量 如何查看交换空间 文件系统使用情况,AIX基本命令:版本信息,# oslevel5.3.0.0 # oslevel -r5300-07 # oslevel -s5300-07-01-0748,AIX基本命令:查看CP

2、U信息,# lsdev -Cc processorproc0 Available 00-00 Processorproc2 Available 00-02 Processorproc4 Available 00-04 Processorproc6 Available 00-06 Processor # lsattr -EHl proc0attribute value description user_settablefrequency 2096901000 Processor Speed Falsesmt_enabled true Processor SMT enabled Falsesmt_

3、threads 2 Processor SMT threads Falsestate enable Processor state Falsetype PowerPC_POWER5 Processor type False,AIX基本命令:查看内存信息,bootinfo r 16318464 # lsdev -Cc memory L2cache0 Available L2 Cache mem0 Available Memory lsattr -EHl mem0 attribute value description user_settable goodsize 15936 Amount of

4、usable physical memory in Mbytes False size 15936 Total amount of physical memory in Mbytes False,AIX基本命令:管理交换空间,查看交换空间 # lsps -a Page Space Physical Volume Volume Group Size %Used Active Auto Typehd6 hdisk0 rootvg 3072MB 1 yes yes lv 设置交换空间 smit chps 交换空间设置建议,文件系统的设置,看看下面的输出。您认为最该调整哪个文件系统大小? # df -

5、m Filesystem MB blocks Free %Used Iused %Iused Mounted on /dev/hd4 256.00 252.12 1% 2353 1% / /dev/hd2 4096.00 2613.59 37% 38138 6% /usr /dev/hd9var 4096.00 4003.59 3% 882 1% /var /dev/hd3 128.00 120.16 5% 1938 1% /tmp /dev/hd1 1024.00 514.95 50% 3742 4% /home 正是tmp文件系统!如果不调整,安装数据库时将无法成功。,AIX5.3核心参数

6、调整,适用范围在AIX5.3-01以上 需要调整的参数:lru_file_repage minperm%、maxperm% 和 maxclient% 等等。 参考文档:在 AIX 中运行 Oracle的优化技巧.mht,oracle用户的资源限制,修改/etc/security/limits 看一个实例: oracle:fsize = 209715100data = 20971510stack = 20971510core = 20971510rss = 25165824,AIX中Oracle参数设置,SGA设置建议SGA不要超过总内存数*maxperm%,回顾:重要的SGA内存参数,Shar

7、ed_pool_size Db_cache_size Db_keep_cache_size Large_pool_size Log_buffer,回顾:重要的PGA内存参数,PGA_AGGREGATE_TARGET,如何在AIX5.3中将SGA定在内存中?,修改系统参数:v_pinshm 修改Oracle参数:LOCK_SGA 参考文档:如何在Aix5.3中将Oracle SGA定在内存中.doc,AIX中其他的需要调整的Oracle参数,TIMED_STATISTICS DB_CACHE_ADVICE optimizer_index_caching optimizer_index_cost_

8、adj,大量导入数据前需要做些什么?,是否需要备份? 估计数据量 考虑设置为非归档模式 考虑删除一些索引,导完之后再创建,大量导入数据之后应该做些什么?,分析表。DBMS_STATS.GATHER_SCHEMA_STATS 考虑设置归档 备份,哪些因素最影响性能?,CPU消耗 内存 磁盘IO 排序,提高数据库性能的方法,用更好的硬件! 说服用户将就着用 优化数据库 优化客户端程序,案例:解决CPU 100%占用,步骤一:检查cpu信息:vmstat 步骤二:定位CPU高消耗进程 ps aux|head -1;ps aux|sort +2 -rn|head -5,案例:解决CPU 100%占用(

9、续),步骤三:定位有问题的语句 SELECT /*+ ORDERED */sql_textFROM v$sqltext aWHERE (a.hash_value, a.address) IN (SELECT DECODE (sql_hash_value,0, prev_hash_value,sql_hash_value),DECODE (sql_hash_value, 0, prev_sql_addr, sql_address)FROM v$session bWHERE b.paddr = (SELECT addrFROM v$process cWHERE c.spid = &pid) ORD

10、ER BY piece ASC /,案例:解决CPU 100%占用(续),步骤四:定位有问题的会话SELECT SID,SERIAL#,USERNAME,TERMINALFROM v$session bWHERE b.paddr = (SELECT addrFROM v$process cWHERE c.spid = &pid) /,案例:解决CPU 100%占用(续),步骤五:采取相关行动 1.杀掉会话alter system kill session sid,serial#; 2.分析原因,优化SQL语句,最具挑战的工作,为什么要优化?,Oracle SQL调整过程,1.确定由高影响力的S

11、QL 2.抽取和解释SQL语句 3.调整SQL语句,用V$SQLAREA确定影响力高的语句,executions disk_reads buffer_gets sorts,哪些工具可以来查看SQL执行计划,autotrace alter session set sql_trace=true; dbms_system.set_sql_trace_in_session explain plan Etc.,查看语句执行计划的简单办法,Set autotrace on Set autotrace traceonly 前提:存在plan_table表。如果不存在,可执行?/rdbms/admin/utl

12、xplan.sql执行语句 相关技巧:set timing onset time on,案例:解读sql语句执行计划,SQL select count(*) from lpmnt;COUNT(*) -1155 Execution Plan - Plan hash value: 3530445977 - | Id | Operation | Name | Rows | Cost (%CPU)| Time | - | 0 | SELECT STATEMENT | | 1 | 3 (0)| 00:00:01 | | 1 | SORT AGGREGATE | | 1 | | | | 2 | INDEX

13、 FAST FULL SCAN| LPMNT_DBID_IDX | 1102 | 3 (0)| 00:00:01 | - Note- dynamic sampling used for this statement Statistics509 recursive calls0 db block gets190 consistent gets105 physical reads0 redo size412 bytes sent via SQL*Net to client381 bytes received via SQL*Net from client2 SQL*Net roundtrips t

14、o/from client6 sorts (memory)0 sorts (disk)1 rows processed,set autotrace的局限性,必须执行一遍语句,explain plan使用方法,Explain plan set statement_id= into table for ,查看explain plan过的语句的执行计划,先做些格式化工作:set pagesize 1000col operation format a20col options format a20col object_name format a20col position format 999 执行语句: select lpad( ,2*(level-1)|operation operation,options, object_name,position from plan_table CONNECT BY PRIOR id = parent_id and statement_id=statement_id;,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号