Simulating voting disk failures

RHEL: 6.6 x86_64 DB: 11.2.0.4.160119 RAC [grid@SCMSDBS05 8540]$ crsctl query css votedisk ## STATE File Universal Id File Name Disk group — —– —————– ——— ——— 1. ONLINE 6d40ce0c73704fbabf8a2a8f73008caa (/dev/mapper/mpath03p1) [OCRDG] 2. ONLINE 1689ccb98f974f0fbf9f174484ec1b37 (/dev/mapper/mpath04p1) [OCRDG] 3. ONLINE 75ce7de14f784f5ebfc67dd08c52fd97 (/dev/mapper/mpath05p1) [OCRDG] Located 3 voting disk(s). [grid@SCMSDBS05 8540]$ dd if=/dev/zero of=/dev/mapper/mpath03p1 dd: writing to `/dev/mapper/mpath03p1′: No… Continue reading Simulating voting disk failures

Steps to recreate standby log files in Data Guard

If the real-time apply feature is enabled, log apply services can apply redo data as it is received, without waiting for the current standby redo log file to be archived. This results in faster switchover and failover times because the standby redo log files have been applied already to the standby database by the time… Continue reading Steps to recreate standby log files in Data Guard

Library cache dump and cursors

Test Environment: Oracle : 11.2.0.3 / RHEL : 6.3 x86_64 sqlplus /nolog conn caoff/caoff drop table TEST_NOT_EXIST purge; drop table TEST_EXIST purge; create table TEST_EXIST as select * from dba_objects where rownum<=10; alter system flush shared_pool; — table TEST_NOT_EXIST does not exist select count(*) from TEST_NOT_EXIST; — table TEST_EXIST exists select count(*) from TEST_EXIST; conn… Continue reading Library cache dump and cursors

Concurrent update on the same block

We all know that blocks are cached in buffer cache and there could only be one XCUR cache for each block. What will happen if multiple sessions are updating different rows in the same block simultaneously? SQL> drop table t1 purge; Table dropped. SQL> create table t1(id number, name varchar2(64)); Table created. SQL> begin 2… Continue reading Concurrent update on the same block

ORA-609 with TNS-12537

Question: Does it really mean cnnection was successfully established when you see the following information in listener.log: 12-OCT-2009 10:03:39 * (CONNECT_DATA=(SID=ORCL)) * (ADDRESS=(PROTOCOL=tcp)(HOST=123.456.1.123)(PORT=3158)) * establish * ORCL * 0 12-OCT-2009 10:03:39 * (CONNECT_DATA=(SID=ORCL)) * (ADDRESS=(PROTOCOL=tcp)(HOST=123.456.1.123)(PORT=3159)) * establish * ORCL * 0 Answer: NO!!!! As a big picture, these are the steps for a client connection:… Continue reading ORA-609 with TNS-12537

Delayed block cleanout and ORA-01555

They say delayed block cleanout could cause ORA-01555 and in this post, I did an experiment to try to explain why. –We first alter database undo management as MANUAL and create tablespace and rollback segment drop tablespace rbs_ts including contents and datafiles; create tablespace rbs_ts datafile size 5M autoextend off extent management local segment space… Continue reading Delayed block cleanout and ORA-01555

Understanding transaction, redo and undo record

Stephen Hawking: The greatest enemy of knowledge is not ignorance, it is the illusion of knowledge. I once firmly believed that I’m familiar with the concept of transactions in Oracle such as the ACID properties, rollback, commit, etc. However, it suddenly began to dawn on me that I knew nothing about how Oracle actually do those… Continue reading Understanding transaction, redo and undo record