关于关键词 的检测结果,共 1383 条
dingjun123 | 2023-05-08 16:27:52 | 阅读(520) | 评论(0)
要在 sql 或 pl/sql 中实现正则表达式,需要使用一组新函数。【阅读全文】
brjl | 2023-04-04 22:15:24 | 阅读(110) | 评论(0)
【oracle】
dingjun123 | 2022-04-14 09:02:29 | 阅读(270) | 评论(0)
filter操作是执行计划中常见的操作,这种操作有两种情况:
1. 只有一个子节点,那么就是简单过滤操作。(不是本文重点)
2. 有多个子节点,那么就是类似nested loops操作,只不过与nested loops差别在于,filter内部会构建hash表(有缓存提高效率,缓存的bucket数目是1024个),对于重复匹配的,不会再次进行循环查找,而是利用已有结果,提高效率。但是一旦重复匹配的较少,循环次数多,也就是类似nested loops,那么这种filter操作将是严重影响性能的操作,可能你的sql几天都执行不完了。(本文讨论重点)
【oracle】
dingjun123 | 2022-04-10 21:06:15 | 阅读(290) | 评论(0)
1.子查询结果集小,用in
2.外表小,子查询表大,用exists
这是完全错误的观点。在8i时代,这经常是正确的,但是现在已经11g了,马上12c就要面世了。其实在oracle 9i cbo就已经优化了in,exists的区别,oracle优化器有个查询转换器,很多sql虽然写法不同,但是oracle优化器会根据既定规则进行查询重写,重写为优化器觉得效率最高的sql,所以可能sql写法不同,但是执行计划却是完全一样的。
【oracle】
brjl | 2021-11-11 06:42:59 | 阅读(420) | 评论(0)
enq:us -contention
brjl | 2021-11-02 20:47:51 | 阅读(980) | 评论(0)
【oracle】
| 2021-10-18 09:48:36 | 阅读(550) | 评论(0)
求每月最小时间
【oracle】
| 2021-10-18 09:48:05 | 阅读(520) | 评论(0)
求每月最小时间
【oracle】
| 2021-10-08 19:09:56 | 阅读(580) | 评论(0)
归档日志(archive log)是非活动的重做日志备份.通过使用归档日志,可以保留所有重做历史记录,当数据库处于archivelog模式并进行日志切换式,...
【oracle】
| 2021-10-08 19:09:43 | 阅读(510) | 评论(0)
归档日志(archive log)是非活动的重做日志备份.通过使用归档日志,可以保留所有重做历史记录,当数据库处于archivelog模式并进行日志切换式,...
【oracle】
| 2021-10-08 19:09:32 | 阅读(450) | 评论(0)
归档日志(archive log)是非活动的重做日志备份.通过使用归档日志,可以保留所有重做历史记录,当数据库处于archivelog模式并进行日志切换式,...
【oracle】
oracle迁移中灵活变动的那些事。
【oracle】
dingjun123 | 2020-07-13 00:18:03 | 阅读(4690) | 评论(0)
我们经常会遇到类型转换问题导致索引失效,要么是写sql时候自己加了to_char,to_date,to_number,要么因为类型不一致,oracle做了隐式类型转换导致索引失效。要避免这种问题,还是要在表设计的时候,使用常用类型,避免使用一些不常用的比如nvarchar2,timestamp等,写sql时候遇到类型不一致的,要先测试好,避免上线后出现问题。
【oracle】
dingjun123 | 2020-07-02 16:38:07 | 阅读(2190) | 评论(0)
分布式查询语句对于远程对象的查询在远程库执行,在远程库可以执行的sql语句会通过优化器的查询转换,执行的是转换后的语句,然后结果集返回到本地,再与本地表运算。当然,
本地操作还是远程操作是相对的,我们可以通过driving_site hint改变主查询计划的执行位置,但是对dml,driving_site是失效的,另外对远程表也可以使用其他hint来控制执行计划。
【oracle】
hxl | 2019-09-29 09:51:25 | 阅读(0) | 评论(0)
#!/bin/bashnow_time=$(date " %y%m%d%h%m%s")cd /u02/goldengate/dirrptcp repep.dsc /home/oracle/dirrpt/repep${now_time}.dsccp repep.rpt /home/oracle/dirrpt/repep${now_time}.rptrpt_file=/home/oracle/dirrpt/repep${now_time}.rpterror_rba=`cat $rpt_file|grep "rba:"|sed s/[[:space:]]//g|cut -d ":" ...
【oracle】
| 2019-01-30 14:12:14 | 阅读(5660) | 评论(0)
checkpoint触发的条件1)手工触发当手工发出alter system checkpoint 等命令时触发(实际上alter system flush buffer chache 也会触发)一般我们在进行重大操作的时,可以手工触发检查点,然后多切换几次redo logfile,再去shutdown.这样可以保证数据库的脏块尽可能的都完全写入到disk中,同时也能保证实例open时,能尽...
【oracle】
| 2018-11-13 14:46:07 | 阅读(2660) | 评论(0)
create table t1 as select object_id,object_name from dba_objects where object_id<10;alter system switch logfile;sql> select member from v$logfile;member--------------------------------------------------------------------------------/home/oracle/app/oradata/oracleogg/redo03.log/home/oracle/ap...
【oracle】
| 2018-10-31 10:44:58 | 阅读(2010) | 评论(0)
xx
【oracle】
| 2018-10-25 13:45:26 | 阅读(2090) | 评论(0)
1 那么oracle是如何通过哪几个方面来实现这个持久性的呢?1) memory 方面,为了实现更好的课伸缩性和高并发,oracle引入了redo buffer。理论上讲,尽可能的实现每次都将commit的block都flush到disk中。不过,很多时候,如果业务量很大,那么这个可能也是一个硬件拼镜,比如io。2)避免介质失败,关于这点,主要是通过进...
【oracle】
| 2018-10-15 10:08:57 | 阅读(5660) | 评论(0)
在oracle中存在很多种scn,但是,只有如下几种是我们比较关注的。commit scn/cleanout scndatabase scn/on disk scn/thread scn/datafile checkpoint scn/start scnoffline scn/online scnresetlogs scnstop scnlow/high scn下面我们通过实验来展示,描述上述几种scn: commit scn/cleanout scnsql> create t...