oracle1

个人BLOG文章索引

09年马上要结束了,BLOG每天更新又坚持了一年,目前文章总数1700多篇,其中纯技术文章将近1300篇。
我比较喜欢的一句话:十年磨一剑。以前提到过,坚持10年可能会比较困难,那么至少要坚持5年,到目前为止,BLOG更新已经4年了,明年就会初步实现目标了。
重新整理一下BLOG上面文章的索引,把09年的文章放进去了,且重新整理了一下分类。

RAC方面:
Redhat AS4 for x86_64上安装Oracle 9204 RAC概述(一) :系统及裸设备准备工作。
Redhat AS4 for x86_64上安装Oracle 9204 RAC概述(二) :安装及建库工作。
Oracle 10gr2 Bug 4437727 :安装10GR2的RAC的时候碰到的bug。
Solaris8上安装RAC10202环境(一) :介绍操作系统准备工作。
Solaris8上安装RAC10202环境(二) :ORACLE的CLUSTERWARE的安装。
Solaris8上安装RAC10202环境(三) :ORACLE的软件安装。
Solaris8上安装RAC10202环境(四) :ORACLE数据库建立过程。
Solaris8上安装RAC10202环境(五) :ORACLE数据库RAC环境的补丁安装。
Solaris8上安装RAC10202环境(六) :Oracle RAC环境应用5117016补丁集以及应用这个补丁集后的bug。
Solaris8上安装RAC10202环境(七) :整个RAC安装过程中碰到的问题以及是如何解决的。
RAC连接的问题ORA-12545 :RAC连接的问题ORA-12545。
RAC连接的问题ORA-12545(二) :这个问题的另外一个解决方案。
RAC User Equivalence Check Failed :使用SSH方式配置RAC在检查用户等价时失败的问题。
ORA-17447错误 :JDBC驱动引起的weblogic连接问题。
Oracle srvctl的小bug :srvctl只记录自己的状态,而不检查实际运行情况。
一次ASM环境故障解决 :ASM空间不足造成的问题。
Solaris10下安装Oracle10203RAC环境(一) :RAC安装的准备工作。
Solaris10下安装Oracle10203RAC环境(二) :Oracle Clusterware的安装过程。
Solaris10下安装Oracle10203RAC环境(三) :Oracle Database的安装过程。
Solaris10下安装Oracle10203RAC环境(四) :10203补丁的安装过程。
Solaris10下安装Oracle10203RAC环境(五) :RAC环境安装过程中碰到的问题。
RAC负载均衡的简单测试(一) :负载均衡的简单测试。
RAC负载均衡的简单测试(二) :继续讨论负载均衡的特性。
RAC负载均衡的简单测试(三) :讨论负载均衡与实例的忙闲是否有关。
RAC负载均衡的简单测试(四) :继续讨论负载均衡与实例的忙闲是否有关。
连接ASM实例后出现ORA-1012错误 :又是ASM空间已满造成的问题。
连接ASM实例后出现ORA-1012错误(二) :第二次出现这个问题,并引出了新线索。
连接ASM实例后出现ORA-1012错误(三) :描述问题产生的真正原因。
RAC环境网络故障测试 :描述网络发生问题的时,对RAC环境的影响。
RAC的TAF简单测试(一) :TAF功能的简单测试。
RAC的TAF简单测试(二) :FAILOVER的SESSION和SELECT选项。
RAC的TAF简单测试(三) :TAF对事务的影响。
RAC的TAF简单测试(四) :TAF的BASIC方式和PRECONNECT方式。
RAC的TAF简单测试(五) :TAF服务器端的PRECONNECT设置。
RMAN备份恢复——RAC环境数据库的备份(一) :RAC环境的备份、恢复和普通数据库的备份、恢复的区别。
RMAN备份恢复——RAC环境数据库的备份(二) :基于裸设备的RAC环境下的备份。
RMAN备份恢复——RAC环境数据库的备份(三) :基于裸设备的RAC环境下的恢复。
RMAN备份恢复——RAC环境数据库的备份(四) :RAC环境备份到带库以及从带库的恢复。
RMAN备份恢复——RAC环境数据库的备份(五) :RAC本地磁盘备份集如何备份到磁带上。
RMAN备份恢复——RAC环境数据库的备份(六) :RAC本地磁盘备份集备份到磁带后的恢复问题。
RMAN备份恢复——RAC环境数据库的备份(七) :RAC本地磁盘备份集通过一个实例进行恢复的过程。
RMAN备份恢复——RAC环境数据库的备份(八) :裸设备RAC备份ASM解决方案。
RMAN备份恢复——RAC环境数据库的备份(九) :裸设备RAC备份的NFS MOUNT解决方案。
RMAN备份恢复--RAC环境数据库的备份(十) :裸设备RAC备份通过STANDBY机制来解决远端归档问题。
RMAN备份恢复——RAC环境数据库的备份(十一) :基于裸设备RAC备份的负载均衡解决方案。
RMAN备份恢复——备份到带库的性能 :rac环境通过RMAN备份到带库的性能。
RMAN备份恢复——备份到带库的性能(二) :通过设置NETBACKUP参数解决前面文章中的问题。
修改系统时间导致RAC环境的一个实例重启 :修改系统时间导致RAC环境的一个实例重启。
Rman通过NFS备份报错ORA-27054 :RMAN在通过NFS备份、恢复的时候,会出现ORA-27054错误。
归档日志名称为空 :归档日志名称为空的问题。
RAC环境中的TNSNAMES文件 :RAC环境中的TNSNAMES文件。
RAC环境中的密码文件 :RAC环境中的密码文件。
RAC环境中的初始化文件 :RAC环境中的初始化文件。
RAC环境中的快照控制文件 :RAC环境中的快照控制文件
一次带库备份异常 :测试RAC的备份时一个节点上备份到带库出现异常。
RAC环境的恢复策略 :备份策略对备份和恢复的影响。
RAC环境中修改系统时间可能导致SRVCTL命令失败 :RAC环境中修改系统时间导致SRVCTL命令失败。
RAC环境一个实例删除已被另一个实例删除的表时报错 :RAC环境中,如果一个实例删除了表,将表至于回收站中,在另外的实例尝试删除同名的表会报错。
srvctl添加数据库信息报错 :srvctl添加数据库信息报错。
利用TAR恢复ORACLE RAC环境的软件目录 :使用tar恢复ORACLE RAC环境的软件目录过程。
ORA-600(kolaslGetLength-1)错误 :访问GV$SQL视图造成的bug。
利用RMAN建立10GRAC数据库的DATA GUARD :RMAN建立10G的RAC环境的DATA GUARD。
RAC建立DATA GUARD环境后出现的1677错误 :RAC环境建立了DATA GUARD后,RAC环境的一个实例关闭后无法启动,报错信息为:ORA-1677。
SWITCHOVER RAC数据库出现ORA-1093 :Oracle10g RAC环境在执行SWITCHOVER操作过程中出现ORA-1093错误。
SWITCHOVER RAC数据库出现ORA-600(kcctrdf_2)错误 :SWITCHOVER RAC数据库出现ORA-600(kcctrdf_2)错误。
RAC环境的物理STANDBY的 SWITCHOVER切换 :RAC环境数据库SWITCHOVER切换到一个单实例数据库。
RAC安装出现ORA-341和ORA-312错误 :RAC建库过程中报错的诊断过程。
RAC环境的STANDBY数据库备份报错 :Rac环境的STANDBY数据库上执行命令报错,错误号为:RMAN-04022。
RAC环境查询不到其他实例执行的SQL :一个实例可能无法查询到另一个实例上所执行的SQL。
RAC环境ASM空间被占满后的归档问题 :RAC环境ASM空间被占满后的归档问题。
RAC环境中使用在线重定义操作出现bug :RAC环境中使用在线重定义操作出现bug。
RAC环境一个实例何时会归档另一个实例的日志 :解释为什么有的时候发现一个实例所在的服务器上包含了另一个服务器的归档日志。
ORA-7445(kkttrex)错误 :RAC环境中SHUTDOWN触发器造成的bug。
为RAC不同的实例指定不同的SPFILE :RAC的多个实例可以分别用不同的SPFILE进行启动。
Solaris10下安装Oracle1106RAC环境(一) :首先设置操作系统环境信息。
Solaris10下安装Oracle1106RAC环境(二) :这篇描述Oracle Clusterware的安装。
Solaris10下安装Oracle1106RAC环境(三) :这篇描述Oracle Database的安装。
Solaris10下安装Oracle1106RAC环境(四) :这篇描述Oracle的建库过程。
Solaris10下安装Oracle1106RAC环境(五) :记录一下本次RAC安装过程中遇到的错误。
RAC环境对并行查询的支持 :RAC环境中,一个并行的执行可能分布到多个实例上执行。
ASM工具asmcmd :Oracle还是提供了一些工具来访问ASM磁盘组的,asmcdm就是其中一个工具。
asmcmd的cp命令小bug :asmcmd增加了新的cp命令,使得用户可以在ASM和操作系统之间拷贝文件。
ASMCMD命令拷贝文件报错ORA-15046 :使用ASMCMD拷贝数据文件时出现这个错误。
通过FTP访问ASM磁盘组 :通过FTP的方式访问ASM磁盘组中的文件。
连接数据库时报错ORA-12520和ORA-12516错误 :在本地恢复了一个RAC数据库,通过设置连接数据库报错ORA-12520。
尝试无参数启动数据库时报错ORA-304错误 :一个已经配置了RAC + ASM环境的数据库中,尝试利用RMAN的无参数启动,出现了ORA-304错误。
恢复之RAC数据库RESTORE :模拟RAC环境崩溃,在新的服务器上RESTORE过程。
恢复之RAC数据库RECOVER :模拟RAC环境崩溃,在新的服务器上RECOVER过程。
恢复过程异常导致了ORA-600和ORA-7445错误 :由于恢复操作有误导致了打开数据库时报错。
一次命令行方式添加DISK的经历 :尝试使用命令行方式在ASM中添加磁盘。
能否在相同服务器上部署两套RAC环境 :探讨相同的服务器上能否部署多套RAC环境。
ORA-600(2037)错误 :进行11g的RAC恢复过程中,在后台ALERT文件中看到了这个错误。
WEBLOGIC连接Oracle RAC的负载均衡测试 :测试单实例与RAC环境各个节点的负载情况。
恢复之RAC数据库DUPLICATE(一) :这篇描述DUPLICATE命令的准备工作。
恢复之RAC数据库DUPLICATE(二) :这篇描述DUPLICATE命令的执行。
恢复之RAC数据库DUPLICATE(三) :这篇描述DUPLICATE命令执行后的收尾操作。
RMAN执行RAC数据库的DUPLICATE操作报错ORA-12720 :尝试对RAC环境执行DUPLICATE操作报错。
RAC环境的物理STANDBY的 FAILOVER切换切换 :述RAC环境数据库FAILOVER切换到一个单实例数据库。
Silent模式卸载11G RAC数据库 :描述11G RAC数据库的SILENT卸载方式。
Silent模式卸载11G RAC数据库软件 :描述11G RAC数据库软件的SILENT卸载方式。
Solaris10 Silent模式卸载11G RAC CLUSTER环境 :描述11G RAC的CLUSTER环境的SILENT卸载方式。
使用SRVCTL添加数据库信息 :使用SRVCTL手工添加数据库信息。
11G RAC的STANDBY环境的一些小问题 :11g的STANDBY数据库可以在应用日志的同时打开数据库,但是对于RAC环境,这里有一些小的问题。
一次Windows环境下内存大小超出范围的问题解决 :由于设置SGA太大,超过32位Windows环境所允许的最大内存,导致Windows环境无法正常启动。
RAC启动报错无法访问OCR设备 :由于Veritas的CFS的问题导致短时间内RAC无法访问共享OCR设备。
11gRAC可以杀掉其他实例上的会话 :RAC环境Oracle11g增加了新的语句,使得DBA在当前实例就可以杀掉RAC其他实例上的会话。
Solaris10下Silent模式安装Oracle1106RAC环境(一) :设置操作系统环境信息。
Solaris10下Silent模式安装Oracle1106RAC环境(二) :描述安装CLUSTER软件的准备工作。
Solaris10下Silent模式安装Oracle1106RAC环境(三) :描述SILENT模式下CLUSTER软件的安装。
Solaris10下Silent模式安装Oracle1106RAC环境(四) :描述SILENT模式下数据库软件安装的准备工作。
Solaris10下Silent模式安装Oracle1106RAC环境(五) :描述SILENT模式下数据库软件的安装过程。
Solaris10下Silent模式安装Oracle1106RAC环境(六) :描述SILENT模式下ASM实例的创建。
Solaris10下Silent模式安装Oracle1106RAC环境(七) :描述SILENT模式下数据库实例的创建。
Solaris10下Silent模式安装Oracle1106RAC环境(八) :描述安装过程中碰到的问题。
RAC环境在ASM上创建表空间出错ORA-569 :描述ASM上建立表空间是出现的错误以及解决过程。
ORA-16146错误 :RAC环境两个实例同时向远端节点归档产生的问题。
RAC环境ROLLING UPGRADE方式应用PATCH :RAC环境支持ROLLING UPGRADE方式安装PATCH。
灵活实现RAC三节点的负载均衡及TAF配置(一) :文章给出问题以及问题的实现。
灵活实现RAC三节点的负载均衡及TAF配置(二) :检验给出的实现是否满足需求。
灵活实现RAC三节点的负载均衡及TAF配置(三) :解决其中一个节点没有启动时带来的连接失败问题。
灵活实现RAC三节点的负载均衡及TAF配置(四) :解决实例1和实例2连续失败导致的ORA-3113错误。
CLUSTER_DATABASE_INSTANCES参数 :这个参数并不是设置数据库实例数的。
改变RAC参数可能引发的参数不一致的问题 :某些参数要求RAC的各个节点上设置一致。
使用DBCA添加新实例时出现CRS-215错误 :在添加新实例的时候碰到了CRS-215错误。
单实例数据库手工转化多实例数据库 :如何将一个RAC环境下的单实例数据库,转变为多实例数据库。
单实例数据库工具转化多实例数据库 :利用Oracle的工具进行转化。
多实例数据库删除实例 :在数据库层如何删除一个实例。
Oracle11g RAC在实例关闭后自动在启动实例上归档 :11g的RAC环境,归档模式,当一个节点关闭,另外的节点自动完成关闭节点的日志切换,并归档到本地节点。
RAC数据库建立STANDBY(一) :介绍STANDBY数据库的准备和创建过程。
RAC数据库建立STANDBY(二) :介绍STANDBY数据库创建的后续操作,并检查STANDBY运行机制。
RAC数据库建立STANDBY(三) :记录一下STANDBY数据库创建过程中碰到的问题。
RAC数据库建立STANDBY(四) :继续记录STANDBY数据库创建过程中碰到的问题。
RAC数据库建立STANDBY(五) :创建STANDBY数据库问题汇总的第三部分。
RAC数据库建立STANDBY(六) :创建STANDBY数据库问题汇总的第四部分。
查询初始化参数的方法(三) :V$SPPARAMETER视图于GV$PARAMETER视图的不同。
查询初始化参数的方法(四) :描述GV$SPPARAMETER参数的必要性。
ASM实例使用CREATE PFILE FROM MEMORY的bug :这个命令对于ASM实例而言,还存在bug。
RAC一个节点恢复另一个节点在带库上的备份 :如何在一个节点上恢复另一个节点在带库上的备份。
RAC环境STANDBY的SWITCHOVER切换 :RAC环境下STANDBY数据库的SWITCHOVER切换。
RAC环境STANDBY的FAILOVER切换 :RAC环境下STANDBY数据库的FAILOVER切换。
RAC环境出现ORA-439错误 :一次产品环境的升级中碰到ORA-439错误。
RAC环境碰到ORA-4063错误 :RAC环境中,查询一个视图出现了ORA-4063错误。
ftp到ASM磁盘组路径错误的问题 :通过FTP的方式,将数据文件拷贝到ASM磁盘组中,结果不小心导致数据文件拷贝到错误的目录下。
安装CLUSTER碰到 Assertion failed offset fFileSize错误 :安装CLUSTER时碰到的问题。
RAC环境逻辑STANDBY的创建 :介绍了RAC创建逻辑STANDBY数据库。
RMAN删除归档日志时将ASM上空目录同时删除 :RMAN通过命令删除ASM上存储的归档日志时,如果归档目录为空,则ASM上空目录被同时删除。
ORA-600(kjbrchkpkeywait:timeout)和ORA-600(kclcls_8)错误 :执行表空间的迁移操作后,RAC数据库出现了上面的错误。
ORA-600(kmgs_parameter_update_timeout_1)错误 :后台MMON进程长时间无法更新SPFILE导致的错误。
ORA-600(ktte_append_file_info-1)错误 :启动过程中MMON进程导致的错误。
RAC环境LOGICAL STANDBY的SWITCHOVER切换 :介绍一下RAC环境下LOGICAL STANDBY数据库的SWITCHOVER切换。
RAC环境LOGICAL STANDBY的FAILOVER切换 :介绍一下RAC环境下LOGICAL STANDBY数据库的FAILOVER切换。
RAC环境调整系统时间 :RAC环境中如何调整系统时间才能避免节点重启。
记忆深刻的10K空间 :描述10K空间留下的一个教训。
ORA-600(KCLEXPAND_5)错误 :一个比较严重的bug,导致了RAC环境的一个实例重新启动。
建立ASM磁盘组报错ORA-15063 :为RAC环境创建磁盘组时,碰到了这个错误。
一次RMAN备份报错的诊断过程(一) :描述问题的现象。
一次RMAN备份报错的诊断过程(二) :跟踪错误信息,寻找定位问题的方向。
一次RMAN备份报错的诊断过程(三) :解决JOB长时间未完成的问题。
一次RMAN备份报错的诊断过程(四) :继续清除数据库中僵死的会话。
一次RMAN备份报错的诊断过程(五) :通过清除racgimon以及racgmain check进程来尝试解决问题。
一次RMAN备份报错的诊断过程(六) :解决cluster无法启动的问题。
RAC环境出现Waiting for instances to leave信息(一) :描述问题的发现过程。
RAC环境出现Waiting for instances to leave信息(二) :描述问题的解决过程。
Oracle10203RAC环境添加新节点(一) :介绍准备过程。
Oracle10203RAC环境添加新节点(二) :描述CLUSTER软件的建立。
Oracle10203RAC环境添加新节点(三) :描述数据库软件的建立并建立ASM实例。
Oracle10203RAC环境添加新节点(四) :添加一个新节点上的数据库实例。
Oracle10203RAC环境添加新节点(五) :描述添加节点的软件安装过程中碰到的问题。
Oracle10203RAC环境添加新节点(六) :描述添加节点的数据库添加实例过程中碰到的问题。
CLUSTER启动报错无法访问物理设备 :测试环境的RAC数据库的一个节点在意外死机后,发现CLUSTER无法启动。
裸设备建立RAC的OCR设备不一致的问题 :各个节点的OCR设置对应的物理设备名称可能是不一致的。
利用STANDBY将单实例数据库升级为RAC环境(一) :介绍STANDBY数据库建立的准备工作。
利用STANDBY将单实例数据库升级为RAC环境(二) :介绍STANDBY数据库的建立。
利用STANDBY将单实例数据库升级为RAC环境(三) :描述单实例环境与RAC环境的SWITCHOVER过程。
利用STANDBY将单实例数据库升级为RAC环境(四) :描述整个操作过程中碰到的错误。
VOTING盘故障导致数据库服务器重启 :由于光纤卡多路径错误,导致RAC实例重启。
Oracle10203RAC环境删除节点(一) :介绍Oracle数据库实例的删除。
Oracle10203RAC环境删除节点(二) :介绍Oracle Clusterware删除节点。
Oracle10203RAC环境删除节点(三) :介绍Oracle软件环境的更新。

SQL方面:
对字符串的“sum”——在Oracle中自定义聚集函数的例子 :如果利用Oracle的自定义功能实现用户自定义的聚集函数,这个例子给出了一个实现字符串合并的例子。
MERGE语句奇怪的错误提示 :MERGE语法的错误提示问题。
Oracle9i使用闪回操作 :介绍Oracle9i的闪回功能。
测试TOM的例子居然发现bug :介绍9201的一个MERGE视图的错误。
构造的嵌套表如何指定列名 :使用嵌套表时,如何指定嵌套表中的列。
sql语句中常量的处理 :在使用SQL中,怎样处理常量效率更高。
ROLLUP和CUBE :介绍GROUP BY语句中的ROLLUP和CUBE语句。
自定义分析函数 :自定义分析函数的一个例子。
MERGE语法 :Oracle9i新增的MERGE语句。
INSERT ALL和INSERT FIRST语法 :Oracle9i新增的INSERT ALL和INSERT FIRST语法。
INSERT ALL语句的一点研究 :通过一个实例来说明INSERT ALL语法的优点。
10g中purge和flashback语句的重名问题 :PURGE语句和FLASHBACK出现重名的问题。
树状查询两例 :树状查询的两个小例子。
树状查询新特性 :介绍10G的两个新特性CONNECT_BY_ISLEAF和CONNECT_BY_ISCYCLE。
树状查询新特性(二) :介绍10G的另一个新特性CONNECT_BY_ROOT
树状查询ROOT问题的9i解决方案 :利用SYS_CONNECT_BY_PATH函数解决问题。
TO_DATE函数的小问题 :小心’YYYY’格式。
Like操作的bug :9204的LIKE操作可能造成bug。
DISTINCT的BUG :9204子查询中使用DISTINCT,外层查询可能得到错误的结果。
DISTINCT的BUG(二) :数型查询造成的bug。
包含同名触发器的表执行PURGE TABLE出错 :包含同名触发器的表进行PURGE出错。
WITH语法小议 :介绍Oracle的with语法。
ROWNUM伪列返回空 :9204的一个bug。
DISTINCT和GROUP BY的区别 :简要介绍DISTINCT与GROUP BY的区别。
用SQL处理分段查询的问题 :SQL使用技巧。
查询正常作为条件报错的问题 :描述问题,并给出相应的解决方案。
查询正常作为条件报错的问题(续) :对上一篇文章中两个问题进行深入描述。
ORA-600的qks3tGCL:1错误 :执行SQL碰到的600错误。
得到系统时间戳的毫秒值 :将以前得到秒值的方法进行了修改。
计算字符串中包含中文、英文字符长度 :计算字符串中中文字符长度、英文字符长度、以及数字字符长度的方法。
利用函数索引解决复杂的约束问题 :利用函数索引的功能实现复杂的约束。
小议ORDER BY语句中的常数 :ORDER BY语句中包含常量的情况。
一条语句引起的多个ORA-600、ORA-7445错误 :问题描述。
一条语句引起的多个ORA-600、ORA-7445错误(二) :这个问题的进一步发现。
ORA-600 kcblasm_1和kghasp1错误 :大量的MAX(DECODE())语句造成的问题。
小议RESET参数 :介绍ALTER SYSTEM的RESET语法。
ORA-600(qcscpqbc1)错误 :FULL OUTER JOIN引起的错误。
连接字符串的SQL方法 :通过SQL的方法将字符串连接在一起。
关联查询时使用树状查询要小心 :将几个表的关联查询和树状查询合在一起可能产生一些并不需要的记录。
ORA-600(qkacon:FJswrwo)错误 :同时包含树型查询和连接查询可能会造成问题。
Oracle CAST函数不生效 :Oracle9204的Cast函数转化NUMBER类型无效。
ORA-7445(prscoldrp) :错误语法造成的问题。
Oracle11新特性——SQL缓存结果集(一) :11g新增功能缓存结果集中SQL语句的缓存。
Oracle11新特性——SQL缓存结果集(二) :SQL缓存结果集的特点。
Oracle11新特性——SQL缓存结果集(三) :SQL缓存结果集的特点并简单介绍DBMS_RESULT_CACHE包。
Oracle11新特性——SQL缓存结果集(四) :讨论SQL缓存结果集与绑定变量的关系。
Oracle11新特性——行列转换语句(一) :11g的行转列语法。
Oracle11新特性——行列转换语句(二) :11g的列转行语法。
Oracle11新特性——虚拟列 :Oracle11g增加了表的虚拟列。
Oracle11新特性——虚拟列(二) :虚拟列的进一步的研究。
Oracle11新特性——在线操作功能增强(一) :可等待DDL操作。
Oracle11新特性——在线操作功能增强(二) :表增加包含默认值的字段。
Oracle11新特性——在线操作功能增强(四) :Oracle11g新增的不可见索引。
Oracle11新特性——在线操作功能增强(五) :Oracle11g的只读表功能。
Oracle11新特性——在线操作功能增强(七) :在线重建索引功能增强。
用SQL解决两道有趣的题(一) :利用SQL解决一道数学推理问题。
用SQL解决两道有趣的题(二) :利用SQL解决另一道数学推理问题。
用SQL实现99乘法表 :用SQL实现99乘法表。
使用nlsparam的一个例子 :在转换函数中使用NLSPARAM参数来保证指定语言的转换。
用SQL计算100以内的质数 :用SQL计算100以内的质数。
使用SQL判断一个数是否质数 :使用SQL判断一个数是否质数。
缺少GROUP BY表达式可以顺利执行的问题 :Oracle9204上执行一个明显语法错误的SQL,却可以得到查询结果。
缺少GROUP BY表达式可以顺利执行的问题(二) :使用MERGE提示可以在10g中避免错误的发生而得到执行结果。
9i上使用CONNECT BY访问DUAL表的问题 :Oracle的策略造成的问题。
添加字段对SQL的影响 :描述添加字段对SQL语句的影响。
UPDATE子查询的ORA-1779错误 :对子查询执行UPDATE时,可能会遇到ORA-1779错误。
一次更新操作的优化 :描述最近进行了一次更新操作的处理和优化工作。
一个复杂问题的求解过程(一) :通过硬编码方式解决一个构造问题。
一个复杂问题的求解过程(二) :通过函数来构造通用解。
一个复杂问题的求解过程(三) :讨论如何使用SQL来实现。
一个复杂问题的求解过程(四) :尝试使用PL/SQL实现。
一个复杂问题的求解过程(五) :仍然使用PL/SQL实现,这里采用了递归算法。
利用Oracle的新特性优化SQL :利用Oracle的新特性优化SQL。
SQL优化引出的问题(一) :经过简单的检查,找到了一个问题SQL语句。
SQL优化引出的问题(二) :继续寻找导致问题的真正原因。
ORA-7445(qcpircx)错误 :一个错误的SQL导致的bug。
ORA-600(qernsRowP)错误 :由于SORT GROUP BY NOSORT操作造成的。
如何为表中多条记录分别实现构造结果集(一) :如何同时为表中的多条记录分别实现构造结果集。
如何为表中多条记录分别实现构造结果集(二) :利用Oracle的TYPE实现结果集构造。
如何为表中多条记录分别实现构造结果集(三) :利用MODEL语句来实现结果集构造。
在Oracle中进行大小写不敏感的查询 :如何在Oracle中进行大小写不敏感的查询。
更新操作中的外关联(一) :UPDATE一个表的时候,这个表和其他表进行外关联获取更新数据无效。
更新操作中的外关联(二) :简单描述一下UPDATE中为什么无法使用外关联,并对比几种方式的执行计划和性能。
ORA-7445(_fini)错误 :SQL语句HASH JOIN导致的bug。
ORA-7445(evaopn2)错误 :标准连接写法且包含GROUP BY、DECODE函数和COUNT(*)时出现的错误。
标准SQL写法的重复列问题 :使用标准SQL的连接写法偶然发现的问题。
ORA-600(15851)错误 :会话的cursor_sharing设置不为EXACT时,且GROUP BY操作中,聚集函数的参数是常量时,会引发这个bug。
ORA-600(qerghFetch:inc)错误 :和ORA-600(15851)错误相同,由于操作系统不同导致错误信息不完全相同。
一个ORA-604错误的分析 :SQL建表时字段长度超长的问题。
Oracle中实现连乘 :如何在Oracle中实现连乘。
Oracle中实现连乘(二) :处理连乘中出现0和负数的情况。
一个树形聚集SQL问题 :树型查询包含聚集的情况。
一个树形聚集SQL问题(二) :根据新的测试数据来构造求解的SQL。
10g树形查询新特性CONNECT_BY_ROOT的9i实现方式 :9i中如何实现CONNECT_BY_ROOT功能。
10g树形查询新特性CONNECT_BY_ISLEAF的9i实现方式 :9i中如何实现CONNECT_BY_ISLEAF功能。
10g树形查询新特性CONNECT_BY_ISCYCLE的9i实现方式(一) :描述一下解决问题的思路。
10g树形查询新特性CONNECT_BY_ISCYCLE的9i实现方式(二) :初步实现CONNECT BY NOCYCLE的功能。
10g树形查询新特性CONNECT_BY_ISCYCLE的9i实现方式(三) :初步实现CONNECT_BY_ISCYCLE的功能。
10g树形查询新特性CONNECT_BY_ISCYCLE的9i实现方式(四) :CONNECT_BY_ISCYCLE功能的最终实现。
10g如何获取DUAL表中的记录数 :如何在10g中得到DUAL表中真正的记录数。
11G的SORT GROUP BY NOSORT导致错误执行计划 :在处理GROUP BY的操作的时候,可能错误的选择索引全扫描加上SORT GROUP BY NOSORT执行计划。
Oracle是否根据ROWID顺序读取记录 :描述Oracle读取记录的时候是否按照ROWID顺序。
Oracle是否根据ROWID顺序读取记录(二) :在做一个DATA OBJECT ID的例子。
Oracle是否根据ROWID顺序读取记录(三) :还是构造DATA OBJECT ID的例子,不过这次采用ALTER TABLE SPILT PARTITION的方式。
对于整数大于3和大于等于4是否一样 :讨论查询中的WHERE条件如果分别是大于3和大于等于4,二者是否等价。
对于整数大于3和大于等于4是否一样(二) :继续讨论二者在索引扫描上的区别。
对于整数大于3和大于等于4是否一样(三) :讨论包含物化视图的情况。
获取字段最大值的方法 :不用MAX、MIN等聚集函数,如何获取字段的最大值。
Oracle10g在CONNECT BY语句中允许子查询 :从10g开始,Oracle支持CONNECT BY语句中嵌套子查询。
解决ORA-600(16164)错误的过程(一) :描述问题的产生和现象。
解决ORA-600(16164)错误的过程(二) :描述解决问题的过程。
主键的变更导致索引无法删除 :描述导致这个问题的成因。
小议分析函数中排序对结果的影响(一) :分析函数中包括ORDER BY语句对查询排序的影响。
小议分析函数中排序对结果的影响(二) :继续讨论复杂一些的情况。
利用SQL实现一个图形概率问题 :在一个7×7的图形内,构造一个等腰三角形的概率有多大。
实现自然数N的全排列 :通过SQL实现N的全排列。
利用SQL解释一个魔术 :利用SQL来解释一个魔术的内在原理。
限制DDL操作(一) :利用触发器来限制DDL语句。
限制DDL操作(二) :介绍DISABLE TABLE LOCK语句。
限制DDL操作(三) :介绍DML_LOCKS初始化参数。
限制DDL操作(四) :介绍VAULT组件的COMMAND RULE功能。
Oracle10g新特性——记录DML错误日志(一) :介绍DML记录语句的用法。
Oracle10g新特性——记录DML错误日志(二) :介绍DML记录语句的限制。
Oracle10g新特性——记录DML错误日志(三) :介绍DML记录语句不支持的数据类型。
老虎SQL问题答案之漏洞 :几个SQL小问题。
ORA-600(qctVCO:csform)错误 :UPDATE语句包含了子查询,由于CBO尝试MERGE VIEW导致了这个错误的产生。
SQL限制条件应尽量避免使用SYSDATE :可以明确的使用日期常量就尽量避免使用SYSDATE作为替代。
SQL限制条件应尽量避免使用SYSDATE(二) :介绍SYSDATE和常量对执行计划的影响。
动态返回结果的视图 :利用一些变量可以创建动态结果的视图。
ORA-600(evapth : unexpected evaluation)错误 :错误是由于SQL中包含ORDER SIBLINGS BY DESC语句引起的。
在查询列表中使用PRIOR操作 :PRIOR操作其实在SELECT的字段列表中也是可以使用的。
利用树形查询实现部分分析函数功能 :使用树形查询模拟一些分析函数的功能。
ORA-600(kcblasm_1)和ORA-7445(kxhfNewBuffer)错误 :查询中的OR条件引发的问题。
Oracle11gr2分析函数新特性(一) :介绍新增的分析函数NTH_VALUE。
Oracle11gr2分析函数新特性(二) :介绍新增的分析函数LISTAGG。
Oracle11gr2分析函数新特性(三) :介绍分析函数LAG和LEAD的增强。
Oracle11gr2新增CREATE OR REPLACE FORCE TYPE功能 :增强了TYPE类型的依赖处理。
ORA-2449错误 :删除一个表空间的时候碰到了这个错误。
DROP USER过程中出现的奇怪的对象信息 :删除用户的时候,在后台查询了一下DBA_SEGMENTS视图,结果发现其他的对象信息。
只读表空间对象被删除后对应的对象信息 :只读表空间对象被删除,数据字典会自动修改对应的段名称。
RANK函数基于条件的查询 :RANK等函数还有基于假设条件进行查询的功能。


数据类型和数据块存储格式:
Oracle基本数据类型存储格式浅析(一)——字符类型 :介绍字符类型在Oracle中是如何存储的。
Oracle基本数据类型存储格式浅析(二)——数字类型 :介绍数值类型在Oracle中是如何存储的。
Oracle基本数据类型存储格式浅析(三)——日期类型(一) :介绍日期类型DATE在Oracle中是如何存储的。
Oracle基本数据类型存储格式浅析(三)——日期类型(二) :介绍日期类型TIMESTAMP在Oracle中是如何存储的。
Oracle基本数据类型存储格式浅析(三)——日期类型(三): 介绍日期类型SYSDATE在Oracle中是如何存储的。
Oracle基本数据类型存储格式浅析(三)——日期类型(四) :介绍日期类型SYSTIMESTAMP在Oracle中是如何存储的。
Oracle基本数据类型存储格式浅析(四)——ROWID类型(一): 介绍物理ROWID类型在Oracle中是如何存储的。
Oracle基本数据类型存储格式浅析(四)——ROWID类型(二) :介绍逻辑ROWID类型在Oracle中是如何存储的。
Oracle基本数据类型存储格式浅析(五)——RAW类型 :介绍RAW类型在Oracle中是如何存储的。
行迁移和行链接的物理存储 :Oracle的行迁移和行链接是如何实现的。
从行迁移想到的 :由于行迁移的特点,引申出Oracle行记录的最小值问题。
解析Oracle各种数据类型 :这篇文章总结了前面数据类型格式分析和DBMS_REPAIR包的分析结果,通过编写一个函数,就可以将数据库中存储的数据恢复出来。
NULL的数据类型 :通过测试得到NULL的默认数据类型。
Oracle中'AA '和'AA'是否相等 :说明不同数据类型会导致不同结果。
Long字段的限制 :long类型的又一个限制。
TO_LOB函数 :TO_LOB函数的特殊性。
如何对LONG列进行查询 :给出查询LONG字段的几种方法。
Oracle中的NULL(一) :介绍NULL的概念。
Oracle中的NULL(二) :NULL的AND/OR布尔运算特点。
Oracle中的NULL(三) :NULL的NOT布尔运算特点。
Oracle中的NULL(四) :NULL的字符表示形式’’。
Oracle中的NULL(五) :空字符’’和NULL的关系。
Oracle中的NULL(六) :NULL和索引的关系。
Oracle中的NULL(七) :NULL对SQL使用索引的影响。
Oracle中的NULL(八) :在SQL和PLSQL中一些处理NULL的一些问题。
SQL和存储过程的结果不一致——小议Oracle的number精度问题 :SQL和PL/SQL精度不一致的问题。
Oracle11g新特性——LOB类型功能增强 :11g对LOB类型的新增功能。
修改字段数据类型的方法 :介绍修改数据类型的方法。
有趣的数值溢出(一) :介绍ORACLE的NUMBER类型溢出。
有趣的数值溢出(二) :继续探讨小数的溢出情况。
行链接在存储结构上是如何实现的(一) :探讨Oracle到底是如何实现行链接的。
行链接在存储结构上是如何实现的(二) :通过例子推断行链接的存储格式。
行链接在存储结构上是如何实现的(三) :定位行链接存储标识位。
行链接在存储结构上是如何实现的(四) :通过例子来验证对标识位的推测。
行链接在存储结构上是如何实现的(五) :说明行迁移对应的标识位。
行链接在存储结构上是如何实现的(六) :简单描述D标识位。
行链接在存储结构上是如何实现的(七) :描述一下最后两个CLUSTER相关的标识。
行链接在存储结构上是如何实现的(八) :介绍一下HASH CLUSTER表的标识特点。
Oracle唯一约束中NULL的处理 :Oracle唯一约束中NULL的处理。
表的INTRA BLOCK CHAINING :当表中的列超过255的时候,多出的列以行连接的方式存放在相同的块中。
输入NVARCHRA2类型字符串 :介绍NVARCHAR2数据类型的输入。
NVARCHAR2索引造成的ORA-964错误(一) :使用NVARCHAR2类型碰到的一个bug。
NVARCHAR2索引造成的ORA-964错误(二) :通过TRACE跟踪导致错误的原因。
索引组织表中逻辑ROWID的物理猜 :索引组织表中逻辑ROWID的物理猜是如何实现的。
索引组织表中逻辑ROWID的物理猜(二) :通过一个具体的例子简单描述一下物理猜的过程。
索引组织表中逻辑ROWID的物理猜(三) :通过分析数据块验证上一篇文章中的例子。
Oracle外键约束中NULL的处理 :在外键中处理NULL约束,采用的方法就和处理唯一约束中明显不同。
TABLE居然也是数据类型 :居然TABLE也可以当作数据类型用。
输入TIMESTAMP类型 :输入TIMESTAMP类型的不同方法。
TIMESTAMP类型的时区 :介绍TIMESTAMP的时区信息。
无法根据TZ_OFFSET的值进行数据访问 :无法根据TZ_OFFSET函数的返回值,进行查询。
TIMESTAMP的时区转换 :一个时区的时间转换到另一个数区的问题。
CHAR类型函数索引导致结果错误 :在10.2.0.1上建立CHAR类型的SUBSTR函数索引后,可能导致随后的查询得到错误的结果。
利用HASH CLUSTER判断质数 :利用HASH CLUSTER内置功能实现质数的判断。
索引创建和重建对键值的限制 :简单描述创建和重建索引的过程对索引键值大小的要求。
列定义的顺序和列存储的顺序 :对于索引组织表列定义的顺序和存储的顺序并不一致。
列顺序对表的影响 :描述一下列的顺序对表的影响。
10g新增排序哈希聚集表 :HASH CLUSTER表和索引组织表的结合体。
插入排序哈希CLUSTER表出现ORA-7445错误 :插入时排序顺序于SORT顺序不一致碰到ORA-7745错误。
创建单独的分区存储NULL记录 :建立一个分区表,使得包含NULL记录在单独的分区,而其他记录在另一个分区。
加载数据顺序对HASH SORT CLUSTER性能影响 :加载或插入数据的顺序对影响影响很大。
Oracle分页查询格式(十三) :介绍HASH SORT CLUSTER表对分页查询的帮助。
HASHKEYS和SIZE参数对HASH SORT CLUSTER表的影响 :HASHKEYS和SIZE是最重要的存储参数设置。
JOB相关内容:
JOB自动执行出错,但手工执行正常——浅谈job和database link的一个特点 :描述了匿名数据库链的特点,以及和JOB配合使用时会出现的情况。
利用TRUNC函数定制JOB的时间间隔 :利用TRUNC函数来设置JOB的运行间隔。
通过JOB增加分区 :利用JOB定时增加分区。
如何删除非当前用户下的JOB :介绍了DBMS_IJOB包的使用。
JOB和导入导出 :EXP/IMP时可能丢失JOB的问题。
解决JOB的interval输入参数过长的问题 :一般通过设置INTERVAL参数的方式控制JOB的执行间隔,这篇文章给出JOB的INTERVAL参数过长的解决方案。
奇怪的JOB进程 :9204linux环境下可能存在的bug。
一次JOB任务的诊断 :一次实际问题的诊断。
利用存储过程的输出参数控制JOB的运行状态 :利用存储过程的输出参数控制JOB的状态。
JOB调用的权限问题 :JOB调用的权限问题。
使用JOB定时备份数据库 :在JOB中定期备份数据库。
JOB调用DBMS_STATS包出错的诊断 :自动收集统计信息报错的诊断。
9i上JOB停止自动运行 :9206前系统运行时间到达500天后,会出现这个bug。
用户被锁定不影响JOB的运行 :即使用户的帐号被锁定,JOB也可以运行。
数据库日志中出现启动JOB进程的TIMED OUT信息 :由于操作系统资源不足引起的错误。


分区表:
分区表使用ENABLE ROW MOVEMENT的副作用 :将分区表设置为ENABLE ROW MOVEMENT可能带来的问题。
几个关于分区的小的存储过程 :通过表中的记录的ROWID得到这条记录所在的分区名称;计算表中各个分区的记录数;计算表中各个子分区的记录数。
在同义词上执行ALTER TABLE ADD PARTITION语句会导致BUG :基于分区表的同义词上执行添加分区操作会产生bug。
将普通表转变为分区表 :介绍了将普通表转化为分区表的几种方法。
通过JOB增加分区 :利用JOB定时增加分区。
本地分区索引如何确定表空间 :分区表增加分区时,怎样确定LOCAL分区索引的表空间。
物化视图的PCT特性(一) :基于分区表的物化视图的PCT特性介绍。
物化视图的PCT特性(二) :基于分区表的物化视图的PCT特性的限制条件。
通过同义词访问远端分区表的某个分区 :通过同义词访问远端分区的问题。
HASH分区表增加新的分区的一点研究 :增加HASH分区对现有分区的影响。
分区操作后索引的状态 :研究怎样进行分区操作对GLOBAL索引影响最小。
ORACLE11G ORA-600[kkdcacr ptn_kxcp]错误 :参考分区造成的bug。
参考分区子表使用GET_DEPENDENT_DDL结果异常 :参考分区子表使用DBMS_METADATA.GET_DENPENDENT_DDL函数获取外键信息时得到结果:begin NULL; end;。
ORA-600(prssptoa2)错误 :11g的系统分区时碰到一个600错误。
Oracle11g INTERVAL分区新增分区策略 :介绍Oracle11g INTERVAL分区新增分区策略。
Oracle11新特性——分区功能增强(一) :Oracle新增的4种复合分区。
Oracle11新特性——分区功能增强(二) :Oracle11g新增的INTERVAL分区功能。
Oracle11新特性——分区功能增强(三) :Oracle11g新增的参考分区功能。
Oracle11新特性——分区功能增强(四) :Oracle11g的虚拟列分区功能。
Oracle11新特性——分区功能增强(五) :Oracle11g的系统分区功能。
ORA-600(ktsircinfo_num1)错误 :导致这个问题的原因是在交换分区的时候指定了一个临时表。
数据泵导入分区表统计信息报错(一) :在进行数据泵导入操作时,发现一个bug。
数据泵导入分区表统计信息报错(二) :继续深入研究这个问题。
数据泵导入分区表统计信息报错(三) :检查问题和表的MONITORING属性之间的关系。
数据泵导入分区表统计信息报错(四) :文章描述问题的解决过程。
数据泵导入分区表统计信息报错(五) :描述导致问题的原因。
数据泵导入分区表统计信息报错(六) :描述问题重现的过程。
ORACLE10g新特性——全局HASH分区索引 :Oracle10g中新增了全局分区索引的类型——HASH分区。
10g在线重定义新特性——对单独的分区进行在线重定义 :在线重定义还增加了对单独一个分区执行在线重定义的功能。
创建单独的分区存储NULL记录 :建立一个分区表,使得包含NULL记录在单独的分区,而其他记录在另一个分区。
分区键值为空的bug :当分区表的键值为空,可能导致bug。
数据泵避免个别表数据的导出(二) :介绍如何对分区表实现这个功能。


性能优化:
oracle的执行计划居然出错! :9204中查询重写的bug。
BITMAP索引的结构 :介绍BITMAP索引的存储结构。
sql语句中常量的处理 :在使用SQL中,怎样处理常量效率更高。
奇怪的Cluster提示 :CLUSTER提示的特点。
函数索引和初始化参数的关系 :9i后函数索引使用不再需要设置初始化参数。
通过USE_CONCAT提示想到的 :HINT与执行计划的关系问题。
在RULE模式下NL_AJ和NL_SJ提示无效 :NL_AJ和NL_SJ提示在RULE模式下被忽略。
NO_PUSH_SUBQ提示无效 :Oracle提示无效的bug。
利用Oracle的bug进行测试——UNNEST提示的测试记录 :利用BUG测试UNNEST提示的功能。
奇怪的PUSH_PRED和NO_PUSH_PRED提示 :Oracle认出了提示,但是将其忽略掉了。
EXPAND_GSET_TO_UNION提示不起作用 :又一个无效的提示。
执行COUNT(COLUNM_NAME)不使用索引 :介绍了9i和10g优化器处理COUNT(COLUMN)的区别。
Oracle的RBO优化器 :RBO优化器优先级排名。
RBO下表连接顺序的确定 :介绍RBO表连接的顺序。
CBO使用CHECK的一个Bug :当CHECK条件恒为NULL时的问题。
NOT NULL约束与CHECK约束 :介绍直接设置NOT NULL约束和CHECK(COL IS NOT NULL)的区别。
常数索引 :Oracle支持常数索引。
取得表中总记录数最快的方法 :给出快速从表中读取记录总数的多种方法。
创建索引对运行中的SQL语句的影响(一) :创建索引对于大部分正在运行的SQL语句是不会带来性能提升的。
创建索引对运行中的SQL语句的影响(二) :带来性能提升的特例。
组合索引限制条件的验证 :验证组合索引的限制条件。
CACHE和NOCACHE提示无效 :描述了对CACHE和NOCACHE提示的测试。
CACHE和NOCACHE提示的进一步研究(一) :进一步讨论NOCACHE提示。
CACHE和NOCACHE提示的进一步研究(二) :讨论CACHE和NOCACHE对表的影响。
KEEP池的CACHE特点(一) :KEEP池的使用。
KEEP池的CACHE特点(二) :KEEP池不足时的CACHE特点。
KEEP池的CACHE特点(三) :描述索引在KEEP池的CACHE特点。
KEEP池的CACHE特点(四) :KEEP池的内存清理特点。
RECYCLE池的CACHE特点(一) :RECYCLE池的使用。
RECYCLE池的CACHE特点(二) :描述RECYCLE不足时的CACHE特点。
RECYCLE池的CACHE特点(三) :描述索引在RECYCLE池的CACHE特点。
RECYCLE池的CACHE特点(四) :CACHE提示对RECYCLE池的影响。
Oracle分页查询语句(一) :分页查询标准写法。
Oracle分页查询语句(二) :分页查询标准写法与错误写法效率对比。
Oracle分页查询语句(三) :表连接情况效率对比。
Oracle分页查询语句(四) :内部子查询排序的情况。
Oracle分页查询语句(五) :UNION ALL和GROUP BY等操作会导致分页查询的效率优势消失。
Oracle分页查询语句(六) :分页查询翻页到最后的性能问题。
Oracle分页查询语句(七) :ORDER BY STOPKEY和ORDER BY在翻页最后几页的性能差别。
Oracle分页查询格式(八) :如何对包含UNION ALL的分页语句编写特殊的分页查询语句。
Oracle分页查询格式(九) :如何对包含DISTINCT/GROUP BY/UNIQUE的分页语句编写特殊的分页查询语句。
Oracle分页查询格式(十) :10g的新执行计划GROUP BY STOPKEY,解决了GROUP BY分页效率低的问题。
Oracle分页查询格式(十一) :介绍分析函数用于分页。
Oracle分页查询格式(十二) :介绍分析函数用于分页,且排序字段上包含索引的情况。
Oracle分页查询格式(十三) :介绍HASH SORT CLUSTER表对分页查询的帮助。
分页查询的排序问题 :对排序算法的简单推测。
分页查询的排序问题(二) :描述一下排序键值重复的一点研究。
查询操作系统统计信息 :寻找操作系统统计信息的保存位置。
Statspack的唯一冲突bug :设置了CURSOR_SHARING为SIMILAR后,可能导致STATSPACK收集信息时出现唯一冲突的BUG。
解决的statspack bug的后续问题 :Oracle推荐的解决问题的方法存在着一定的问题。
Oracle9i Cursor_sharing设置为similar引起的bug :设置了CURSOR_SHARING为SIMILAR后出现了一堆的问题,这篇文章进行简单的总结。
如何判断索引是系统产生还是用户创建的 :区分索引是用户自己创建的还是Oracle自动生成的。
RBO如何确定使用索引的顺序 :描述RBO确定索引顺序的规则。
ANALYZE的ESTIMATE语法处理全文索引的bug :ANALYZE的ESTIMATE语法在分析全文索引表时的问题。
域索引提示无效 :域索引提示DOMAIN_INDEX_SORT和DOMAIN_INDEX_NO_SORT无效。
FIRST_ROWS和FIRST_ROWS(N)的区别 :描述了FIRST_ROWS和FIRST_ROWS(N)的区别。
同时查询MAX和MIN的SQL :如何优化同时查询MAX和MIN的SQL语句。
小议笛卡儿连接 :对CARTESIAN连接进行简单的分析。
全文索引性能分析(一) :整体分析。
全文索引性能分析(二) :统计信息对全文索引性能影响。
全文索引性能分析(三) :直方图对全文索引性能影响。
全文索引性能分析(四) :多个全文索引查询条件的情况。
全文索引性能分析(五) :包含两个全文索引查询字段的情况。
全文索引性能分析(六) :两张关联表都包含全文索引查询的情况。
全文索引性能分析(七) :继续讨论两张关联表都包含全文索引查询的情况,并给出解决方案。
全文索引性能分析(八) :进一步深入探讨上一篇给出的解决方案,利用节搜索解决了解决方案中存在的逻辑问题。
利用执行计划来避免排序操作(一) :对于单表操作如何避免排序。
利用执行计划来避免排序操作(二) :对于表连接的情况如何避免排序。
Oracle对索引分析的优化 :Oracle分析索引的时候,可能会将COMPUTE方式转化为ESTIMATE方式。
恒等查询条件改变执行计划——SQL优化之Everything is Possible :SQL中添加一个1=1的条件也可能改变执行计划。
增加索引改变执行计划——SQL优化之Everything is possible :增强索引造成执行计划改变,且新执行计划并没有使用新增索引。
增加Distinct后查询效率反而提高——SQL优化之Everything is possible :添加DISTINCT反而提高查询速度。
两层GROUP BY效率反而比一层GROUP BY效率高——SQL优化之Everything is possible :查询中两次GROUP BY比一次GROUP BY效率高的例子。
UNION效率比UNION ALL效率高——SQL优化之Everything is possible :使用UNION要比使用UNION ALL的效率高的情况。
ORA-30496错误 :设置open_cursor为similar造成的错误
9i奇怪的AJ执行计划 :920上AJ执行计划的bug。
ORACLE-7445(kghbigasp)错误 :设置PGA_AGGREGATE_TARGET引起的错误。
ORA-7445(kkodsel)错误 :星型查询造成的问题。
不同建表方式对统计信息影响不同 :10g的统计信息和建表的方式还有关系。
基于UNION ALL的分页查询执行计划问题 :9i上UNION ALL分页查询可能会影响性能。
基于UNION ALL的分页查询执行计划问题(二) :给出一个相对简单的解决方法。
CHECK约束中的NULL条件 :恒NULL条件对CHECK约束的影响。
核心表AUTOTRACE结果出错 :核心表AUTOTRACE结果出错。
一次系统视图查询的优化 :一次系统视图查询的优化。
利用索引提示减少分页的嵌套层数 :利用索引提示减少分页的嵌套层数。
如何让Oracle产生预期的执行计划(一) :以INDEX_JOIN为例,简单描述影响Oracle的执行计划的产生。
如何让Oracle产生预期的执行计划(二) :通过修改表结构的方式改变执行计划的方法。
如何让Oracle产生预期的执行计划(三) :通过修改数据的方式改变执行计划的方法。
ORA-7445(kghbigghs)错误 :9i设置PGA_AGGREGATE_TARGET导致的bug。
ORACLE动态性能视图统计值溢出 :整型数溢出问题。
Oracle10g的FAST DUAL执行计划 :FAST DUAL执行计划。
Oracle10g可以查看DDL的执行计划 :EXPLAIN PLAN FOR查看DDL语句的执行计划。
Oracle10G新增NO提示 :10g中很多HINT添加了对应的NO_HINT。
ORA-7445(ksmarfg) :仍然是PGA_AGGREGATE_TARGET导致的bug。
设置MEMORY_TARGET会导致RESULT_CACHE_MAX_SIZE在重启后归零 :设置MEMORY_TARGET,则RESULT_CACHE_MAX_SIZE的设置在数据库重启后自动被置为0。
设置MEMORY_TARGET会导致RESULT_CACHE_MAX_SIZE在重启后归零(二) :再次测试后发现了导致问题的真正原因。
ORA11G ORA-00845 错误 :Oracle 11g的Linux版本在修改了MEMORY_TARGET或者SGA_TARGET后启动可能会报错。
重启系统后AUTOTRACE统计为零 :重启系统后AUTOTRACE统计为零。
V$SQL视图显示结果异常的诊断 :V$SQL视图中SQL_TEXT列中的数据是不正常的。
10203设置CURSOR_SHARING为SIMILAR导致物化视图刷新失败 :设置CURSOR_SHARING为SIMILAR导致物化视图刷新失败。
ORA-600(925)错误 :设置过大的SORT_AREA_SIZE引发的错误。
Oracle11新特性——SQL缓存结果集(一) :11g新增功能缓存结果集中SQL语句的缓存。
Oracle11新特性——SQL缓存结果集(二) :SQL缓存结果集的特点。
Oracle11新特性——SQL缓存结果集(三) :SQL缓存结果集的特点并简单介绍DBMS_RESULT_CACHE包。
Oracle11新特性——PLSQL函数缓存结果(一) :11g新增功能PLSQL函数缓存结果的功能。
Oracle11新特性——PLSQL函数缓存结果(二) :11g新增功能PLSQL函数缓存结果和DETERMINISTIC函数的区别。
Oracle11新特性——PLSQL函数缓存结果(三) :11g新增功能PLSQL函数缓存结果的应用实例。
临时表产生REDO过多的bug :9204上INSERT INTO SELECT方式插入临时表,造成的REDO比插入普通表还多。
函数索引产生隐藏列 :前两天在进行LOGMNR操作的时候发现了空的列名,经检查发现是函数索引造成的隐藏列。
ORA-00844错误 :Oracle的内存管理方式改为自动内存管理时,出现的错误。
一次更新操作的优化 :描述最近进行了一次更新操作的处理和优化工作。
利用Oracle的新特性优化SQL :利用Oracle的新特性优化SQL。
索引重建的数据源 :索引重建的数据源问题。
10g数据泵和导入导出性能对比(四) :讨论并行度对数据泵导出的影响。
Tom新书的一个小bug——mystat脚本 :在看Tom的新书Oracle9i&10g编程艺术发现了一个小问题。
ORA-600(16515)错误 :收集统计信息时出现了bug。
SQL优化引出的问题(一) :经过简单的检查,找到了一个问题SQL语句。
SQL优化引出的问题(二) :继续寻找导致问题的真正原因。
DBA_JOBS_RUNNING视图访问缓慢 :一个经常碰到的bug,访问DBA_JOBS_RUNNING视图长时间得不到结果。
DBA_LMT_USED_EXTENTS视图访问缓慢 :又一个访问数据字典视图缓慢的bug。
ORA-7445(kkojnp)错误 :FIRST_ROWS模式下,使用分析函数且不包括ORDER BY语句可能导致这个bug。
ORA-7445(qkabxo)错误 :FIRST_ROWS模式下,执行计划中出现BITMAP索引扫描导致的错误。
BITMAP索引异常增大 :BITMAP索引异常增大的BUG。
FIRST_ROWS优化模式语言排序模糊匹配问题 :在FIRST_ROWS优化模式下,将会话排序和比较方式设置为语义模式,即忽略大小写模式,对字段进行LIKE模糊查询,可能导致错误的结果。
FIRST_ROWS优化模式访问远端表可能导致错误结果(一) :FIRST_ROWS优化模式下,通过数据库链访问远端表,且SQL包括IN子查询语句时,优化器可能给出错误的执行计划,从而导致结果集出现重复记录。
FIRST_ROWS优化模式访问远端表可能导致错误结果(二) :继续研究问题和版本的关系,以及相应的解决方法。
STATSPACK清除数据时没有删除STATS$UNDOSTAT :Oracle在清除STATSPACK数据的时候,漏掉了STATS$UNDOSTAT表。
STATSPACK数据清除(一) :Oracle文档推荐的STATSPACK过期数据产生的方法是直接删除STATS$SNAPSHOT表中的记录。
STATSPACK数据清除(二) :进一步描述清除问题。
利用MOVE压缩表的高水位线 :MOVE不指定INITIAL不会压缩第一个EXTENT。
11G访问DBA_OBJECTS和V$LOCK视图时HANG住 :11g也存在访问数据字典出现长时间等待的问题。
一次ORA-4030问题诊断及解决(一) :简单记录一下问题的诊断和解决过程。
一次ORA-4030问题诊断及解决(二) :继续寻找源数据库和目标数据库执行计划不同的原因。
一次ORA-4030问题诊断及解决(三) :寻找产生问题的真正原因。
WEBLOGIC连接Oracle RAC的负载均衡测试 :测试单实例与RAC环境各个节点的负载情况。
清空数据库缓冲区的方法(一) :描述10g清空数据库缓冲区的方法。
清空数据库缓冲区的方法(二) :描述9i清空数据库缓冲区的方法。
9i索引范围扫描逻辑读问题 :9i在默写情况下,执行索引范围扫描,并没有过滤结果,导致大量不必要的逻辑读。
ORA-600(15599)错误 :又是和PGA_AGGREGATE_TARGET有关bug。
外键列上是否需要索引 :描述索引对于外键支持的重要性。
HINT如何跨越视图生效 :如何是HINT跨越视图对基表生效。
由HINT跨越视图生效想到的 :HINT对视图的方式同样使用于SQL子查询中的匿名视图。
利用NO_MERGE解决数据字典视图访问低效 :通过NO_MERGE视图来避免低效的执行计划。
加载数据顺序对HASH SORT CLUSTER性能影响 :加载或插入数据的顺序对影响影响很大。
Oracle11gr2新增提示IGNORE_ROW_ON_DUPKEY_INDEX :Oracle新增了一个HINT,使得INSERT INTO SELECT操作可以避免插入重复的记录。
ORA-600(qerltcInsertSelectRop_bad_state)错误 :在利用IGNORE_ROW_ON_DUPKEY_INDEX提示执行插入时,很可能碰到这个错误。
利用USE_INDIRECT_DATA_BUFFERS突破32位的2G内存限制(一) :介绍如何设置这个参数。
利用USE_INDIRECT_DATA_BUFFERS突破32位的2G内存限制(二) :介绍设置这参数过程中碰到的错误。
DECODE和CASE的性能比较 :比较这两个功能类型的方面的性能差别。
数据库启动出现ORA-27102错误 :测试数据库启动时出现了这个错误。
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值