oracle特殊连接
笛卡尔积(Cartesian join)当一个SQL中两个表无关联条件,或者关联条件可以被忽略的时候就会发生笛卡尔积。遇到这种情况要仔细分析SQL是否符合需求,是不是SQL写错了。在有些情况下,如果CBO预估两个表返回的行数很少(通常小于10),那么也可能发生笛尔积。遇到这样的情况。1.如果SQL跑得很快,并且两个表返回的真实行...
Oracle 并行技术 (Oracle Parallel Execution)
Oracle 并行技术(Oracle Parallel Execution)
让Oracle NULL和NOT NULL使用B数索引
通过在列上创建伪复合索引,让oracle的NULL和NOT NULL查询使用B树索引
用触发器捕捉数据库所有报错sql
用触发器捕捉数据库所有报错sql oracle_trigger
oracle中使用外部表
oracle 外部表
三种join方法
表(结果集)与表(结果集)之间的连接方式非常重要,如果CBO选择了错误的连接方式,本来几秒就能出结果的SQL可能跑一天都跑不完。如果想要快速定位超大型SQL性能问题,就必须深入理解连接方式。在多表JOIN的时候,只能是2个表先JOIN,JOIN之后的结果再和其它表/结果集关联,也就是说任何时候都是只参2个表在做JOIN&n...
oracle 11g自动收集统计信息介绍
对于oracle而言,准确的统计信息对于CBO来说是非常重要的,因为这直接关系到CBO能否对目标SQL生成合适的、正确的执行计划。所以我们应该使自己维护的数据库中的统计信息尽量准确。 在oracle 10g之前并没有自动收集统计信息的机制,对统计信息的收集一般都是由DBA手工编写SHELL脚本来实现。这样...
数据泵常用总结
**************************************************************经验:**************************************************************1 所有的操作都带上JOB_NAME=job99,以方便监控进度2 所有的导出都建议以Schema来做,或Table级,不建议直接全库导出3 即使是按全库导出的,导入的时候也要通过Schema来限定只导用...
PL/SQL developer工具的使用之谈
plsql/developer个人使用之谈
误删数据的紧急修复
在日常维护数据库过程或开发应用过程,可能由于某种原因不慎将表删除了,这时有哪些补救措施呢?下面我们来说说其中的一种方法:flashback drop用于恢复用户误删除的对象(包括表,索引等)这个技术依赖于table recycle bin(表空间回收站,前提是drop表未使用purge),flashback 不支持sys用户,system表空间下的对象...
Oracle扩展的统计信息
Oracle扩展的统计信息
Oracle_Statistic_统计信息_小结
Oracle_Statistic_统计信息Oracle统计信息自动收集器直方图
数据仓库SQL分析之四
ORACLE层次化查询 数据应用组 SQL> set pagesize 10000 SQL> select * from more_employees; EMPLOYEE_ID MANAGER_ID FIRST_NAMELAST_NAME TITLE SAL...
oracle数据文件转移
由于压力测试环境的数据库,经常无法连接导致数据库无法使用,开始几次使用清除监听日志,trace文件还有dmp文件的方式腾出空间,不过效果不明显,在压测进行几轮之后又会导致空间使用100%导致oracle无法连接,后面测试人员申请添加了硬盘,不过挂载在不同目录,所以需要将一些...
Oracle索引分裂 Index Block Split介绍
Oracle索引分裂 Index Block Split介绍
SQLLOAD加载数据常用功能
SQL*LOADER是ORACLE的数据加载工具,通常用来将操作系统文件迁移到ORACLE数据库中。SQL*LOADER是大型数据仓库选择使用的加载方法,因为它提供了最快速的途径(DIRECT,PARALLEL)。对应大量格式化的平文件数据可以快速导入到Oracle
oracle分区表的常规操作导致对索引的影响
oracle分区表的常规的DDL操作对索引的影响
logmnr 工具的使用
logmnr 工具的使用
直方图 二
oracle数据库的直方图用了bucket方式来描述目标列的数据分布,它其实是一个逻辑概念,每个bucket就是一组,每个bucket会存储一个或这多个目标列的数据。oracle会用两个纬度来描述一个bucket,endpoint number和endpoint value,这会记录在数据字典的基表里,HISTGRM$,也可以查询数据字典 DBA_TAB_HISTOGR...
直方图 一
在实际的系统中,目标列的数据分布有可能极度倾斜的。对于这样的列,如果还用均匀分布的原则计算可选择率,进而计算cardinality,然后再计算成本,最后选择执行计划,那么这个执行计划肯定是有问题的,因为在第一步计算的时候,就已经错了。 下面举个例子模拟下场景:  ...