All Oracle Error Codes
Oracle DBA Forum

Frequent Oracle Errors

TNS:could not resolve the connect identifier specified
Backtrace message unwound by exceptions
invalid identifier
PL/SQL compilation error
internal error
missing expression
table or view does not exist
end-of-file on communication channel
TNS:listener unknown in connect descriptor
insufficient privileges
PL/SQL: numeric or value error string
TNS:protocol adapter error
ORACLE not available
target host or object does not exist
invalid number
unable to allocate string bytes of shared memory
resource busy and acquire with NOWAIT specified
error occurred at recursive SQL level string
ORACLE initialization or shutdown in progress
archiver error. Connect internal only, until freed
snapshot too old
unable to extend temp segment by string in tablespace
Credential retrieval failed
missing or invalid option
invalid username/password; logon denied
unable to create INITIAL extent for segment
out of process memory when trying to allocate string bytes
shared memory realm does not exist
cannot insert NULL
TNS:unable to connect to destination
remote database not found ora-02019
exception encountered: core dump
inconsistent datatypes
no data found
TNS:operation timed out
PL/SQL: could not find program
existing state of packages has been discarded
maximum number of processes exceeded
error signaled in parallel query server
ORACLE instance terminated. Disconnection forced
TNS:packet writer failure
see ORA-12699
missing right parenthesis
name is already used by an existing object
cannot identify/lock data file
invalid file operation
quoted string not properly terminated

Re: Seeking help with RMAN

David Barbour


You mentioned the restore is set to occur to a point in time "some time after the backupsare completed."  Evidently, some of the redo needed to bring the db to the point in time you've specified isn't contained in either the backup or in the logs copied over.  It's still in either an unarchived redo log, or one that's been archived but not either backed up or transferred to your second server. 

Depending on your bandwidth - how long it will take to send archive logs from the first server to the second - you could, say 10 minutes before the restore kicks off, run a script on the first server that will cycle through you redo logs (alter system switch logfile) then scp all the files with a number higher than what you've got on the second server over to the archive directory on the second server. 

There are ways to accomplish this within your current duplicate script and ways to use RMAN to do it, but I'll leave the mechanics up to you.  The fact is it appears you just don't have enough redo on server 2 to get to the point-in-time specified.

On 7/2/07, William Wagman <wjwagman@ucdavis.edu> wrote:

I am running Oracle on Solaris 9. I am working on a set of
scripts to automate cloning of my production database to a second
server. The cloning is to give developers a playground. I have gotten
part way through the process. RMAN backup pieces and archived redo logs
are copied nightly to the second server and the restore script runs to a
point and that is where I am stuck, I'm sure do to my lack of
understanding of RMAN. On the second server the script I run to clone
the database is called from a shell script and...

connect target sys/pwd@pinnacle
connect auxiliary sys/pwd@pinnacle_stage
connect catalog rmanusr/pwd@cr04_rmancat
run {
# set until time = "to_date(to_char(sysdate, 'yyyymmdd') || ' 02:00',
set until time "to_date('2007-06-28 00:10:00','YYYY-MM-DD:HH24:MI:SS')";
configure auxname for datafile 1 to
configure auxname for datafile 10 to
duplicate target database to 'pinnstag'
'/u02/oracle/pinnstag/o1_mf_1_zbcl9op4_.log' SIZE 250M,
'/u02/oracle/pinnstag/o1_mf_2_zbclbjcc_.log' SIZE 250M,
'/u02/oracle/pinnstag/o1_mf_3_zbclccfn_.log' SIZE 250M,
'/u02/oracle/pinnstag/o1_mf_4_zbcld65j_.log' SIZE 250M,
'/u02/oracle/pinnstag/o1_mf_5_zbclf0lc_.log' SIZE 250M;

The time in the set until time is some point after the backups are
completed. The log looks like this...

printing stored script: Memory Script
set until time  "to_date('2007-06-28
clone database
delete archivelog
executing script: Memory Script

executing command: SET until clause

Starting recover at 2007-06-28:11:43:51
using channel ORA_AUX_DISK_1

starting media recovery

archive log thread 1 sequence 7715 is already on disk as file
archive log thread 1 sequence 7716 is already on disk as file
Oracle Error:
ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error
ORA-01194: file 4 needs more recovery to be consistent
ORA-01110: data file 4:

RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 06/28/2007 11:43:52
RMAN-03015: error occurred in stored script Memory Script
RMAN-06053: unable to perform media recovery because of missing log
RMAN-06025: no backup of log thread 1 seq 7717 scn 3110146550330 found
to restore

I can do this...

SQL> recover database using backup controlfile until cancel;
ORA-00279: change 3110146012833 generated at 06/27/2007 22:00:06 needed
thread 1
ORA-00289: suggestion : /u02/ora_bkp/pinnacle/arch0000007715.arc
ORA-00280: change 3110146012833 for thread 1 is in sequence #7715

Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
Media recovery cancelled.
SQL> alter database open resetlogs;

Database altered.

I am puzzled as to what I must do to get this to work without manual
intervention. I'd appreciate any suggestions.


Bill Wagman
Univ. of California at Davis
IET Campus Data Center
(530) 754-6208