目标 使用Oracle Enterprise Manager监视性能 使用自动内存管理(AMM) 使用内存指导调整内存缓冲区的大小 查看与性能相关的动态视图 排除无效和不可用对象产生的故障 性能监视

管理内存组件 自动内存管理(AMM):指定分配给实例的总内存(包括SGA和PGA) 自动共享内存管理(ASMM) 通过一个初始化参数指定SGA总内存 Oracle服务器可以管理分配给共享池,Java池,缓冲区高速缓存,流池和大型池的内存量。 手动设置共享内存管理 通过多个单独的初始化参数调整组件的大小 使用适当的内存指导提出建议 启用自动内存管理AMM 初始化参数:memory_max_target和memory_target MEMORY_TARGET 不为零的值,就是sga+pga可分配的最大值。但是此值不能大于MEMORY_MAX_TARGET的值。 ALTER SYSTEM SET MAMORY_MAX_TARGET=[数值] SCOPE=SPFILE; ALTER SYSTEM SET MEMORY_TARGET=[数值] SCOPE=SPFILEL; 启用AMM后,可使用内存大小指导来帮助调整最大内存大小和目标内存大小。Oracle建议使用自动内存管理来简化内存管理任务。 启用自动共享内存管理ASMM 初始化参数:sga_max_size和sga_target SGA_TARGET不为零的值,此值不能大于SGA_MAX_SIZE的值。shared_pool_size+db_cache_size+streams_pool_size+java_pool_size+large_pool_size ALTER SYSTEM SET SGA_MAX_SIZE=[数值] SCOPE=SPFILE; ALTER SYSTEM SET SGA_TARGET=[数值] SCOPE=SPFILE; 手动设置共享内存管理 ALTER SYSTEM SET SHARED_POOL_SIZE=[数值] SCOPE=SPFILE; ALTER SYSTEM SET DB_CACHE_SIZE =[数值] SCOPE=SPFILE; ALTER SYSTEM SET JAVA_POOL_SIZE=[数值] SCOPE=SPFILE; ALTER SYSETM SET STREAMS_POOL_SIZE=[数值] SCOPE=SPFILE; ALTER SYSTEM SET LARGE_POOL_SIZE=[数值] SCOPE=SPFILE; 动态性能统计信息

  系统范围

  V$SYSSTAT

  V$SYSTEM_EVENT

  特定于会话

  V$SESSTAT

  V$SESSION_EVENT

  特定于服务

  V$SERVICE_STATS

  V$SERVICE_EVENT

  select statistiC#,name,class,value,stat_id from v$sysstat;

  select sid,statistic#,value from v$sesstat;

  select service_name_hash,service_name,stat_id,stat_name,value from v$service_stats;

  select event,total_waits,total_timeouts,time_waited,average_wait,time_waited_micro from v$system_event

  select sid,event,total_waits,total_timeouts,time_waited,average_wait,max_wait,time_waited_micro,event_id from v$session_event

  select service_name,service_name_hash,event,event_id,total_waits,total_timeouts,time_waited,average_wait,time_waited_micro from v$service_event

  实例/数据库

  V$DATABASE

  V$INSTANCE

  V$PARAMETER

  V$SPPARAMETER

  V$SYSTEM_PARAMETER

  V$PROCESS

  V$BGPROCESS

  V$PX_PROCESS_SYSSTAT

  V$SYSTEM_EVENT

  磁盘

  V$DATAFILE

  V$FILESTAT

  V$LOG

  V$LOG_HISTORY

  V$DBFILE

  V$TEMPFILE

  V$TEMPSEG_USAGE

  V$SEGMENT_STATISTICS

  内存

  V$BUFFER_POOL_STATISTICS

  V$LIBRARYCACHE

  V$SGAINFO

  V$PGASTAT

  争用

  V$LOCK

  V$UNDOSTAT

  V$WAITSTAT

  V$LATCH

  复制代码

  无效和不可用对象 对性能的影响: PL/SQL代码对象要重新编译 索引要重建 无效PL/SQL对象,可通过查询数据字典来查看PL/SQL对象的当前状态。 SELECT OWNER,OBJECT_NAME,OBJECT_TYPE FROM DBA_OBJECTS WHERE STATUS='INVALID'; 默认情况下,每24小时会检查一次“所有者的无效对象计数”度量,如果单个所有者的无效对象数超过2个,就会发出预警。

  无效和不可用对象的处理

  不做任何处理,如果需要,大多数PL/SQL对象在被条用时会自动重新编译。用户在对象重新编译时会经历短暂的延迟。

  手动重新编译无效对象

  ALTER PROCEDURE .<procedure_name> COMPILE;

  PACKAGE包需要执行两个步骤

  ALTER PACKAGE .<package_name> COMPILE;

  ALTER PACKAGE .<package_name> COMPILE BODY;

  不可用索引,可查询视图DBA_INDEXES数据字典和DBA_IND_PARTITIONS视图

  SELECT OWNER,TABLE_NAME,INDEX_NAME FROM DBA_INDEXES WHERE STATUS='UNUSEABLE';

  SELECT INDEX_OWNER,PARTITION_NAME,INDEX_NAME FROM DBA_IND_PARTITIONS WHERE STATUS='UNUSEABLE';

  重建索引

  ALTER INDEX .<index_name> REBUILD;

  ALTER INDEX .<index_name> REBUILD ONLINE;

  ALTER INDEX .<index_name> REBUILD TABLESPACE <tablespace_name>;

  复制代码

  如果省略了TABLSPACE子句,则会在索引曾经所在的相同表空间中重建索引。使用REBUILD ONLINE子句,用户可以在重建时继续更新索引表。(如果不使用online关键字,用户必须等待重建完成后才能对受影响的表执行DML.如果索引不可用,即使用online关键字,也不会在重建过程中使用该索引。) 注意:重建索引是需要有可用于重建的空闲空间。重建前需验证是否有足够的空间。会使用到TEMP表空间。 总结: 自动内存管理(AMM),主要是管理PGA+SGA内存的分配,两个初始化参数memory_max_target&memory_target控制 自动共享内存管理(ASMM),管理SGA内存组件,sga_max_size&sga_target参数控制,shared_pool_size,db_cache_size,java_pool_size,large_pool_size,streams_pool_size 手动管理sga内存组件,shared_pool_size,db_cache_size,java_pool_size,large_pool_size,streams_pool_size 查看与性能相关的动态视图 无效对象和不可用索引的处理方式 (编辑:雷林鹏 来源:网络)

Les13 性能管理的更多相关文章

  1. APM (应用性能管理)

    在信息科学和系统控制领域,APM是用来监控和管理应用软件是否有效运行的.APM通过监测和分析应用的表现去保证软件应用的良好运行,APM已经商用. 基本定义 APM = Application Perf ...

  2. Pinpoint是一个开源的 APM (Application Performance Management/应用性能管理)工具,用于基于java的大规模分布式系统,基于Google Dapper论文

    Pinpoint是一个开源的 APM (Application Performance Management/应用性能管理)工具,用于基于java的大规模分布式系统,基于Google Dapper论文 ...

  3. 【DB2】性能管理视图

    1.性能管理部分视图列表 可以使用命令db2 list tables for schema sysibmadm获取所有的性能管理视图 视图名称              模式名            ...

  4. Pinpoint - 应用性能管理(APM)平台实践之部署篇

    0.0 前言 国内的APM行业这两年刚刚起步,但是在国外却比较成熟了,并且由于这两年人力成本的快速提高,国内外涌现了几家非常不错的APM企业,例如APPdynamic,Dynamic,NewRelic ...

  5. Java虚拟机性能管理神器 - VisualVM(4) - JDK版本与VisualVM版本对应关系

    Java虚拟机性能管理神器 - VisualVM(4)    -  JDK版本与VisualVM版本对应关系 JDK版本与VisualVM版本对应关系说明 JDK版本与VisualVM版本对应关系 参 ...

  6. Java虚拟机性能管理神器 - VisualVM(3) 插件安装与更新路径配置

    Java虚拟机性能管理神器 - VisualVM(3)  插件安装与更新路径配置 插件路径地址配置方法: VisualVM打开后,会发现功能比较单一,只有概述.监视.线程.抽样器.Profiler五个 ...

  7. Java虚拟机性能管理神器 - VisualVM(2) 入门

    一下载VisualVM 最新版本下载 历史版本下载 二启动VisualVM 三VisualVM用户目录 四VisualVM窗口 1应用程序窗口 2详情窗口 五VisualVM插件   Java虚拟机性 ...

  8. Java虚拟机性能管理神器 - VisualVM(1) 简介 - JVM轻量级监控分析神器

    目录(?)[-] 一VisualVM是什么 二如何获取VisualVM 三获取那个版本 四VisualVM能做什么 显示JAVA应用程序配置和运行时环境 显示本地和远程JAVA应用程序运行状态 监控应 ...

  9. 应用性能管理工具PinPoint介绍

    概述: 下面介绍一个开源的 APM (Application Performance Management/应用性能管理)工具 - Pinpoint.一个分布式事务跟踪系统的平台,思路基于google ...

随机推荐

  1. LoadJS

    LoadJS是一个微小的异步加载器为现代浏览器(711字节). https://github.com/muicss/loadjs 介绍 LoadJS是一个微小的异步加载库的现代浏览器(IE9 +). ...

  2. Python学习笔记(一)数据类型

    一.整型和浮点型 Python可以处理任意大小的整数,当然包括负整数,在程序中的表示方法和数学上的写法一模一样 age=10 num=-35 score=98.8 二.布尔类型 布尔值和布尔代数的表示 ...

  3. 爱用bootstrap系列一:Sublime上写H5及运行

    sublime上使用插件快速生成模板文件 第一,你要先下载package control的插件,这是一款用来管理插件的插件 . 可能会由于你所在的网络通过代理访问而导致安装失败,你可以通过下面的步骤来 ...

  4. idea配置scala和spark

    1 下载idea  路径https://www.jetbrains.com/idea/download/#section=windows 2安装spark  spark-2.1.0-bin-hadoo ...

  5. 进程 、进程组、会话、控制终端之间的关系 (转载 http://blog.csdn.net/yh1548503342/article/details/41891047)

    一个进程组可以包含多个进程 进程组中的这些进程之间不是孤立的,他们彼此之间或者存在者父子.兄弟关系,或者在功能有相近的联系. 那linux为什么要有进程组呢?其实提供进程组就是方便管理这些进程.假设要 ...

  6. exec-maven-plugin配置及使用

    背景: 如果你想在项maven生命周期内,运行一段java代码,或者一段独立的程序,或者说我们所指的预执行,初始化某些值,生成某些不能预先生成的文件.那么这样我们就可以使用exec-maven-plu ...

  7. Linux查看本机登陆用户信息(w、who、last和lastlog命令)

    w 命令 查看 Linux 服务器上目前已经登录的用户信息 [root@localhost ~]# w :: up :, users, load average:0.00, 0.00, 0.00 US ...

  8. 【转】安装Vue.js的方法

    安装vue.js的方法   一.简介 Vue.js 是什么 Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的 渐进式框架.与其他重量级框架不同的是,Vue 采用自底向上增量 ...

  9. Django学习笔记之django-debug-toolbar使用指南

    介绍 django-debug-toolbar 是一组可配置的面板,可显示有关当前请求/响应的各种调试信息,并在单击时显示有关面板内容的更多详细信息. github地址 文档地址 安装 pip3 in ...

  10. Python3.x:chrome运行webdriver脚本提示--ignore-certificate-errors

    Python3.x:chrome运行webdriver脚本提示--ignore-certificate-errors 1,分析原因: 根本原因是Chromedriver和Chrome的版本不兼容: 网 ...