1. emca -config dbcontrol db -repos create
2. by default the sys user is NOT in the remote password file and will NOT be able to login via OEM. Add the user:
$ORACLE_HOME/bin/orapwd file=$ORACLE_HOME/dbs/orapw<INST> password=hullahoop
1. emca -config dbcontrol db -repos create
2. by default the sys user is NOT in the remote password file and will NOT be able to login via OEM. Add the user:
$ORACLE_HOME/bin/orapwd file=$ORACLE_HOME/dbs/orapw<INST> password=hullahoop
select privname,object_name from ku$_objgrant_view join all_objects on object_id=obj_num where grantee=’THE_USER’;
select group#,l.sequence#,archived,l.status running, lf.status os_status,member from v$log l join v$logfile lf using(group#) order by group#;
NOTES:
emca -deconfig dbcontrol db
and
emca -config dbcontrol db
1. Trying to start the database using ’startup’ will fail trying to open the datafile. It will give the datafile number let’s say D.
2. Make sure we have backups of all the datafiles. In RMAN type:
REPORT NEED BACKUP REDUNDANCY 1;
If there are datafiles that were not backed up as yet, there are 2 options:
a) delete the datafiles. (RMAN will create them and apply their data from redo logs).
b) issue RMAN command:
BACKUP DATAFILE N;
3. Use RMAN to restore and recover the datafile found missing in step #1. The recovery operation will fail because the online redo is missing.
RESTORE DATAFILE D;
RECOVER DATAFILE D;
4. Find the last log sequence:
SELECT SEQUENCE# FROM V$ARCHIVED_LOG WHERE RECID = (SELECT MAX(RECID) FROM V$ARC
HIVED_LOG);
5. Run the following RMAN script. The nunber X will be 1 more than the number you got from step 4. This is because the UNTIL SEQUENCE clause of RMAN goes to one less than the number specified.
RUN {
SET UNTIL SEQUENCE X THREAD 1;
RESTORE DATABASE;
RECOVER DATABASE;
ALTER DATABASE OPEN RESETLOGS;
}
emca -deconfig dbcontrol db
then
emca -config dbcontrol db
You have to setup a cache for the size you want to create if it is different from DB_BLOCK_SIZE initialization parameter like so:
alter system set db_<N>k_cache_size=<REQUESTED SIZE> scope=BOTH;
You may need to get the block size of a datafile before running dbv (DBVERIFY) on it. The following will do this in sqlplus:
set wrap off
select t.name tablespace, file#, d.name datafile, block_size BS from v$datafile d join v$tablespace t using (ts#);




