-
一次SQL优化记录
Oct182012在给客户巡检时,发现一个用PL/SQL Developer执行的效率低下SQL,如下: SQL语句如下: UPDATE TS_R_ORDER_DAY_004_TEMP A SET USER_TAG = (select z.USER_TAG from (SELECT USER_TAG, ORDER_ID, ROW_NUMBER() OVER(PARTITION BY ORDER_ID ORD ...
阅读全文抢沙发
-
OCM考试第一题–手动建库及常见错误
Sep262012OCM考试第一道题就是手动建库,之前曾写过关于手动建库的文章,这次当作复习,再记录一下实验过程和常见的错误。 实验环境:OEL5.4 ORACLE 10.2.0.5.0 实验过程 1.创建ORACLE用户 [root @rac2]# groupadd -g 1000 oinstall [root @rac2]# groupadd -g 1200 dba [root @rac2]# useradd -u 1100 -g oinstall -G dba ora ...
阅读全文
-
STANDBY_FILE_MANAGEMENT参数为MANUAL导致物理备库无法添加数据文件
Sep252012对于DATA GUARD环境的数据库,STANDBY_FILE_MANAGEMENT 参数决定当主库创建或添加数据文件时,备库是否自动创建,最近遇到STANDBY_FILE_MANAGEMENT 参数设置为MANUAL,导致主库表空间正常添加数据文件后,备库无法真正创建数据文件,而是在控制文件中加入了UNNAMED00024的记录,而且应用归档进程MRP0终止,以下是告警日 ...
阅读全文作者:dbdream | 分类:Oracle, oracle 10g, oracle 11g | 标签:DATAGUARD, ORA-01274, ORACLE, STANDBY_FILE_MANAGEMENT, UNNAMED000
-
ORACLE DATA GUARD搭建时备库忘建redo日志处理
Sep192012搭建DATA GUARD,利用RMAN备份恢复备库时,由于RMAN不会备份REDO文件,还原后的备库缺少REDO日志文件,对于用归档日志同步数据的备库,影响不是很大,依然可以应用日志同步主库的数据变更,但是如果主/备库切换的话,就不行了,对于这样控制文件里记录了REDO的信息,但是在存储上却没有对应的文件的备库,此时删除控制 ...
阅读全文
-
验证DDL隐式提交
Sep122012今天复习了下DDL的隐式提交,在执行DDL语句的时候,ORACLE为了保证事物的一致性,会对当前SESSION未提交的事务隐式提交,以保证DDL语句失败时的回滚位置,以下是DDL操作的伪代码。 从DDL的伪代码可以看到,在执行DDL操作时,首先会执行一个COMMIT操作,提交当前SESSION未提交的事务,然后才会处理DDL语句(DDL操作一般 ...
阅读全文
-
10046的trace文件中XCTEND、rlbk、rd_only的含义
Aug292012今天,正式使用公司的吐槽专区,在吐槽区老大们发起了有关XCTEND、rlbk、rd_only的讨论,简单记录下本人的测试过程,测试使用以下测试表。 SQL> select * from t_test; ID CODE IDENTIFIER ---------- ----- -------------------- 1 01 01-01-0001-000001 2 02 02-01-0001-000 ...
阅读全文作者:dbdream | 分类:Oracle, oracle 10g, oracle 11g | 标签:COMMIT, ORACLE, rollback, XCTEND, XCTEND rlbk rd_only
-
DBMS_SUPPORT包简单使用
Aug222012上一篇文章介绍了使用ORACLE EVENT 10046追踪SQL,详见http://www.dbdream.com.cn/?p=484,本片文章介绍下追踪SQL的另一种方法,使用DBMS_SUPPORT包来追踪SQL。 DBMS_SUPPORT是Oracle为内部人员提供的一个软件包。供内部支持人员使用以更有效地跟踪SQL。馆方文档上没有这个包的说明文件,默认情况下,系统不安装这个包 ...
阅读全文
-
Oracle Event 10046
Aug152012我们在分析应用程序性能问题的时候,更多地需要关注其中SQL语句的执行情况,通常因为应用程序的SQL语句写的不规范而使性能瓶颈落在数据库这边,因此数据库的SQL语句是我们优化的重点。一般情况下我们可以通过初始化参数SQL_TRACE=TRUE来设置SQL跟踪。我们也可以通过设置10046事件来进行SQL跟踪, 10046事件是ORACLE用于 ...
阅读全文作者:dbdream | 分类:Oracle, oracle 10g, oracle 11g | 标签:10046, dbms_monitor, dbms_support, ORACLE, oradebug
-
substr、replace函数简单应用
Aug082012ORACLE接触的久了,我的大脑也开始遵循LRU原则,不常用的知识很快就会被刷新掉,为了和ORACLE一样保证数据一致性,只好将这些东西保存到硬盘上。 前段时间数据已经加载到数据库,最近一直做的是整理这些数据,SUBSTR和REPLACE函数用的比较多, 这里简单记录下。 有一张存放图片的表,包含以下字段,IDENTIFIER是档号,J ...
阅读全文
-
使用ORACLE在线重定义将普通表改为分区表
Aug012012客户有张大表,在设计的时候是分区表,按全宗号分了77个分区,最近发现对这张表查询速度明显比之前慢了许多,经过分析发现这张表的分区不见啦,变成了普通表,问了开发人员才知道,原来他对这张表做了好多次ALTER TABLE XX RENAME和CREATE TABLE XX AS SELECT *操作,由于CREATE TABLE AS(CTAS)操作只会建立同样的表 ...
阅读全文