[20240409]为什么一条sql语句在实例2执行要慢的分析.txt --//生产系统遇到一个奇怪现象,一条sql语句在实例2要比实例1慢很多,展开分析看看. 1.环境: SYS@127.0.0.1:9014/ywdb>@ver1 PORT_STRING                   VERSION       BANN...

  qgya4x0epush   2024年04月10日   28   0   0 Oracle

[20240325]FORCE_MATCHING_SIGNATURE与DML.txt --//生产系统遇到1个FORCE_MATCHING_SIGNATURE重合的奇怪现象,一般情况都是相似的sql语句(没有使用绑定变量的sql语句), --//FORCE_MATCHING_SIGNATURE相同。 --//实际上insert语句真实FORCE_MATCHING_SIGNATURE=0,但是在v$active_session_history视图里面记录的不是0.补充看看 --//update,delete的情况. 1.环境: SCOTT@test01p>@ver1 PORT_S...

  qgya4x0epush   2024年03月27日   79   0   0 Oracle

[20240320]空格与sqlpus的sql语句.txt --//优化sql语句时遇到的问题,自己上我发现我手工执行获得的sql_id与程序里面的sql_id不一致,原因很多sqlplus下如果是dos文本格 --//式,计算的文本会将\r\n字符变成\n,如果多行,文本结尾的空格会删除等等,通过例子说明: 1.环境: SCOTT@book>@ver1 PORT_STRING                 &nb...

  qgya4x0epush   2024年03月25日   83   0   0 Oracle

[20240313]使用tptashtop.sql脚本的困惑.txt --//使用tptashtop.sql脚本遇到的问题,做一些分析以及说明: 1.环境: SYS@127.0.0.1:9014/ywdb>@ver1 PORT_STRING                   VERSION       BANNER -----...

  qgya4x0epush   2024年03月19日   33   0   0 Oracle

[20240313]toadgather_plan_statistics执行计划相关问题.txt --//自己现在已经很少使用toad,使用也是作为辅助功能,毕竟图形界面能更快的操作显示信息. --//昨天遇到一个问题,自己当时没有反映过来,浪费点时间,做一个记录避免以后再次犯浑. --//我一般在toad的sql编辑界面下尽可能看真实的执行计划 --//参考:https://blog.itpub.net/267265/viewspace-2130781/=>[20161216]toad下显示真实的执行计划.txt --//没有想到看到的执行计划统计存在一些问题,看下面的例子: 1....

  qgya4x0epush   2024年03月14日   77   0   0 Oracle

[20231226]vimAlign插件使用例子.txt --//有时候看别人的blog如果遇到执行计划如下,我会使用vim的Align插件做一些处理,好久不用有点生疏,做一个记录: --//假设拷贝和粘贴的执行计划如下: ------------------------------------------------------------------------------------------------- |Id|Operation|Name|Starts|E-Rows|A-Rows|A-Time|Buffers| --------------------------------...

  qgya4x0epush   2023年12月27日   26   0   0 Linux

[20231201]乱序输出.txt --//测试需要生成seq-f"%06g"300000的乱序输出,当时不知道bashshell如何实现,先通过oracle的sql语句建立乱序数字输出。 setpagesize0 spoolaa.txt selectlpad(level,6,'0')fromdualconnectbylevel<=3e5orderbydbms_random.value; spooloff --//注意设置setpagesize0,不然中间出现多次页头。注意保持aa.txt的备份,测试要重复多次。 --//有时间看了一些bashshell文档. $seq-f"%...

  qgya4x0epush   2023年12月13日   99   0   0 Linux

[20231121]oracleSYS_GUID的组成.txt --//看了链接:http://ksun-oracle.blogspot.com/2023/08/oracle-sysguid-composition.html --//函数SYS_GUID,不知道作者如何猜测函数SYS_GUID的组成的,自己按照作者的测试,自己重复看看. SYS_GUIDgeneratesandreturnsagloballyuniqueidentifier(RAWvalue)madeupof16bytes. Onmostplatforms,thegeneratedidentifierconsistsofa...

  qgya4x0epush   2023年12月13日   74   0   0 Oracle

[20231207]开发不应该这样写sql4.txt --//最近在优化sql语句,发现另外一种风格,实际上以前也遇到过,感觉这就像一种病,会传染只要一个这样写后面的要么跟进要么 --//不改。我觉得开发应该感谢exadata,不然我们的生产系统估计会垮掉。 1.环境: XXXXXX>@ver1 PORT_STRING                   VERSION  &n...

  qgya4x0epush   2023年12月13日   26   0   0 Oracle

[20231204]快速删除大量文件测试(rsync版本)4.txt --//前个星期做了大量文件测试,发现只要顺着inode节点顺序删除文件效率最高. --//还有一种方式使用rsync,利用建立空目录使用同步功能,删除对应目录里面的全部文件. --//我记忆里以前测试效率不错,今天做具体探究. 1.建立测试环境: $mount|column|grepu01 /dev/cciss/c0d0p6on/u01typeext3(rw) --///u01的文件系统是ext3. --//按照顺序建立文件。 $cd/u01/testrm $timeforiin$(seq-f"%06g"300000...

  qgya4x0epush   2023年12月09日   30   0   0 Linux

[20231130]快速删除大量文件测试(perl版本)3.txt --//上上个星期做维护时,发现一台机器累积了大量aud文件,使用find-mtime+30做保留1个月的删除操作时那个慢简直无法形容。 --//我做了一些测试,结果测试遇到一些问题或者疑惑,浪费大量时间,根据以前测试我知道perl对于这样的删除很快,我以前做个类似测 --//试。以下测试是在我多次测试后发现的规律或者总结。 1.建立测试环境: $mount|column|grepu01 /dev/cciss/c0d0p6on/u01typeext3(rw) --///u01的文件系统是ext3. --//按照顺序建立文...

  qgya4x0epush   2023年12月08日   29   0   0 Linux

[20231124]奇怪的高逻辑读4.txt --//很长一段在生产系统看到一条逻辑读很高的sql语句,检查发现谓词使用了DBMS_LOB.SUBSTR函数. --//开发真奇葩,我无论如何也想不出开发为什么这些写代码,当时脑子短路了,使用trunc还好理解一点. --//我开始以为主要原因是lob类型导致fetch记录是1行1行提取,逻辑读提高,但是实测的效果要高出许多倍.当时没有继续探究,今天继续 --//探究看看,顺便尝试是否建立函数索引. --//以前的测试链接:http://blog.itpub.net/267265/viewspace-2936071/=>[20230216...

  qgya4x0epush   2023年11月30日   41   0   0 Oracle

[20231114]如何知道一条sql语句涉及到那些表.txt --//别人问的问题,开始想看执行计划不就可以吗?当然一些计划可能仅仅涉及到索引。还有joinelimination可能仅仅看到1个表。 --//对方的目的就是获取这条sql语句相关表,重新分析表看看。 --//我想起查询表获得对应sql_id的脚本,脚本如下,参数5,6对应owner,table_namne. SELECT/+MATERIALIZEordereduse_hash(d)use_hash(c)/        DISTINCTc.kglobt...

  qgya4x0epush   2023年11月17日   21   0   0 Oracle

[20231109]bashshell快捷键alt+number的问题.txt --//前一阵子,我想实现12行合并1行的输出,理论讲要使用paste命令加入12个.输入命令时候要数输入了多少-.我知道bashshell有一 --//个快捷键alt+number可以产生连续输入某个字符,但是我一直不知道如何关掉这个功能.有时候误触发这个功能,有一些版本每次输入1 --//个字符相当于输入多个,我不知道如何关闭,出现这样情况我基本选择关闭会话,重新登陆. --//比如输入: $seq12|paste- --//可以这样操作,输入: seq12|paste<alt-4> --//...

  qgya4x0epush   2023年11月12日   32   0   0 Linux

[20231103]renameIDL_UB1$后使用bbed的恢复3.txt --//上午解决renameIDL_UB1$后使用bbed的恢复问题,就是涉及到的5个索引4个需要修改,其中一个因为NULL值的缘故,不需要修改。 --//主要原因是rename是delete再insertobj$,反过来思考,如果修改时长度等长,我仅仅需要name等于原来的字符串就可以,当然有 --//一个前提,rename后在几个索引的位置不能发生变动。不然这样的改动量也是很大的,这样修复索引仅仅是修复i_obj2,i_obj5, --//name等于原来的字符串就ok了,这样改动仅仅涉及3个块,自己还是测试...

  qgya4x0epush   2023年11月12日   22   0   0 Oracle

[20231103]renameIDL_UB1$后使用bbed的恢复的后遗症.txt --//前段时间遇到的问题,测试使用renameIDL_UB1$后使用bbed的恢复,当时没有发现这个问题,今天才意识到问题. --//我只能继续前面的恢复操作. 1.环境: SYS@book>@ver1 PORT_STRING        VERSION   BANNER ----------------------------------------------------------...

  qgya4x0epush   2023年11月06日   112   0   0 Oracle

[20231023]备库与altersystemflushbuffer_cache.txt --//测试遇到的问题,在备库执行altersystemflushbuffer_cache;刷新数据缓存命令无效. --//通过例子验证: 1.环境: SYS@192.168.100.235:1521/orcl>@ver1 SYS@192.168.100.235:1521/orcl>@pr PORT_STRING              &nbs...

  qgya4x0epush   2023年11月02日   62   0   0 Oracle

[20231026]bbed查看索引kd_off结构的问题.txt --//使用bbed查看索引kd_off结构时存在问题,前面两项指向的偏移不对,从kd_off[2]算起,而且记录的是相对偏移=绝对偏移-kdxle偏移. --//遗漏的两项可以通过最大的kd_off项记录的地址+2,+4获得. --//dumpoffsetkd_off[max]+2count2 --//dumpoffsetkd_off[max]+4count2 --//每次看最后两项比较麻烦,先给dumpoffsetkd_off[max]+2count2,然后大小头颠倒,计算出数字,在此基础上加上kdxle偏移, --/...

  qgya4x0epush   2023年11月02日   46   0   0 Oracle

[20231013]为什么刷新缓存后输出记录顺序发生变化3.txt --//当年提的问题,链接http://blog.itpub.net/267265/viewspace-2763181/=>[20210316]为什么刷新缓存后输出记录顺序发生变化.txt, --//正好别人问我,顺便我重复看了一下,顺便解答这个问题,实际上也许解答不对,许多行为我仅仅是猜测。 --//实际上这个问题在于oracle在索引范围扫描时如果数据块不在缓存,有可能采用dbfileparallelread的方式读取数据块。 --//最直观的表现在执行计划上出现TABLEACCESSBYINDEXROWIDBAT...

  qgya4x0epush   2023年11月02日   57   0   0 Oracle

[20230922]dc命令复杂学习3.txt 1.问题提出: --//前一段时间简单学习了dc,累加的例子: $cata.txt 1111 2222 3333 4444 $cata.txt|dc-f-e"[+z1<r]srz1<rp" 11110 $dc-fa.txt-e"[+z1<r]srz1<rp" 11110 --//实际上如果累加数据量很大,这样的执行效率很低的,因为每次都要判断堆栈是否还有数据(z命令,队列越长执行效率越低) --//实际上开始我就想,如果根据开始插入堆栈的数量生成对应的数量的字符'+'(注:生成+的数量等于插入堆栈的数量-1), -...

  qgya4x0epush   2023年11月02日   125   0   0 Linux
关注 更多

空空如也 ~ ~

粉丝 更多

空空如也 ~ ~