Oracle快速收集AWR的方案】的更多相关文章

记一种方便的awr收集方法,该脚本可以按小时收集目标时段的awr 素材:awr_generate.sql(具体脚本内容请见本文末尾) (1)将awr_generate.sql置于数据库服务器本地路径,如F:\perf\awr下 (2)sqlplus连接数据库 C:\Users\Administrator>sqlplus / as sysdba (3)调用SQL脚本,时段参数等 SQL> @F:\perf\awr\awr_generate.sql Current Instance~~~~~~~~…
环境:Oracle 11.2.0.4 采用并行的方式,快速收集全库统计信息,多用于跨版本升级之后,对全库的统计信息重新进行快速收集: --开启计时 set timing on --设置并行收集 exec dbms_stats.set_global_prefs('CONCURRENT','TRUE');   --开始收集全库统计信息 begin dbms_stats.gather_database_stats( ESTIMATE_PERCENT=>DBMS_STATS.AUTO_SAMPLE_SI…
Oracle中的AWR,全称为Automatic Workload Repository,自动负载信息库.它收集关于特定数据库的操作统计信息和其他统计信息,Oracle以固定的时间间隔(默认为1个小时)为其所有重要的统计信息和负载信息执行一次快照,并将快照存放入AWR中.这些信息在AWR中保留指定的时间(默认为1周),然后执行删除.执行快照的频率和保持时间都是可以自定义的. AWR的引入,为我们分析数据库提供了非常好的便利条件(这方面MySQL就相差了太多).曾经有这样的一个比喻——“一个系统,…
1.需求概述 2.实施步骤 3.回退方案 1.需求概述 某数据库由于整体统计信息不准确,多次出现部分业务SQL选错执行计划,从而导致性能下降影响到最终用户体验,目前通过SQL_PROFILE绑定执行计划临时解决,但此方法不够灵活,后续维护工作量也会增加. Oracle优化器(CBO)依赖数据库统计信息来计算目标SQL各种可能的执行路径的成本,并从中选择一条成本值最小的执行路径来作为目标SQL的执行计划.如果统计信息不准确甚至是错误,会导致优化器选择错误SQL执行计划的概率大大增加. 目前计划对该…
Oracle->自动发送AWR报告 2016年9月21日 09:31 需求描述: 每日或定期手动使用AWR报告来检查Oracle数据库状态不仅耗时也费力,需求使用脚本自动收集AWR报告.   分析方案: 收集AWR报告的脚本:$ORACLE_HOME/rdbms/admin/awrrpt.sql ->主要运行脚本. 首先来查看脚本都做了写什么,用了哪些视图. cat $ORACLE_HOME/rdbms/admin/awrrpt.sql |grep -v 'Rem'|grep -v '^--'…
oracle 快速删除大批量数据方法(全部删除,条件删除,删除大量重复记录) 分类: ORACLE 数据库 2011-05-24 16:39 8427人阅读 评论(2) 收藏 举报 oracledeletetablesqllogginginsert 全部删除 如果是删除某个表的所有数据,并且不需要回滚,使用 TRUNCATE 就ok了.关于Trancate 参见这里http://blog.csdn.net/gnolhh168/archive/2011/05/24/6442561.aspx SQL…
[Oracle]快速构造大量数据的方法: create table tab001(id integer primary key, val varchar2(100)); insert into tab001 select i+j,rpad(to_char(i+j),100,'A')   from  (          with DATA2(j) as (                            select 0 j from DUAL                       …
  1.情景展示 根据现有的表,建一个新的表,要求:新表的结构与原有表的表结构一模一样,如何快速实现? 根据现有的表,建一个新的表,要求:新表的结构.数据与原表一模一样,如何实现快速复制旧表? 2.解决方案 只复制表结构 语法: create table newTable as select * from oldTable where 1=2 查看执行结果 2018/12/07 思考:为什么能够实现只复制表结构和没有复制表数据? 那是因为查询条件:1=2,只能查出的数据为空. 复制表结构和表数据…
  oracle 快速备份表数据 CreateTime--2018年2月28日17:04:50 Author:Marydon UpdateTime--2017年1月20日11:45:07 1.1.9.3 备份表数据 语法: CREATE TABLE 表名_BAK/_日期 AS SELECT * FROM 要备份的表名 举例: CREATE TABLE TABLE_BAK AS SELECT * FROM TABLE 应用场景:删除之前先做备份 --备份2017年符合条件的表数据 CREATE T…
Oracle->自定义调用AWR&ADDM 需求描述: 前面设定每天自动生成AWR用于提供前一天的数据库状态信息,但因数据库和信息过多不利于直观检查.此次新增ADDM诊断. ADDM诊断脚本分析: $ORACLE_HOME/rdbms/admin/addmrpt.sql--ADDM自动诊断资料库的主脚本 用于显示当前的数据库和实例,并调用@@addmrpti.sql脚本 [oracle@xxx~]$ cat $ORACLE_HOME/rdbms/admin/addmrpt.sql |grep…
收集oracle统计信息 优化器统计范围: 表统计: --行数,块数,行平均长度:all_tables:NUM_ROWS,BLOCKS,AVG_ROW_LEN: 列统计: --列中唯一值的数量(NDV),NULL值的数量,数据分布: --DBA_TAB_COLUMNS:NUM_DISTINCT,NUM_NULLS,HISTOGRAM: 索引统计: --叶块数量,等级,聚簇因子: --DBA_INDEXES:LEAF_BLOCKS,CLUSTERING_FACTOR,BLEVEL: 系统统计:--…
AWR(Automatic Workload Repository)报告是我们进行日常数据库性能评定.问题SQL发现的重要手段.熟练掌握AWR报告,是做好开发.运维DBA工作的重要基本功. AWR报告的原理是基于Oracle数据库的定时镜像功能.默认情况下,Oracle数据库后台进程会以一定间隔(一小时)收集系统当前状态镜像,并且保存在数据库中.生成AWR报告时,只需要指定进行分析的时间段(开始镜像编号和结束镜像编号),就可以生成该时间段的性能分析情况.AWR镜像保存在数据库中的时间为一个月左右…
1:用merge into 进行匹配更新和插入,2: 开启并行,提高速度3: 如果可以的话加NOLOGING 不写入日志4:如果数据有规律的话,分批次执行 1.使用marge快速插入; MERGE /*+ append */   INTO A dUSING (select * B where ...) f    ON (d.account_no = f.account_no)WHEN MATCHED THEN    update set acc_date = f.acc_date,...WHEN…
AWR(Automatic Workload Repository)报告是我们进行日常数据库性能评定.问题SQL发现的重要手段.熟练掌握AWR报告,是做好开发.运维DBA工作的重要基本功. AWR报告的原理是基于Oracle数据库的定时镜像功能.默认情况下,Oracle数据库后台进程会以一定间隔(一小时)收集系统当前状态镜像,并且保存在数据库中.生成AWR报告时,只需要指定进行分析的时间段(开始镜像编号和结束镜像编号),就可以生成该时间段的性能分析情况.AWR镜像保存在数据库中的时间为一个月左右…
在ORACLE数据库当中,有时候会使用ALTER SYSTEM KILL SESSION 'sid,serial#'杀掉一个会话进程,但是使用这个SQL语句杀掉会话后,数据库并不会立即释放掉相关的资源,有时候你会发现锁定的资源很长时间也不会释放,即使会话状态为"KILLED",依然会阻塞其它会话. 下面根据Eygel的"Oracle中Kill session的研究",构造一个案例看看kill session到底做了什么.如下所示 会话1: SQL> conn…
转载:http://www.cnblogs.com/kerrycode/p/4034231.html 在ORACLE数据库当中,有时候会使用ALTER SYSTEM KILL SESSION 'sid,serial#'杀掉一个会话进程,但是使用这个SQL语句杀掉会话后,数据库并不会立即释放掉相关的资源,有时候你会发现锁定的资源很长时间也不会释放,即使会话状态为“KILLED”,依然会阻塞其它会话. 下面根据Eygel的"Oracle中Kill session的研究",构造一个案例看看k…
原文出处:http://blog.csdn.net/yueguanghaidao/article/details/7019377 select * from scott.salgrade; /*解锁scott用户*/alter user scott account  unlock; alter user scott account lock; /*修改用户密码(密码必须以字母开头)*/alter user scott identified by scott123; alter user scot…
工作需求:项目中需要把生产库中所有的AWR报告dump出来,然后导入到方便测试的数据库中.在测试库中的AWR报告需要根据dbid和实例名逐个导出,如果遇到很多再加上RAC系统,会很麻烦.在网上找了一些脚本,发现没有适合自己的,所以就自己学习了一个存储过程来实现这样的功能. 说明:在$ORACLE_HOME/rdbms/admin/awrrpti.sql中可以看到,生成AWR报告主要使用DBMS_WORKLOAD_REPOSITORY.awr_report_html包.至于喜欢玩哪种方式,要看个人…
仅收集我在开发过程中觉得对我个人很有帮助的 ctrl + e ;查看最近打开的工程文件 ctrl+shift+n比如要跳转到templates/default/index.html基本上输入te/de/in,就可以出现上面的文件了,当然输入的越详细,给出的结果越准确,支持模糊查询 ctrl + / : 单行注释 ctrl + shift + / : 块注释 ctrl + F12; 显示类的成员属性和方法 自定义快捷键 shift+Q: 在浏览器中打开 通过自定义快捷键(搜索"open"…
目标 提供一个oracle数据库统一访问代理层,统一管理所有oracle数据库用户名的连接池,让多个应用系统相同的数据库用户公用连接池以节省oracle服务器的总连接数,并且提供统一管理oracle能力. 由访问层维护后端oracle不同用户的连接池,应用通过jdbc协议告知访问层需要操作的数据库对象的用户名,访问层即从对应用户名的连接池中取出一条数据库连接执行sql.达到相同用户名连接复用效果.例如,user2&sql传入访问层,访问层engine定位到第一个oracle的user2用户名连接…
windows7 系统下,鼠标移至任务栏右键启动任务管理器->选择服务->点击右下角服务选项 ->选中名称,键盘输入O(大写),快速找到ORACLE相关服务进程 ->将所有的ORACLE 服务启动即可 0…
问题的来由 在kubernetes集群的生产中,经常遇到这样的一个问题,就是在应用大规模更新时,大量容器删除而后大量容器创建,创建的容器需要很长时间才能就绪.这其中一个可能的原因,就是大量容器删除释放ip过于缓慢,导致新创建的容器无法及时获取ip,从而无法及时启动. 这种情况普遍存在于ip池较小或者应用升级需要ip保持不变的情景下,具有较为普遍的意义.针对这一情况,笔者先前做过一个方案用以解决该问题,在这里与大家分享一下. k8s容器删除的流程 首先,我们先来梳理下容器删除的整个流程,看下为什么…
[第一步]找到awrrpt.sql文件 [ora11g@vm-kvm11820-app ~]$ locate awrrpt.sql /DATA/opt/app/ora11g/product//rdbms/admin/awrrpt.sql [第二步]进入数据库 [ora11g@vm-kvm11820-app ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on Thu Apr 4 09:50:09 2019 Copyr…
Oracle数据库有三种标准的备份方法,它们分别是导出/导入(EXP/IMP).热备份和冷备份.导出备件是一种逻辑备份,冷备份和热备份是物理备份. 一. 导出/导入(Export/Import) 利用Export可将数据从数据库中提取出来,利用Import则可将提取出来的数据送回到Oracle数据库中去. 1. 简单导出数据(Export)和导入数据(Import) Oracle支持三种方式类型的输出: (1).表方式(T方式),将指定表的数据导出. (2).用户方式(U方式),将指定用户的所有…
sqlldr是oracle自带的快速导入批量数据的工具,常用于性能测试.考虑手工构造控制文件较为繁琐,因此使用脚本完成批量数据的自动导入. 基本知识 sqlldr命令语法 sqlldr dbname/dbpassword@oracle_sid control=control.ctl log=sqlldr.log bad=sqlldr.bad 选项介绍 .control 控制文件:包含导入数据和表的信息 .log 日志文件:导入过程中的日志记录 .bad 失败文件:导入失败的数据记录 .rows…
来自: http://woainichenxueming.iteye.com/blog/726541 一. 优化oracle中的sql语句,提高运行效率 1. 选择最有效率的表名顺序(只在基于规则的优化器中有效) ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名, FROM子句中写在最后的表(基础表 driving table)将被最先处理, 在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表. 如: 表T_USER有16384条记录, 表T_DEPARTME…
Oracle 错误大全 ORA-00001: 违反唯一约束条件 (.)ORA-00017: 请求会话以设置跟踪事件ORA-00018: 超出最大会话数ORA-00019: 超出最大会话许可数ORA-00020: 超出最大进程数 ()ORA-00021: 会话附属于其它某些进程:无法转换会话ORA-00022: 无效的会话 ID:访问被拒绝ORA-00023: 会话引用进程私用内存:无法分离会话ORA-00024: 单一进程模式下不允许从多个进程注册ORA-00025: 无法分配 ORA-0002…
Oracle的家目录进行快速克隆,对同类型机器配置很高效的! 01.确认你在克隆数据库时,原数据库已经关闭 sqlplus   /   as sysdba; shutdown immediate ; lsnrctl stop ps –ef|grep ora_    ###查看oracle进程 02. 对$ORACLE_BASE目录下的product进行备份 zip  –r product.zip    product 03.移动到目标机器或目标目录解压 unzip   –d  target_pa…
Oracle 客户端建立了TNS连接后,可以快速查看连接是否成功. 1.在cmd中执行命令tnsping orcl(全局数据库名称),即可.以下是命令执行后的示例. 2.如果上一步成功,可以进一步执行数据库相关操作命令. 在cmd中先执行命令:sqlplus system/password orcl,之后就可以输入sql命令了,例如:select 1+2+3 from dual.…
--命令生成AWR报告oracle@linux:~> sqlplus / as sysdba SQL*Plus: Release 11.1.0.7.0 - Production on Fri Aug 17 16:22:15 2012 Copyright (c) 1982, 2008, Oracle.  All rights reserved. Connected to:Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bi…