It will enable me to get enthusiast with RAC live webinars, documents from now on.
You may subcribe from http://www.oracleracsig.org/pls/apex/f?p=105:51:0::NO:51
Enjoy it !
_ALLOW_RESETLOGS_CORRUPTION = TRUE
_ALLOW_READ_ONLY_CORRUPTION = TRUE
UNDO_MANAGEMENT = MANUAL
Beware of using above parameters that it will be last resort for opening the database.
Further, we asked for _corrupted_rollback_segments parameter to Oracle ACS, thanks Osman Abi:), he told that we could have been used that parameter in case of corruption on undo segments which may prevent opening database.
alter database open resetlogs upgrade;
Monitor archivelog backup health by following:
select sequence#,archived,deleted,backup_count, status from gv$archived_log where sequence#=111430 and inst_id=2;
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 10/09/2012 12:31:11
RMAN-06053: unable to perform media recovery because of missing log
RMAN-06025: no backup of archived log for thread 2 with sequence 111430 and starting SCN of 11345139269565 found to restore
RMAN-06025: no backup of archived log for thread 2 with sequence 111428 and starting SCN of 11344754878547 found to restore
RMAN-06025: no backup of archived log for thread 2 with sequence 111426 and starting SCN of 11344754846270 found to restore
RMAN-06025: no backup of archived log for thread 2 with sequence 111420 and starting SCN of 11344754612059 found to restore
RMAN-06025: no backup of archived log for thread 2 with sequence 111418 and starting SCN of 11344754547555 found to restore
RMAN-06025: no backup of archived log for thread 2 with sequence 111416 and starting SCN of 11344754483883 found to restore
RMAN-06025: no backup of archived log for thread 2 with sequence 111415 and starting SCN of 11344754472813 found to restore
RMAN-06025: no backup of archived log for thread 2 with sequence 111414 and starting SCN of 11344754461578 found to restore
RMAN-06025: no backup of archived log for thread 2 with sequence 111413 and starting SCN of 11344754450683 found to restore
RMAN-06025: no backup of archived log for thread 2 with sequence 111412 and starting SCN of 11344754438403 found to restore
...1- Whether archive log sequence 111430 exists in controlfile from RMAN connected to target database controlfile by:
oracle@kiev:/zfssa/restore1>rman target /
Recovery Manager: Release 11.2.0.3.0 - Production on Tue Oct 9 16:52:27 2012
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
connected to target database: MYDB (DBID=1032014565, not open)
RMAN> list backup of archivelog FROM SEQUENCE 111245 UNTIL SEQUENCE 111247;
using target database control file instead of recovery catalog
specification does not match any backup in the repository
RMAN>
RMAN> list backup of archivelog all completed between '2012-09-23 00:00:00' AND '2012-09-24 00:00:00';
List of Backup Sets
===================
BS Key Size Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ -------------------
199745 11.25M SBT_TAPE 00:00:10 23.09.2012 00:00:47
BP Key: 205852 Status: AVAILABLE Compressed: NO Tag: TAG20120923T000036
Handle: a3nlsh95_1_1 Media: J30643
List of Archived Logs in backup set 199745
Thrd Seq Low SCN Low Time Next SCN Next Time
---- ------- ---------- ------------------- ---------- ---------
1 83839 11343439796011 22.09.2012 23:30:05 11343439805018 23.09.2012 00:00:03
...select sequence#,archived,deleted,backup_count, status
from gv$archived_log where sequence#=111430 and inst_id=2;| SEQUENCE# | ARCHIVED | DELETED | BACKUP_COUNT | STATUS |
| 111430 | YES | YES | 0 | D |
As a result, we achieve a conclusion that archivelog file was deleted but not backed up because backup_count is 0.
oracle@kiev:/tmp>more /u01/app/oracle/product/11.2.0/dbhome_1/dbs/initMYDB.ora *._ALLOW_RESETLOGS_CORRUPTION= TRUE
*._ALLOW_READ_ONLY_CORRUPTION=TRUE
*.cluster_database=false
*.audit_file_dest='/u01/app/oracle/admin/MYDB/adump'
*.audit_trail='db'
*.compatible='11.2.0.0.0'
*.control_file_record_keep_time=14
*.control_files='/tmp/ctl_mydb_01.dbf'
*.cursor_sharing='FORCE'
*.db_block_size=32768
*.db_cache_size=0
*.db_create_file_dest='/zfssa/restore1'
*.db_domain=''
*.db_name='MYDB'
*.diagnostic_dest='/u01/app/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=MYDBXDB)'
*.log_archive_dest_1='LOCATION=/zfssa/restore1'
*.memory_target=0
*.open_cursors=300
*.parallel_force_local=FALSE
*.parallel_max_servers=256
*.pga_aggregate_target=1212254720
*.processes=1000
*.remote_login_passwordfile='exclusive'
*.sessions=1105
*.sga_max_size=107374182400
*.sga_target=107374182400
*.shared_pool_size=34359738368
*.undo_tablespace='UNDOTBS1'
*.UNDO_MANAGEMENT=MANUALoracle@kiev:/tmp>sqlplus / as sysdba
SQL*Plus: Release 11.2.0.3.0 Production on Tue Oct 9 19:41:37 2012
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup nomount pfile='/u01/app/oracle/product/11.2.0/dbhome_1/dbs/initMYDB.ora';
ORACLE instance started.
oracle@kiev:/tmp>cat bckcf.ctl
-- End of tempfile additions.
--
-- Set #2. RESETLOGS case
--
-- The following commands will create a new control file and use it
-- to open the database.
-- Data used by Recovery Manager will be lost.
-- The contents of online logs will be lost and all backups will
-- be invalidated. Use this only if online logs are damaged.
-- WARNING! The current control file needs to be checked against
-- the datafiles to insure it contains the correct files. The
-- commands printed here may be missing log and/or data files.
-- Another report should be made after the database has been
-- successfully opened.
-- After mounting the created controlfile, the following SQL
-- statement will place the database in the appropriate
-- protection mode:
-- ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE PERFORMANCE
STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE "MYDB" RESETLOGS ARCHIVELOG
MAXLOGFILES 192
MAXLOGMEMBERS 3
MAXDATAFILES 1024
MAXINSTANCES 32
MAXLOGHISTORY 34824
LOGFILE
GROUP 5 '/zfssa/restore1/redolog5.dbf' SIZE 500M BLOCKSIZE 512,
GROUP 6 '/zfssa/restore1/redolog6.dbf' SIZE 500M BLOCKSIZE 512,
GROUP 7 '/zfssa/restore1/redolog7.dbf' SIZE 500M BLOCKSIZE 512
-- STANDBY LOGFILE
DATAFILE
'/zfssa/restore1/SYSTEM1.dbf',
'/zfssa/restore1/SYSAUX2.dbf',
'/zfssa/restore1/UNDOTBS3.dbf',
'/zfssa/restore1/UNDOTBS9.dbf',
'/zfssa/restore1/UNDOTBS4.dbf',
'/zfssa/restore1/UNDOTBS7.dbf',
'/zfssa/restore1/UNDOTBS8.dbf',
'/zfssa/restore1/UNDOTBS6.dbf',
'/zfssa/restore1/SYSAUX1.dbf',
'/zfssa/restore1/UNDOTBS2.dbf',
'/zfssa/restore1/UNDOTBS1.dbf',
'/zfssa/restore1/TBS_DWH_NODI_B.dbf'CHARACTER SET WE8ISO8859P9;
-- Create log files for threads other than thread one.
ALTER DATABASE ADD LOGFILE THREAD 2
GROUP 8 '/zfssa/restore1/redolog8.dbf' SIZE 500M BLOCKSIZE 512 REUSE,
GROUP 9 '/zfssa/restore1/redolog9.dbf' SIZE 500M BLOCKSIZE 512 REUSE,
GROUP 10 '/zfssa/restore1/redolog10.dbf' SIZE 500M BLOCKSIZE 512 REUSE;
-- Database can now be opened zeroing the online logs.
--ALTER DATABASE OPEN RESETLOGS;
- Commands to add tempfiles to temporary tablespaces.
-- Online tempfiles have complete space information.
-- Other tempfiles may require adjustment.
My mantra, that I'll be sticking with thank you very much, is:
- You should do it in a single SQL statement if at all possible.
- If you cannot do it in a single SQL Statement, then do it in PL/SQL.
- If you cannot do it in PL/SQL, try a Java Stored Procedure.
- If you cannot do it in Java, do it in a C external procedure.
- If you cannot do it in a C external routine, you might want to seriously think about why it is you need to do it…
Restore test environment.
HP-UX myhost1 B.11.31 U ia64
Oracle Database 11g Enterprise Edition Release 11.2.0.2.0
- lack of controlfile
-SYSTEM tablespace needs media recovery
alter diskgroup data dismount force;
drop diskgroup data force including contents;
srvctl stop diskgroup -g DATA
srvctl disable diskgroup -g DATA
srvctl stop asm
FALSEParallel rollback is disabled
LOWLimits the maximum degree of parallelism to 2 *CPU_COUNT
HIGHLimits the maximum degree of parallelism to 4 *CPU_COUNT
(http://docs.oracle.com/cd/E14072_01/server.112/e10820/initparams083.htm)
INSTANCE USERNAME OSUSER ACTIVE INACTIVE SES_COUNT PERCENT
-------------------- ------------------------- --------------- --------- --------- --------- -------
MYDB1-MYDB1 ODI MYUSER 13 %5,07
oracle 12 116 128 %50
MYDB2-MYDB2 ODI MYUSER 14 11 31 %12,1
INSTANCE Username QC/Slave SID SERIAL OSUSER HASH_VALUE AUDSID Re Ac MACHINE STATUS
-------------------- ------------------------- ---------- ------ ------ --------------- ------------ ------------ -- -- ------------ ----------
MYDB1-MYDB1 ODI QC 1059 18677 MYUSER 3974800174 10212110 TURKCELL\T ACTIVE
QC 721 1 oracle 0 0 MYDB1.bi ACTIVE
QC 721 1 0 0 MYDB2.bi ACTIVE
MYDB2-MYDB2 ADMIN QC 1061 1393 MYUSER2 3551939252 10221613 TURKCELL\T ACTIVE
INSTANCE PARALLEL PROCESS INFO
-------------------- ----------------------------------------
MYDB2-MYDB2 USED : 31 AVAILABLE : 225 TOTAL : 256
MYDB1-MYDB1 USED : 141 AVAILABLE : 115 TOTAL : 256
ADMIN@MYDB:MYDB2>
ADMIN@MYDB:MYDB2> select * from gV$FAST_START_TRANSACTIONS;
INST_ID USN SLT SEQ STATE UNDOBLOCKSDONE UNDOBLOCKSTOTAL PID CPUTIME PARENTUSN PARENTSLT PARENTSEQ XID PXID RCVSERVERS
--------- --------- --------- --------- ------------------------------------------------ -------------- --------------- --------- --------- --------- --------- --------- ---------------- ---------------- ----------
1 71 112 9176 RECOVERING 5211 159526 120 137 167 27 4681 47007000D8230000 A7001B0049120000 126
1 150 21 11387 RECOVERING 4019 155416 85 137 167 27 4681 960015007B2C0000 A7001B0049120000 1
1 271 25 1662 RECOVERING 2397 148283 89 137 167 27 4681 0F0119007E060000 A7001B0049120000 1
1 42 41 37080 RECOVERED 28 28 10 2A002900D8900000 128
4 rows selected.
-------------
ADMIN@MYDB:MYDB2> alter system set fast_start_parallel_rollback=FALSE scope=both sid=*;
ADMIN@MYDB:MYDB2> select * from GV$FAST_START_TRANSACTIONS;
INST_ID USN SLT SEQ STATE UNDOBLOCKSDONE UNDOBLOCKSTOTAL PID CPUTIME PARENTUSN PARENTSLT PARENTSEQ XID PXID RCVSERVERS
--------- --------- --------- --------- ------------------------------------------------ -------------- --------------- --------- --------- --------- --------- --------- ---------------- ---------------- ----------
1 71 112 9176 RECOVERING 4 153858 1 47007000D8230000 0
1 271 25 1662 RECOVERING 4 145586 1 0F0119007E060000 0
1 150 21 11387 RECOVERING 5 151280 1 960015007B2C0000 0
1 42 41 37080 RECOVERED 28 28 10 2A002900D8900000 128
4 rows selected.
ADMIN@MYDB:MYDB2> @pari
INSTANCE USERNAME OSUSER ACTIVE INACTIVE SES_COUNT PERCENT
-------------------- ------------------------- --------------- --------- --------- --------- -------
MYDB1-MYDB1 ODI MYUSER 13 %5,07
MYDB2-MYDB2 ODI MYUSER 14 11 31 %12,1
INSTANCE Username QC/Slave SID SERIAL OSUSER HASH_VALUE AUDSID Re Ac MACHINE STATUS
-------------------- ------------------------- ---------- ------ ------ --------------- ------------ ------------ -- -- ------------ ----------
MYDB1-MYDB1 ODI QC 1059 18677 MYUSER 3974800174 10212110 TURKCELL\T ACTIVE
MYDB2-MYDB2 ADMIN QC 1061 1393 MYUSER2 3551939252 10221613 TURKCELL\T ACTIVE
INSTANCE PARALLEL PROCESS INFO
-------------------- ----------------------------------------
MYDB2-MYDB2 USED : 31 AVAILABLE : 225 TOTAL : 256
MYDB1-MYDB1 USED : 13 AVAILABLE : 243 TOTAL : 256
ADMIN@MYDB:MYDB2>
ADMIN@MYDB:MYDB2> alter system set fast_start_parallel_rollback=HIGH scope=both sid=*;
ADMIN@MYDB:MYDB2> select * from GV$FAST_START_TRANSACTIONS;
INST_ID USN SLT SEQ STATE UNDOBLOCKSDONE UNDOBLOCKSTOTAL PID CPUTIME PARENTUSN PARENTSLT PARENTSEQ XID PXID RCVSERVERS
--------- --------- --------- --------- ------------------------------------------------ -------------- --------------- --------- --------- --------- --------- --------- ---------------- ---------------- ----------
1 71 112 9176 RECOVERING 1272 16970 80 24 167 27 4681 47007000D8230000 A7001B0049120000 233
1 150 21 11387 RECOVERING 651 20408 81 24 167 27 4681 960015007B2C0000 A7001B0049120000 1
1 271 25 1662 RECOVERING 909 11312 82 24 167 27 4681 0F0119007E060000 A7001B0049120000 1
1 42 41 37080 RECOVERED 28 28 10 2A002900D8900000 128
ADMIN@MYDB:MYDB2> @pari
INSTANCE USERNAME OSUSER ACTIVE INACTIVE SES_COUNT PERCENT
-------------------- ------------------------- --------------- --------- --------- --------- -------
MYDB1-MYDB1 ODI MYUSER 13 %5,07
oracle 243 0 243 %94,92
MYDB2-MYDB2 ODI MYUSER 24 0 30 %11,71
INSTANCE Username QC/Slave SID SERIAL OSUSER HASH_VALUE AUDSID Re Ac MACHINE STATUS
-------------------- ------------------------- ---------- ------ ------ --------------- ------------ ------------ -- -- ------------ ----------
MYDB1-MYDB1 ODI QC 1059 18677 MYUSER 0 10212110 TURKCELL\T ACTIVE
QC 721 1 oracle 0 0 MYDB1.bi ACTIVE
QC 721 1 0 0 MYDB2.bi ACTIVE
MYDB2-MYDB2 ADMIN QC 1061 1393 MYUSER2 3551939252 10221613 TURKCELL\T ACTIVE
INSTANCE PARALLEL PROCESS INFO
-------------------- ----------------------------------------
MYDB1-MYDB1 USED : 256 AVAILABLE : 0 TOTAL : 256
MYDB2-MYDB2 USED : 30 AVAILABLE : 226 TOTAL : 256
ADMIN@MYDB:MYDB2>
Click on image, for bigger size.
insert /*+ APPEND PARALLEL(4)*/ into admin.test2
select /*+ DRIVING_SITE(T) PARALLEL(4) */ * from admin1.test2@MYDB2.WORLD T where 1=1
;
select * from dba_2pc_pending;
select * from dba_2pc_neighbors;
oracle@mydb1>opatch apply
Invoking OPatch 11.2.0.1.8
Oracle Interim Patch Installer version 11.2.0.1.8
Copyright (c) 2011, Oracle Corporation. All rights reserved.
Oracle Home : /u01/app/oracle/product/11.2.0/dbhome_1
Central Inventory : /u01/app/oraInventory
from : /etc/oraInst.loc
OPatch version : 11.2.0.1.8
OUI version : 11.2.0.2.0
Log file location : /u01/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs/opatch/opatch2012-02-01_21-16-28PM.log
Applying interim patch '9578670' to OH '/u01/app/oracle/product/11.2.0/dbhome_1'
Verifying environment and performing prerequisite checks...
Prerequisite check "CheckActiveFilesAndExecutables" failed.
The details are:
Following executables are active :
/u01/app/oracle/product/11.2.0/dbhome_1/lib/libclntsh.so.11.1
[ Error during Prerequisite for apply Phase]. Detail: ApplySession failed during prerequisite checks: Prerequisite check "CheckActiveFilesAndExecutables" failed.
Log file location: /u01/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs/opatch/opatch2012-02-01_21-16-28PM.log
Recommended actions: OPatch needs to modify files which are being used by some processes.
OPatch failed with error code 41
oracle@mydb1>/sbin/fuser /u01/app/oracle/product/11.2.0/dbhome_1/lib/libclntsh.so.11.1
/u01/app/oracle/product/11.2.0/dbhome_1/lib/libclntsh.so.11.1: 12195m
oracle@mydb1>
oracle@mydb1>ps -ef |grep 12195
oracle 12195 11944 0 Jan19 pts/7 00:00:00 adrci
oracle 22813 3717 0 21:18 pts/13 00:00:00 grep 12195
oracle@mydb1>kill -9 12195
You may find Windows mostly powershell equivalent of frequently used Linux commands here. I will update this post, with newer ones by the ti...