- 博客(19)
- 收藏
- 关注
原创 如何收集回看sql语句中传入的绑定变量值。
我们知道,当sql语句中有绑定变量的时候,如果需要回看传入的绑定变量值,可以通过 v$sql_bind_capture 视图。但是,v$sql_bind_capture 视图是有限制的。
2021-06-09 15:03:04
304
原创 事务异常或者instance abort时,估算事务rollback时间的方法
如果事务被异常或者手动中断,或者shutdown abort的时候,正在执行的事务会被rollback。那么这个时候如何确认是否被rollback以及其进度呢。我们可以通过 V$FAST_START_TRANSACTIONS 这个View,根据undo使用量来观察。...
2021-06-09 14:36:50
355
原创 使用To_char的时候,某些SQL语句发生突然发生表示问题。
有的时候,我们可能突然遇到在sqlplus上,以前执行很正常的sql语句,突然表示的格式发生了变化。并且发现这个sql语句中使用了To_char函数。例如如下的这个表空间使用率的sql。SQL> set lines 120set pages 100set term offtti offclear colcol TABLESPACE_NAME format a15col "SIZE(MB)" format a20col "USED(MB)" ...
2021-05-31 10:02:10
406
原创 Oracle数据库常见等待事件原因和一般解决方法之(control file sequential read)
control file sequential readP1: 读取的对象控制文件P2: 控制文件开始读取时候的block号P3: 读取的block数- 发生的条件和场景。由于控制文件包含最后一个事务的scn,经常被更新。通常由于该等待事件导致i/o性能问题很少,如果发现性能问题,需要检查如下几点。1. 是否有大量的DML操作。2. 是否有rman在进行控制文件的备份。3. 是否将多个控制文件放入了同一个磁盘。4. 是否分配了过多的控制文件。5. 是否频繁的发生手动com
2021-05-19 11:55:26
981
3
原创 收集使用DBLINK进行分布式查询的10046信息。
在使用dblink访问远端表的时候,查询或者结合等操作大多会在远端数据库执行,当发生性能问题的时候,如何收集本地语句和远端语句的10046 trace呢?例子:SQL> select * from T1@DBLINKR1201; ID---------- 1DBLINK的定义SQL> col OWNER format a21col DB_LINK format a28col USERNAME format a10col HOS
2021-04-12 10:34:17
135
原创 Oracle 12.2 索引使用的跟踪功能(Index Usage Tracking)
我们知道索引对于一个sql语句的执行性能有很大的影响。那么如果判断索引是否被使用以及使用的状态呢。Oracle有专门的索引使用状况的跟踪,这并不是一个新功能,只不过12.2之后对此进行了改善。12.2之前,为了跟踪索引信息,需要设置monitoring usage。 比如: alter index <Index_Name> monitoring usage;看一下设定后的状态。MONITORING列是YES ,表明处于监视的状态。 select * from v$obje
2021-04-06 10:31:21
696
原创 关于PDB上无法查询v$resource_limit的信息
通过查询v$resource_limit可以获得DB当前的使用状况信息。比如说,可以查询当前session数,启动之后的最大session数和session最大限制的数量。select CURRENT_UTILIZATION, MAX_UTILIZATION, LIMIT_VALUE from v$resource_limit where resource_name = 'sessions';CURRENT_UTILIZATION MAX_UTILIZATION LIMIT_VALUE---
2021-04-01 10:42:02
465
原创 Oracle DB的层次查询与递归查询。
我们先举个例子。SQL> create table TEST01 (C1 varchar2(20),C2 varchar2(20), C3 number(5));Table created.SQL> create index INX_PRODUCT on TEST01 (C1);Index created.SQL> insert into TEST01 values ('LIAONING','DALIAN',1);insert into TEST01 values
2021-03-31 10:27:13
266
原创 结果缓存无法使用,RESULT_CACHE_MAX_SIZE值无法更改的问题。
最近遇到了一个RESULT_CACHE_MAX_SIZE 参数值无法更改的问题。首先我们需要知道RESULT_CACHE_MAX_SIZE 什么。RESULT_CACHE_MAX_SIZE 是结果缓存能够使用sga内存的最大大小的限制参数。当我们需要使用结果缓存的时候,这个值一定不能是0。并且以下的查询结果是ENABLED .SQL> SELECT dbms_result_cache.status() FROM dual;DBMS_RESULT_CACHE.STATUS()...
2021-03-29 12:53:01
2078
5
原创 Oracle数据库常见等待事件原因和一般解决方法之(Enq: TM – contention)
通常我们判断Oracle数据库的性能是否有问题,需要衡量一些指标值。其中很重要的一个要素就是等待事件。我们通常可以通过AWR报告或者是DBA_HIST_SYSTEM_EVENT视图来找到这些等待事件。Top 5 Timed Foreground Events~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Avg...
2021-03-25 21:06:35
2648
原创 Oracle数据库固定执行计划的方法总结
Oracle数据库中执行sql的时候,优化器会根据优化器统计信息和一些参数来生成“它认为最好的“执行计划。但是并不能够保证每一次都会选择最优的哪个执行计划。如果遇到了sql在一定时间段执行的时候性能变差。并且发现它的执行计划发生了变化,那么可以考虑固定哪个”好的”执行计划。当然,必须保证sql语句没有被修改,是同一个sql。1. SQL Plan Management (SQL计划管理,简称SPM)这是Oracle推荐使用的一种方法。使用起来也很简单。以下是一个手动固定的例子。cr
2021-03-24 18:04:42
3010
3
原创 2021-03-23转发《浅谈Oracle RAC --概要》
我用#优快云#这个app发现了有技术含量的博客,小伙伴们求同去《浅谈Oracle RAC --概要》, 一起来围观吧 https://blog.youkuaiyun.com/weixin_50510978/article/details/114994455?utm_source=app&app_version=4.5.5
2021-03-23 22:21:30
160
原创 2021-03-23转发《ORACLE CBO 的 SQL 自动转换(Cost Based Transformations)之一》
我用#优快云#这个app发现了有技术含量的博客,小伙伴们求同去《ORACLE CBO 的 SQL 自动转换(Cost Based Transformations)之一》, 一起来围观吧 https://blog.youkuaiyun.com/weixin_50513167/article/details/115124637?utm_source=app&app_version=4.5.5...
2021-03-23 22:20:48
111
原创 High SCN的问题
经常会有人遇到数据库的alert中出现如下信息。************************************************************Warning: The SCN headroom for this database is only xx days!/hours *******************************************
2016-09-14 10:30:50
702
原创 ORA-00445错误
ORA-00445: background process “J000” did not start after string seconds有时在alert.log中还有 kkjcre1p: unable to spawn jobq slave process。通过语句发现sys@ORCL> select count(*) from dba_jobs; COUNT(*)----------
2016-08-17 12:13:57
1712
原创 Temp segment 使用的一些总结
Temp segment 使用的一些总结。关于temp tablespace的说明 截取自 http://database.51cto.com/art/201107/273018_all.htm临时表空间主要用途是在数据库进行排序运算、管理索引、访问视图等操作时提供临时的运算空间,当运算完成之后系统会自动清理。当oracle里需要用到sort的时候,PGA中sort_area_size大小不
2016-07-20 16:16:25
852
原创 导出non-cdb作为一个pdb到cdb中。(change a non-cdb to a pdb)
今天做cdb,pdb的另外一个实验。 就是将non-cdb作为一个pdb导入到cdb当中去。我现在的库是cdb的库,所以需要切换成non-cdb。export ORACLE_SID=testdbSQL> show con_name;CON_NAME------------------------------testdb停止这个库,然后用read-only方式启动SQL> shutdown i
2016-03-11 11:53:16
1509
原创 在相同CDB下进行unplug,plug PDB的操作。(plug or unplug a pdb using same cdb)
pdb cdb plug unplug
2016-03-10 15:45:53
1075
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人