查询优化器的参数设置
optimizer_mode first_rows_n, all_rows设置,设置成all_rows走全表扫描,根据实际情况设置此设置一般在hint里,例如 select /*ALL_ROWS*/ * from scott.emp;db_file_multiblock_read_count 多块读取,一次读多少块,移动生产库一般设置为16。optimizer_index_cost_adj 用于通过索引扫描改变...
收集统计信息语句详解
收集统计信息exec DBMS_STATS.GATHER_TABLE_STATS(ownname=>'DBACCADM',tabname=>'CS_CUSTPREOPEN_INFO_CHG',estimate_percent=>10,method_opt=>'for all columns size 1',no_invalidate=>false,cascade=>true,degree => 10);estimate_percent 指明是否采样收集统计信息,100等于NULL,表示不使用采样,移动...
使用oradebug dump processstate 来诊断enq: TX - row lock contention
朋友的应用程序在年度结转时调用存储过程时hang住了.经过调试存储过程发现执行到下面的语句时被hang住.UPDATE t_config_info SET last_do_time = systimestamp WHERE config_id = config_record.config_id; IF SQL%ROWCOUNT = 0 THEN ...
oracle自治事务(PRAGMA AUTONOMOUS_TRANSACTION)
<p style="margin-top:10px;margin-bottom:10px;font-family:Arial;font-size:16px;line-height:24px;white-space:normal;background-color:#EDEDED;">数据库事务是一种单元操作,要么是全部操作都成功,要么全部失败。在Oracle中,一个事务是从执行第一个数据管理语言(DML)语句开始,直到执行一个COMMIT语句,提交保存...
OSWatch的安装和使用
对oracle数据库做性能检查时,oracle的各项性能指标可以通过AWR报告中的数据进行展现,但对操作系统性能的分析,却需要通过手工输入命令去收集数据,然后通过其他一些工具处理后才能生成图表,而整个处理过程是非常...
Oracle OS Watcher 工具 使用详解
一.OSWatcher 说明OSWatcher 是Oracle 提供的一个用于操作系统监控的工具包,分Windows 和Linux 2个版本。 Linux 下的下载参考:OS Watcher Black Box UserGuide [ID 301137.1]Windows平台下载:OSWatcher For Windows (OSWFW) User Guide [ID 433472.1] 也可以从我的CSDN 下载:O...
dbms_xplan之display_cursor函数的使用
<span style="color:#555555;font-family:'microsoft yahei';font-size:15px;line-height:35px;white-space:normal;background-color:#FFFFFF;"> DBMS_XPLAN包中display_cursor函数不同于display函数,display_cursor用于显示SQL语句的真实的执行计划,在大多数情况下,显示真实</span><br s...
获取SQL执行计划的方式:
获取SQL执行计划的方式:<br /> EXPLAIN PLAN <br /> 估算 <br /> 忽略绑定变量<br /> 非执行<br />SQL_TRACE <br />真实计划,需要用TKPROF工具解析<br />可以获得绑定变量值<br />EVENT 10053<br />真实计划<br />研究执行计划产生的原因<br />AUTOTRACE <br />内部...
ORACLE查看SQL的执行次数/频率
ORACLE查看SQL的执行次数/频率 在ORACLE数据库应用调优中,一个SQL的执行次数/频率也是常常需要关注的,因为某个SQL执行太频繁,要么是由于应用设计有缺陷,需要在业务逻辑上做出优化处理,要么是业务特殊性所导致。如果执行频繁的SQL,往往容易遭遇一些并发性的问题。那么如何查看ORACLE数据库某个...
ASH 的学习
最近需要监控数据库中的sql 资源消耗相关信息。第一反应就是查看awr报告,但是awr报告的监控时间最短为10分钟,而我们的监控是准实时的,5分钟需要监控一次,于是就想到了查看ash相关信息。简单介绍一下ash1. 10g之前用户的连接将产生会话,当前会话记录保存在v$session中;处于等待...
ORA-10458 ORA-01196 ORA-01110报错解决
今天接到上家公司一个运维的电话,说dg库启动不了,发给我一个报错ORA-10458: standby database requires recoveryORA-01196: file 1 is inconsistent due to a failed media recovery sessionORA-01110: data file 1: ...
rowid与rownum
rowid为表数据的唯一标识,默认情况为自增,但是如果表的数据有删除的时候就不一定是自增的了rownum为查询表结果的逻辑标识,每次的查询结果可能都不一样,可以将其排序然后在根据rownum查询eg : select log,rownum from( select log from ALERT_1_4 t order by log desc)...
ORA-00313, ORA-00312, ORA-27037 in Standby Database
ORA-00313, ORA-00312, ORA-27037 in Standby Database [ID 601835.1] 修改时间20-APR-2009 类型PROBLEM 状态MODERATED In this Document&nbs...
数据库的智能化运维和故障平台预测
今日看了华夏银行的数据库基础运维管控系统,发现有一个性能基线管理,也就是说收集平时运维正常的数据,并形成一个基线,当生产的数据超出基线的范围时就预警,这个比单一的监控阀值或者柜子要好不少,其他的方法和我们读AWR报告比较类似,查看TOP5的SQL,查看数据库的资源消耗等预警,他们这个系统还有一个特色的地方就是...
DG报错的处理
上周搭建了一个DG,数据正常传递过来并应用,但是查看alert日志有个报错经常出现ORA-00312: online log 5 thread 0: '/u01/app/oracle/oradata/LRWLDB/redo05.log'ORA-00315: log 5 of thread 0ORA-00367: checksum error in log file header/u01/app/oracle/diag/rdbms/lrwldbdg/LRWLDBDG/trace/LRWLDBDG_rfs_20079.tr...
使用sql查alert日志
1、查看预警日志文件(alert_sid.log)的位置 SQL> show parameter dump NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ background_core_dump string partial background_dump_dest string /u01/oracle/admin/bdump core_dump_de...
rman duplicate搭建第二个 dg
1、备库网络设置cat /etc/hosts127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 lrwltestdb //删除lrwltestdb::1 localhost localhost.localdomain localhost6 localhost6.localdomain6192.168.0.21 lrwldb192.168.0.28 lrwld...
【DATAGUARD 学习】学习DATAGUARD 过程中遇到的问题
错误1:ORA-16057: DGID from server not in Data Guard configuration原因:主库没有设置参数log_archive_config解决方法*.log_archive_config='dg_config=(orcl,testdg)'alter system set log_archive_config='dg_co...
Oracle闪回查询恢复delete删除数据
Flashback query(闪回查询)原理 Oracle根据undo信息,利用undo数据,类似一致性读取方法,可以把表置于一个删除前的时间点(或SCN),从而将数据找回。Flashback query(闪回查询)前提:SQL> show parameter undo;NAME ...
dg归档没有传输到备库
昨天使用duplicate搭建了一个dg,但是发现dg的归档一直没有传输,查看主备库的alert日志没有反应,主库切换了一下日志,查看alert日志还是没有报错,到底是什么原因导致的查看主备库的状态发现主库状态不对,网上搜索了一下,一般日志没有应用都是参数文件没有配置正确,其中传递日志的参数(LOG_ARCHIVE_DEST_2)出问题的...