After Cloning required to change workflow system name.
Change the service name in TEST:
In apps node
SQL> select NAME from wf_systems;
NAME
--------
PROD.DOYENSYS.COM
SQL> select GUID from wf_systems;
GUID
--------------------------------
3CA4A184BD2C99FFE040500A1F033CD9
SQL> select NAME, SYSTEM_GUID from wf_agents;
Go to bellow path and run the following scripts txkWfClone.sh .
$ cd /TEST/apps/testcomn/admin/install/TEST_oratest2
$ sh txkWfClone.sh apps apps
txkWfClone.sh started at Mon Dec 29 03:49:05 EST 2008
The environment settings are as follows ...
apps_HOME : /TEST/apps/testora/8.0.6
apps_SID :
TWO_TASK : TEST_806_BALANCE
PATH : /TEST/apps/testora/iAS/Apache/perl/bin:/TEST/apps/testora/8.0.6/bin:/TEST/apps/testappl/fnd/11.5.0/bin:/TEST/apps/testappl/ad/11.5.0/bin:/TEST/apps/testcomn/util/java/1.5/jdk1.5.0_11/bin:/TEST/apps/testcomn/util/unzip/unzip/unzip-5.50::/TEST/apps/testora/8.0.6/bin:/usr/bin:/usr/ccs/bin:/usr/sbin:/TEST/apps/testora/iAS/Apache/perl/bin:/TEST/apps/testora/8.0.6/bin:/TEST/apps/testcomn/util/java/1.5/jdk1.5.0_11/bin:/TEST/apps/testcomn/util/unzip/unzip/unzip-5.50:/TEST/apps/testora/8.0.6/bin:/usr/bin:/usr/ccs/bin:/usr/sbin:/usr/sbin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/home/applmgr/bin
LD_LIBRARY_PATH : /TEST/apps/testora/8.0.6/network/jre11/lib/i686/native_threads:/TEST/apps/testora/8.0.6/network/jre11/lib/linux/native_threads:/TEST/apps/testappl/cz/11.5.0/bin:/TEST/apps/testora/8.0.6/lib:/usr/X11R6/lib:/usr/openwin/lib
Executable : /TEST/apps/testora/8.0.6/bin/sqlplus
SQL*Plus: Release 8.0.6.0.0 - Production on Mon Dec 29 03:49:05 2008
(c) Copyright 1999 apps Corporation. All rights reserved.
Connected.
PL/SQL procedure successfully completed.
Commit complete.
Disconnected from apps Database 10g Enterprise Edition Release 10.2.0.3.0 - Production
With the Partitioning, Real Application Clusters, OLAP and Data Mining options
ERRORCODE = 0 ERRORCODE_END
After completing this scripts, now check againg the following query.
Now its changed the service name PROD to TEST.
SQL> show parameter service
NAME TYPE VALUE
---------------------------
service_names string TEST
SQL> select NAME from wf_systems;
NAME
------------------------------
TEST.DOYENSYS.COM
SQL> select GUID from wf_systems;
GUID
--------------------------------
5F2BB84D418D8F79E040500A0B02363F
SQL> select NAME, SYSTEM_GUID from wf_agents;
Refered Notes:
The agent could not be found: WF_CONTROL post-clone
Doc ID: 374529.1
How to Change the System Name in Workflow?
Doc ID: 387337.1
O/S-Error: (OS 8) Not enough storage is available to process this command
After increasing SGA_TARGET=2GB, We got following Error Message.
SQL> startup
ORA-27102: out of memory
OSD-00022: additional error information
O/S-Error: (OS 8) Not enough storage is available to process this command
C:\boot.ini old value
Old File:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows Server 2003, Standard" /fastdetect
Solutions:
Modified Boot.ini File:
Note: In the boot.ini file we changed following parameter /3GB and /PAE
After Changing that parameter, we can able to increase UPTO 2.7GB sga target.
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows Server 2003, Standard" /fastdetect /3GB /PAE
SQL> startup
ORACLE instance started.
Total System Global Area 2726297600 bytes
Fixed Size 1254760 bytes
Variable Size 553650840 bytes
Database Buffers 2164260864 bytes
Redo Buffers 7131136 bytes
Database mounted.
Database opened.
SQL> show parameter sga
NAME TYPE VALUE
------------------------------------
lock_sga boolean FALSE
pre_page_sga boolean FALSE
sga_max_size big integer 2784M
sga_target big integer 2784M
Reference:
Note 225349.1 - Implementing Address Windowing Extensions (AWE) or VLM on Windows Platforms
Note 46053.1 - Windows NT Memory Architecture Overview
SQL> startup
ORA-27102: out of memory
OSD-00022: additional error information
O/S-Error: (OS 8) Not enough storage is available to process this command
C:\boot.ini old value
Old File:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows Server 2003, Standard" /fastdetect
Solutions:
Modified Boot.ini File:
Note: In the boot.ini file we changed following parameter /3GB and /PAE
After Changing that parameter, we can able to increase UPTO 2.7GB sga target.
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows Server 2003, Standard" /fastdetect /3GB /PAE
SQL> startup
ORACLE instance started.
Total System Global Area 2726297600 bytes
Fixed Size 1254760 bytes
Variable Size 553650840 bytes
Database Buffers 2164260864 bytes
Redo Buffers 7131136 bytes
Database mounted.
Database opened.
SQL> show parameter sga
NAME TYPE VALUE
------------------------------------
lock_sga boolean FALSE
pre_page_sga boolean FALSE
sga_max_size big integer 2784M
sga_target big integer 2784M
Reference:
Note 225349.1 - Implementing Address Windowing Extensions (AWE) or VLM on Windows Platforms
Note 46053.1 - Windows NT Memory Architecture Overview
ORA-00439: feature not enabled: Real Application Clusters
SQL> startup
ORA-00439: feature not enabled: Real Application Clusters
Turn on RAC (In All nodes)
cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk rac_on
If this step did not work, please go ahead below step.
make -f ins_rdbms.mk ioracle
Then Change cluster_name=true, and try to startup the both database.
Metalink Note ID : 211177.1
ORA-00439: feature not enabled: Real Application Clusters
Turn on RAC (In All nodes)
cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk rac_on
If this step did not work, please go ahead below step.
make -f ins_rdbms.mk ioracle
Then Change cluster_name=true, and try to startup the both database.
Metalink Note ID : 211177.1
Using srvctl to Manage your 10g RAC Database
Oracle recommends that RAC databases be managed with srvctl, an Oracle-supplied tool that was first introduced with 9i RAC. The 10g version of srvctl is slightly different from the 9i implementation. In this article.
How and why -- to manage your 10g databases with srvctl.
RAC Architecture Overview
Brief overview of RAC architecture.
1. A cluster is a set of 2 or more nodes that share or coordinate resources to perform the same task.
2. A RAC database is 2 or more instances running on a set of clustered nodes, with all instances accessing a shared set of database files.
3. Depending on the O/S platform, a RAC database may be deployed on a cluster that uses vendor clusterware plus Oracle's own clusterware (Cluster Ready Services), or on a cluster that solely uses Oracle's own clusterware.
Thus, every RAC sits on a cluster that is running Cluster Ready Services. srvctl is the primary tool DBAs use to configure CRS for their RAC database and processes.
Cluster Ready Services and the OCR
Cluster Ready Services, or CRS, is a new feature for 10g RAC. Essentially, it is Oracle's own clusterware. On most platforms, Oracle supports vendor clusterware; in these cases, CRS interoperates with the vendor clusterware, providing high availability support and service and workload management. On Linux and Windows clusters, CRS serves as the sole clusterware. In all cases, CRS provides a standard cluster interface that is consistent across all
platforms.
CRS consists of four processes (crsd, occsd, evmd, and evmlogger) and two disks: the Oracle Cluster Registry (OCR), and the voting disk.
CRS manages the following resources:
1. The ASM instances on each node
2. Databases
3. The instances on each node
4. Oracle Services on each node
5. The cluster nodes themselves, including the following processes:
1. VIP
2. GSD
3. The listener
4. The ONS daemon
CRS stores information about these resources in the OCR. If the information in the OCR for one of these resources becomes damaged or inconsistent, then CRS is no longer able to manage that resource. Fortunately, the OCR automatically backs itself up regularly and frequently.
Interacting with CRS and the OCR: srvctl
srvctl is the tool Oracle recommends that DBAs use to interact with CRS and the cluster registry. Oracle does provide several tools to interface with the cluster registry and CRS more directly, at a lower level, but these tools are deliberately undocumented and intended only for use by Oracle Support. srvctl, in contrast, is well documented and easy to use. Using other tools to modify the OCR or manage CRS without the assistance of Oracle Support runs the risk of damaging the OCR.
Using srvctl
Even if you are experienced with 9i srvctl, it's worth taking a look at this section; 9i and 10g srvctl commands are slightly different.
srvctl must be run from the $ORACLE_HOME/bin of the RAC you are administering. The basic format of a srvctl command is
$ ./srvctl
Usage: srvctl
[]
command:
enabledisablestartstoprelocatestatusaddremovemodifygetenvsetenvunsetenvconfig
objects: databaseinstanceservicenodeappsasmlistener
For detailed help on each command and object and its options use:
srvctl-h
Examples of starting and stopping RAC follow:-
$ gsdctl stat
GSD is running on local node
$ gsdctl stop
$ gsdctl start
Start all its instances and all its services, on all nodes.
$ srvctl start database -d test
Stop all its instances and all its services, on all nodes.
$ srvctl stop database -d test
Startup up the TEST1 instance of the TEST database
$ srvctl start instance -d test -i test1
Bounce the TEST1 instance of the TEST database
$ srvctl stop instance -d test -i test2
To check the CRS status.
# ./crs_stat -t
Name Type Target State Host
------------------------------------------------------------
ora....D1.inst application OFFLINE OFFLINE
ora....D2.inst application OFFLINE OFFLINE
ora.test.db application OFFLINE OFFLINE
ora....od1.gsd application ONLINE ONLINE test1
ora....od1.ons application ONLINE ONLINE test1
ora....od1.vip application ONLINE ONLINE test2
ora....od2.gsd application ONLINE ONLINE test2
ora....od2.ons application ONLINE ONLINE test2
ora....od2.vip application ONLINE ONLINE test1
After db upgrade, Here some crs services are went OFFLINE.
Solution:
Please remove the DBSID from srvctl and add again, just follow the bellow steps.
su - oracle
$ cd $ORACLE_HOME/bin
$ ./srvctl remove database -d test
Remove the database test? (y/[n]) y
$ ./srvctl add database -d test -o /10.2.0/test/app/oracle
$ ./srvctl add instance -d test -i test1 -n test1
$ ./srvctl add instance -d test -i test2 -n test2
$ ./srvctl start database -d test
# ./crs_stat -t
Name Type Target State Host
------------------------------------------------------------
ora....D1.inst application ONLINE ONLINE test1
ora....D2.inst application ONLINE ONLINE test2
ora.test.db application ONLINE ONLINE test1
ora....od1.gsd application ONLINE ONLINE test1
ora....od1.ons application ONLINE ONLINE test1
ora....od1.vip application ONLINE ONLINE test1
ora....od2.gsd application ONLINE ONLINE test2
ora....od2.ons application ONLINE ONLINE test2
ora....od2.vip application ONLINE ONLINE test2
http://www.orafaq.com/node/70
http://www.oracledba.org/11g/rac/11g_RAC_Admin_Utilities.html
How and why -- to manage your 10g databases with srvctl.
RAC Architecture Overview
Brief overview of RAC architecture.
1. A cluster is a set of 2 or more nodes that share or coordinate resources to perform the same task.
2. A RAC database is 2 or more instances running on a set of clustered nodes, with all instances accessing a shared set of database files.
3. Depending on the O/S platform, a RAC database may be deployed on a cluster that uses vendor clusterware plus Oracle's own clusterware (Cluster Ready Services), or on a cluster that solely uses Oracle's own clusterware.
Thus, every RAC sits on a cluster that is running Cluster Ready Services. srvctl is the primary tool DBAs use to configure CRS for their RAC database and processes.
Cluster Ready Services and the OCR
Cluster Ready Services, or CRS, is a new feature for 10g RAC. Essentially, it is Oracle's own clusterware. On most platforms, Oracle supports vendor clusterware; in these cases, CRS interoperates with the vendor clusterware, providing high availability support and service and workload management. On Linux and Windows clusters, CRS serves as the sole clusterware. In all cases, CRS provides a standard cluster interface that is consistent across all
platforms.
CRS consists of four processes (crsd, occsd, evmd, and evmlogger) and two disks: the Oracle Cluster Registry (OCR), and the voting disk.
CRS manages the following resources:
1. The ASM instances on each node
2. Databases
3. The instances on each node
4. Oracle Services on each node
5. The cluster nodes themselves, including the following processes:
1. VIP
2. GSD
3. The listener
4. The ONS daemon
CRS stores information about these resources in the OCR. If the information in the OCR for one of these resources becomes damaged or inconsistent, then CRS is no longer able to manage that resource. Fortunately, the OCR automatically backs itself up regularly and frequently.
Interacting with CRS and the OCR: srvctl
srvctl is the tool Oracle recommends that DBAs use to interact with CRS and the cluster registry. Oracle does provide several tools to interface with the cluster registry and CRS more directly, at a lower level, but these tools are deliberately undocumented and intended only for use by Oracle Support. srvctl, in contrast, is well documented and easy to use. Using other tools to modify the OCR or manage CRS without the assistance of Oracle Support runs the risk of damaging the OCR.
Using srvctl
Even if you are experienced with 9i srvctl, it's worth taking a look at this section; 9i and 10g srvctl commands are slightly different.
srvctl must be run from the $ORACLE_HOME/bin of the RAC you are administering. The basic format of a srvctl command is
$ ./srvctl
Usage: srvctl
[
command:
enabledisablestartstoprelocatestatusaddremovemodifygetenvsetenvunsetenvconfig
objects: databaseinstanceservicenodeappsasmlistener
For detailed help on each command and object and its options use:
srvctl
Examples of starting and stopping RAC follow:-
$ gsdctl stat
GSD is running on local node
$ gsdctl stop
$ gsdctl start
Start all its instances and all its services, on all nodes.
$ srvctl start database -d test
Stop all its instances and all its services, on all nodes.
$ srvctl stop database -d test
Startup up the TEST1 instance of the TEST database
$ srvctl start instance -d test -i test1
Bounce the TEST1 instance of the TEST database
$ srvctl stop instance -d test -i test2
To check the CRS status.
# ./crs_stat -t
Name Type Target State Host
------------------------------------------------------------
ora....D1.inst application OFFLINE OFFLINE
ora....D2.inst application OFFLINE OFFLINE
ora.test.db application OFFLINE OFFLINE
ora....od1.gsd application ONLINE ONLINE test1
ora....od1.ons application ONLINE ONLINE test1
ora....od1.vip application ONLINE ONLINE test2
ora....od2.gsd application ONLINE ONLINE test2
ora....od2.ons application ONLINE ONLINE test2
ora....od2.vip application ONLINE ONLINE test1
After db upgrade, Here some crs services are went OFFLINE.
Solution:
Please remove the DBSID from srvctl and add again, just follow the bellow steps.
su - oracle
$ cd $ORACLE_HOME/bin
$ ./srvctl remove database -d test
Remove the database test? (y/[n]) y
$ ./srvctl add database -d test -o /10.2.0/test/app/oracle
$ ./srvctl add instance -d test -i test1 -n test1
$ ./srvctl add instance -d test -i test2 -n test2
$ ./srvctl start database -d test
# ./crs_stat -t
Name Type Target State Host
------------------------------------------------------------
ora....D1.inst application ONLINE ONLINE test1
ora....D2.inst application ONLINE ONLINE test2
ora.test.db application ONLINE ONLINE test1
ora....od1.gsd application ONLINE ONLINE test1
ora....od1.ons application ONLINE ONLINE test1
ora....od1.vip application ONLINE ONLINE test1
ora....od2.gsd application ONLINE ONLINE test2
ora....od2.ons application ONLINE ONLINE test2
ora....od2.vip application ONLINE ONLINE test2
http://www.orafaq.com/node/70
http://www.oracledba.org/11g/rac/11g_RAC_Admin_Utilities.html
perform the following to change the database ID:
a. shutdown immediate;
b. change the initSID.ora (Cluster_database = FALSE)
c. startup pfile=$ORACLE_HOME/dbs/initSID.ora mount;
d. nid target=sys/password
Old ID TEST1:
SQL> select DBID,name from v$database;
DBID NAME
---------- ---------
13455769 TEST
Old ID TEST2:
SQL> select DBID,name from v$database;
DBID NAME
---------- ---------
13455769 TEST
Database ID for database TEST changed to 1969630541.
All previous backups and archived redo logs for this database are unusable.
Database has been shutdown, open database with RESETLOGS option.
Succesfully changed database ID.
DBNEWID - Completed succesfully.
SQL> startup mount pfile=/TEST/oracle/10.2.0/dbs/initTEST1.ora
[oracle@oratest1 dbs]$ nid target=sys/password
DBNEWID: Release 10.1.0.4.0 - Production
Copyright (c) 2001, 2004, Oracle. All rights reserved.
Connected to database TEST (DBID=13455769)
Connected to server version 10.1.0
Control Files in database:
/u01/oradata/controlfiles/cntrl01.ctl
/u01/oradata/controlfiles/cntrl02.ctl
/u01/oradata/controlfiles/cntrl03.ctl
Change database ID of database TEST? (Y/[N]) => Y
Proceeding with operation
Changing database ID from 14213988 to 1969630541
Control File /u01/oradata/controlfiles/cntrl01.ctl - modified
Control File /u01/oradata/controlfiles/cntrl02.ctl - modified
Control File /u01/oradata/controlfiles/cntrl03.ctl - modified
Datafile /u01/oradata/system01.dbf - dbid changed
Datafile /u01/oradata/system02.dbf - dbid changed
Datafile /u01/oradata/system03.dbf - dbid changed
Datafile /u01/oradata/system04.dbf - dbid changed
Datafile /u01/oradata/system05.dbf - dbid changed
.
.
.
.
.
.
Datafile /u01/oradata/apps_ts_tx_idx04.dbf - dbid changed
Datafile /u01/oradata/apps_ts_seed02.dbf - dbid changed
Datafile /u01/oradata/temp01.dbf - dbid changed
Control File /u01/oradata/controlfiles/cntrl01.ctl - dbid changed
Control File /u01/oradata/controlfiles/cntrl02.ctl - dbid changed
Control File /u01/oradata/controlfiles/cntrl03.ctl - dbid changed
Instance shut down
Database ID for database TEST changed to 1969630541.
All previous backups and archived redo logs for this database are unusable.
Database has been shutdown, open database with RESETLOGS option.
Succesfully changed database ID.
DBNEWID - Completed succesfully.
[oracle@oratest1 dbs]$ sqlplus "/as sysdba"
SQL*Plus: Release 10.1.0.4.0 - Production on Sun Nov 23 07:25:47 2008
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup mount pfile=/TEST/oracle/10.2.0/dbs/initTEST1.ora
ORACLE instance started.
Total System Global Area 1073741824 bytes
Fixed Size 782584 bytes
Variable Size 341053192 bytes
Database Buffers 721420288 bytes
Redo Buffers 10485760 bytes
Database mounted.
SQL> alter database open resetlogs;
Database altered.
SQL> select dbid,name from v$database;
DBID NAME
---------- ---------
1896547098 TEST
b. change the initSID.ora (Cluster_database = FALSE)
c. startup pfile=$ORACLE_HOME/dbs/initSID.ora mount;
d. nid target=sys/password
Old ID TEST1:
SQL> select DBID,name from v$database;
DBID NAME
---------- ---------
13455769 TEST
Old ID TEST2:
SQL> select DBID,name from v$database;
DBID NAME
---------- ---------
13455769 TEST
Database ID for database TEST changed to 1969630541.
All previous backups and archived redo logs for this database are unusable.
Database has been shutdown, open database with RESETLOGS option.
Succesfully changed database ID.
DBNEWID - Completed succesfully.
SQL> startup mount pfile=/TEST/oracle/10.2.0/dbs/initTEST1.ora
[oracle@oratest1 dbs]$ nid target=sys/password
DBNEWID: Release 10.1.0.4.0 - Production
Copyright (c) 2001, 2004, Oracle. All rights reserved.
Connected to database TEST (DBID=13455769)
Connected to server version 10.1.0
Control Files in database:
/u01/oradata/controlfiles/cntrl01.ctl
/u01/oradata/controlfiles/cntrl02.ctl
/u01/oradata/controlfiles/cntrl03.ctl
Change database ID of database TEST? (Y/[N]) => Y
Proceeding with operation
Changing database ID from 14213988 to 1969630541
Control File /u01/oradata/controlfiles/cntrl01.ctl - modified
Control File /u01/oradata/controlfiles/cntrl02.ctl - modified
Control File /u01/oradata/controlfiles/cntrl03.ctl - modified
Datafile /u01/oradata/system01.dbf - dbid changed
Datafile /u01/oradata/system02.dbf - dbid changed
Datafile /u01/oradata/system03.dbf - dbid changed
Datafile /u01/oradata/system04.dbf - dbid changed
Datafile /u01/oradata/system05.dbf - dbid changed
.
.
.
.
.
.
Datafile /u01/oradata/apps_ts_tx_idx04.dbf - dbid changed
Datafile /u01/oradata/apps_ts_seed02.dbf - dbid changed
Datafile /u01/oradata/temp01.dbf - dbid changed
Control File /u01/oradata/controlfiles/cntrl01.ctl - dbid changed
Control File /u01/oradata/controlfiles/cntrl02.ctl - dbid changed
Control File /u01/oradata/controlfiles/cntrl03.ctl - dbid changed
Instance shut down
Database ID for database TEST changed to 1969630541.
All previous backups and archived redo logs for this database are unusable.
Database has been shutdown, open database with RESETLOGS option.
Succesfully changed database ID.
DBNEWID - Completed succesfully.
[oracle@oratest1 dbs]$ sqlplus "/as sysdba"
SQL*Plus: Release 10.1.0.4.0 - Production on Sun Nov 23 07:25:47 2008
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup mount pfile=/TEST/oracle/10.2.0/dbs/initTEST1.ora
ORACLE instance started.
Total System Global Area 1073741824 bytes
Fixed Size 782584 bytes
Variable Size 341053192 bytes
Database Buffers 721420288 bytes
Redo Buffers 10485760 bytes
Database mounted.
SQL> alter database open resetlogs;
Database altered.
SQL> select dbid,name from v$database;
DBID NAME
---------- ---------
1896547098 TEST
Stale Statistics Operations
-- PURPOSE: CHECK_STALE_STATS.SQL
-- This script is an automated way to deal with stale statistics operations that are
-- required to be done as part of manual upgrade OR when reported by DBUA.
--
-- This script will work in both Windows and Unix platforms from database
-- version 9.2 or higher.
-- ------------------------------------------------------------------------
-- DISCLAIMER:
-- This script is provided for educational purposes only. It is NOT
-- supported by Oracle World Wide Technical Support.
-- The script has been tested and appears to work as intended.
-- You should always run new scripts on a test instance initially.
-- ------------------------------------------------------------------------
--
SET FEEDBACK OFF
SET LINESIZE 250
SET SERVEROUTPUT ON
DECLARE
-- Variables declared
P_OTAB DBMS_STATS.OBJECTTAB;
MCOUNT NUMBER := 0;
P_VERSION VARCHAR2(10);
-- Cursor defined
CURSOR c1
IS
SELECT distinct schema
FROM dba_registry
ORDER by 1;
-- Beginning of the anonymous block
BEGIN
-- Verifying version from v$instance
SELECT version INTO p_version FROM v$instance;
DBMS_OUTPUT.PUT_LINE(chr(13));
-- Defining Loop 1 for listing schema which have stale stats
FOR x in c1
LOOP
DBMS_STATS.GATHER_SCHEMA_STATS(OWNNAME=>x.schema,OPTIONS=>'LIST AUTO',OBJLIST=>p_otab);
-- Defining Loop 2 to find number of objects containing stale stats
FOR i in 1 .. p_otab.count
LOOP
IF p_otab(i).objname NOT LIKE 'SYS_%'
AND p_otab(i).objname NOT IN ('CLU$','COL_USAGE$','FET$','INDPART$',
'MON_MODS$','TABPART$','HISTGRM$',
'MON_MODS_ALL$',
'HIST_HEAD$','IN $','TAB$',
'WRI$_OPTSTAT_OPR','PUIU$DATA',
'XDB$NLOCKS_CHILD_NAME_IDX',
'XDB$NLOCKS_PARENT_OID_IDX',
'XDB$NLOCKS_RAW OKEN_IDX', 'XDB$SCHEMA_URL',
'XDBHI_IDX', 'XDB_PK_H_LINK')
THEN
-- Incrementing count for each object found with statle stats
mcount := mcount + 1;
END IF;
-- End of Loop 2
END LOOP;
-- Displays no stale statistics, if coun is 0
IF mcount!=0
THEN
-- Displays Schema with stale stats if count is greater than 0
DBMS_OUTPUT.PUT_LINE('-------------------------------------------------------------------------------------------------------');
DBMS_OUTPUT.PUT_LINE('-- ' x.schema ' schema contains stale statistics use the following to gather the statistics ''--');
DBMS_OUTPUT.PUT_LINE('-------------------------------------------------------------------------------------------------------');
--DBMS_OUTPUT.PUT_LINE('');
-- Displays Command to be executed if schema with stale statistics is found depending on the version.
IF SUBSTR(p_version,1,5) in ('8.1.7','9.0.1','9.2.0')
THEN
DBMS_OUTPUT.PUT_LINE(chr(13));
DBMS_OUTPUT.PUT_LINE('EXEC DBMS_STATS.GATHER_SCHEMA_STATS('''x.schema''',OPTIONS=>''''GATHER'''', ESTIMATE_PERCENT => DBMS_STATS.AUTO_SAMPLE_SIZE, METHOD_OPT => ''''FOR ALL COLUMNS SIZE AUTO'''', CASCADE => TRUE);');
ELSIF SUBSTR(p_version,1,6) in ('10.1.0','10.2.0','11.1.0')
THEN
DBMS_OUTPUT.PUT_LINE(chr(13));
DBMS_OUTPUT.PUT_LINE('EXEC DBMS_STATS.GATHER_DICTIONARY_STATS('''x.schema''',OPTIONS=>''''GATHER'''', ESTIMATE_PERCENT => DBMS_STATS.AUTO_SAMPLE_SIZE, METHOD_OPT => ''''FOR ALL COLUMNS SIZE AUTO'''', CASCADE => TRUE);');
ELSE
DBMS_OUTPUT.PUT_LINE(chr(13));
DBMS_OUTPUT.PUT_LINE('Version is 'p_version);
END IF;
ELSE
DBMS_OUTPUT.PUT_LINE('-- There are no stale statistics in ' x.schema ' schema.');
DBMS_OUTPUT.PUT_LINE(chr(13));
END IF;
-- Reset count to 0.
mcount := 0;
-- End of Loop 1
END LOOP;
END;
/
SET FEEDBACK ON
-- - - - - - - - - - - - - - - - Script ends here - - - - - - - - - - - - - - - -
-- This script is an automated way to deal with stale statistics operations that are
-- required to be done as part of manual upgrade OR when reported by DBUA.
--
-- This script will work in both Windows and Unix platforms from database
-- version 9.2 or higher.
-- ------------------------------------------------------------------------
-- DISCLAIMER:
-- This script is provided for educational purposes only. It is NOT
-- supported by Oracle World Wide Technical Support.
-- The script has been tested and appears to work as intended.
-- You should always run new scripts on a test instance initially.
-- ------------------------------------------------------------------------
--
SET FEEDBACK OFF
SET LINESIZE 250
SET SERVEROUTPUT ON
DECLARE
-- Variables declared
P_OTAB DBMS_STATS.OBJECTTAB;
MCOUNT NUMBER := 0;
P_VERSION VARCHAR2(10);
-- Cursor defined
CURSOR c1
IS
SELECT distinct schema
FROM dba_registry
ORDER by 1;
-- Beginning of the anonymous block
BEGIN
-- Verifying version from v$instance
SELECT version INTO p_version FROM v$instance;
DBMS_OUTPUT.PUT_LINE(chr(13));
-- Defining Loop 1 for listing schema which have stale stats
FOR x in c1
LOOP
DBMS_STATS.GATHER_SCHEMA_STATS(OWNNAME=>x.schema,OPTIONS=>'LIST AUTO',OBJLIST=>p_otab);
-- Defining Loop 2 to find number of objects containing stale stats
FOR i in 1 .. p_otab.count
LOOP
IF p_otab(i).objname NOT LIKE 'SYS_%'
AND p_otab(i).objname NOT IN ('CLU$','COL_USAGE$','FET$','INDPART$',
'MON_MODS$','TABPART$','HISTGRM$',
'MON_MODS_ALL$',
'HIST_HEAD$','IN $','TAB$',
'WRI$_OPTSTAT_OPR','PUIU$DATA',
'XDB$NLOCKS_CHILD_NAME_IDX',
'XDB$NLOCKS_PARENT_OID_IDX',
'XDB$NLOCKS_RAW OKEN_IDX', 'XDB$SCHEMA_URL',
'XDBHI_IDX', 'XDB_PK_H_LINK')
THEN
-- Incrementing count for each object found with statle stats
mcount := mcount + 1;
END IF;
-- End of Loop 2
END LOOP;
-- Displays no stale statistics, if coun is 0
IF mcount!=0
THEN
-- Displays Schema with stale stats if count is greater than 0
DBMS_OUTPUT.PUT_LINE('-------------------------------------------------------------------------------------------------------');
DBMS_OUTPUT.PUT_LINE('-- ' x.schema ' schema contains stale statistics use the following to gather the statistics ''--');
DBMS_OUTPUT.PUT_LINE('-------------------------------------------------------------------------------------------------------');
--DBMS_OUTPUT.PUT_LINE('');
-- Displays Command to be executed if schema with stale statistics is found depending on the version.
IF SUBSTR(p_version,1,5) in ('8.1.7','9.0.1','9.2.0')
THEN
DBMS_OUTPUT.PUT_LINE(chr(13));
DBMS_OUTPUT.PUT_LINE('EXEC DBMS_STATS.GATHER_SCHEMA_STATS('''x.schema''',OPTIONS=>''''GATHER'''', ESTIMATE_PERCENT => DBMS_STATS.AUTO_SAMPLE_SIZE, METHOD_OPT => ''''FOR ALL COLUMNS SIZE AUTO'''', CASCADE => TRUE);');
ELSIF SUBSTR(p_version,1,6) in ('10.1.0','10.2.0','11.1.0')
THEN
DBMS_OUTPUT.PUT_LINE(chr(13));
DBMS_OUTPUT.PUT_LINE('EXEC DBMS_STATS.GATHER_DICTIONARY_STATS('''x.schema''',OPTIONS=>''''GATHER'''', ESTIMATE_PERCENT => DBMS_STATS.AUTO_SAMPLE_SIZE, METHOD_OPT => ''''FOR ALL COLUMNS SIZE AUTO'''', CASCADE => TRUE);');
ELSE
DBMS_OUTPUT.PUT_LINE(chr(13));
DBMS_OUTPUT.PUT_LINE('Version is 'p_version);
END IF;
ELSE
DBMS_OUTPUT.PUT_LINE('-- There are no stale statistics in ' x.schema ' schema.');
DBMS_OUTPUT.PUT_LINE(chr(13));
END IF;
-- Reset count to 0.
mcount := 0;
-- End of Loop 1
END LOOP;
END;
/
SET FEEDBACK ON
-- - - - - - - - - - - - - - - - Script ends here - - - - - - - - - - - - - - - -
ORA-01115 ORA-01110 ORA-27091 ORA-27072 Error: 5: I/O error
Symptoms
ORA-01115: IO error reading block from file 393 (block# 2959)
ORA-01110: data file 393: '/u01/proddata/data/ard01.dbf'
ORA-27091: skgfqio: unable to queue I/O
ORA-27027: skgfdisp: I/O error
IBM AIX RISC System/6000 Error: 5 I/O error
- The errors are not reported in the alert log file.
- Running dbv against datafiles from the error messages shows no errors.
- All the mandatory OS patches are applied.
- Oracle patch for Bug 5496862 - IO READING PROBLEMS AFTER INSTALLING IBM TECHNOLOGY LEVEL 5 (5300-05) was installed before patching the OS.
Solutions
Increase maxreqs from 8192 to 12288.
Steps:
1. run aioo -a command to double check current setting for aioo device
2. run aioo -o maxreqs=12288 to set maxreqs dynamically
3. chdev -l aioo -a maxreqs=12288 to set the value of maxreqs permanently for next reboot
4. run aioo -a to confirm change
5. restart oracle
Metalink Note:559697.1
ORA-01115: IO error reading block from file 393 (block# 2959)
ORA-01110: data file 393: '/u01/proddata/data/ard01.dbf'
ORA-27091: skgfqio: unable to queue I/O
ORA-27027: skgfdisp: I/O error
IBM AIX RISC System/6000 Error: 5 I/O error
- The errors are not reported in the alert log file.
- Running dbv against datafiles from the error messages shows no errors.
- All the mandatory OS patches are applied.
- Oracle patch for Bug 5496862 - IO READING PROBLEMS AFTER INSTALLING IBM TECHNOLOGY LEVEL 5 (5300-05) was installed before patching the OS.
Solutions
Increase maxreqs from 8192 to 12288.
Steps:
1. run aioo -a command to double check current setting for aioo device
2. run aioo -o maxreqs=12288 to set maxreqs dynamically
3. chdev -l aioo -a maxreqs=12288 to set the value of maxreqs permanently for next reboot
4. run aioo -a to confirm change
5. restart oracle
Metalink Note:559697.1
Find the Meanings of Various Status Codes
Applications maintains this type of information in FND_LOOKUPS view.
The following query would provide you the information regarding the status_code and its meaning for fnd_concurrent_processes.
SQL> select lookup_code, meaning from fnd_lookups where lookup_type='CP_PROCESS_STATUS_CODE'
LOOKUP_CODE ----- MEANING
----------------- ------------
A -------------------> Active
C -------------------> Connecting
D -------------------> Deactiviating
G -------------------> Awaiting Discovery
K ------------------->Terminated
M ------------------>Migrating
P ------------------>Suspended
R ------------------>Running
S ------------------>Deactivated
T ------------------>Terminating
Z ------------------>Initializing
Here are the status_codes for fnd_concurrent_requests and their meanings :-
PROCESS_STATUS_CODE ------- Column:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
A ------------------------------------>Waiting
B ------------------------------------>Resuming
C ------------------------------------>Normal
D ------------------------------------>Cancelled
E ------------------------------------>Error
F ------------------------------------>Scheduled
G ------------------------------------>Warning
H ------------------------------------>On Hold
I ------------------------------------->Normal
M ------------------------------------>No Manager
Q ------------------------------------>Standby
R ------------------------------------>Normal
S ------------------------------------>Suspended
T ------------------------------------>Terminating
U ------------------------------------>Disabled
W ----------------------------------->Paused
X ------------------------------------>Terminated
Z ------------------------------------>Waiting
PHASE_CODE -----------column
----------------------- ---------------
C ------------------------->Completed
I ------------------------->Inactive
P ------------------------->Pending
R ------------------------->Running
The following query would provide you the information regarding the status_code and its meaning for fnd_concurrent_processes.
SQL> select lookup_code, meaning from fnd_lookups where lookup_type='CP_PROCESS_STATUS_CODE'
LOOKUP_CODE ----- MEANING
----------------- ------------
A -------------------> Active
C -------------------> Connecting
D -------------------> Deactiviating
G -------------------> Awaiting Discovery
K ------------------->Terminated
M ------------------>Migrating
P ------------------>Suspended
R ------------------>Running
S ------------------>Deactivated
T ------------------>Terminating
Z ------------------>Initializing
Here are the status_codes for fnd_concurrent_requests and their meanings :-
PROCESS_STATUS_CODE ------- Column:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
A ------------------------------------>Waiting
B ------------------------------------>Resuming
C ------------------------------------>Normal
D ------------------------------------>Cancelled
E ------------------------------------>Error
F ------------------------------------>Scheduled
G ------------------------------------>Warning
H ------------------------------------>On Hold
I ------------------------------------->Normal
M ------------------------------------>No Manager
Q ------------------------------------>Standby
R ------------------------------------>Normal
S ------------------------------------>Suspended
T ------------------------------------>Terminating
U ------------------------------------>Disabled
W ----------------------------------->Paused
X ------------------------------------>Terminated
Z ------------------------------------>Waiting
PHASE_CODE -----------column
----------------------- ---------------
C ------------------------->Completed
I ------------------------->Inactive
P ------------------------->Pending
R ------------------------->Running
Performence Tuning Scripts List
All related COE, BDE, TRCA, SQLT and PROF scripts can be downloaded from MetaLink or directly from Oracle's external FTP server
ftp://oracle-ftp.oracle.com/apps/patchsets/AOL/SCRIPTS/PERFORMANCE
MetaLink
Script from FTP server
Title
224270.1
TRCANLZR.SQL
Trace Analyzer (8.1.6+)
215187.1
SQLTXPLAIN.SQL
Enhanced Explain Plan and related info for one SQL statement (8.1+)
243755.1
profiler.sql
Implementing and Using the PL/SQL Profiler (8.1+)
156959.1
coe_xplain_80.sql
Enhanced Explain Plan for given SQL Statement (8.0)
156960.1
coe_xplain_73.sql
Enhanced Explain Plan for given SQL Statement (7.3)
174603.1
bde_x.sql
Simple Explain Plan for given SQL Statement (8.1+)
156972.1
coe_view.sql
Clones views across instances for SQL tuning exercises (8.0+)
238684.1
SQLAREAT.SQL
Top 10 Expensive SQL from SQL Area (8.1+)
163209.1
coe_sqlarea_80.sql
Top 10 Expensive SQL from SQL Area (8.0)
169630.1
bde_session.sql
Expensive SQL and resources utilization for given Session ID (8.1+)
174605.1
bde_chk_cbo.sql
Current, required and recommended Apps 11i init.ora params (11i)
163208.1
bde_last_analyzed.sql
Verifies Statistics for all installed Apps modules (11i)
156968.1
coe_stats.sql
Automates CBO Stats Gathering using FND_STATS and Table sizes (11i)
156969.1
coe_trace.sql
SQL Tracing Apps online transactions with Event 10046 (11i)
156970.1
coe_trace_11.sql
SQL Tracing Apps online transactions with Event 10046 (11.0)
156971.1
coe_trace_all.sql
Turns SQL Trace ON for all open DB Sessions (8.0+)
156965.1
coe_locks.sql
Session and serial# for locked Rows (7.3+)
Templates
MetaLink
Apps Performance Bug Template
169937.1
Transaction Tuning
169938.1
Back-End Tuning
169939.1
Tech-Stack Tuning
ftp://oracle-ftp.oracle.com/apps/patchsets/AOL/SCRIPTS/PERFORMANCE
MetaLink
Script from FTP server
Title
224270.1
TRCANLZR.SQL
Trace Analyzer (8.1.6+)
215187.1
SQLTXPLAIN.SQL
Enhanced Explain Plan and related info for one SQL statement (8.1+)
243755.1
profiler.sql
Implementing and Using the PL/SQL Profiler (8.1+)
156959.1
coe_xplain_80.sql
Enhanced Explain Plan for given SQL Statement (8.0)
156960.1
coe_xplain_73.sql
Enhanced Explain Plan for given SQL Statement (7.3)
174603.1
bde_x.sql
Simple Explain Plan for given SQL Statement (8.1+)
156972.1
coe_view.sql
Clones views across instances for SQL tuning exercises (8.0+)
238684.1
SQLAREAT.SQL
Top 10 Expensive SQL from SQL Area (8.1+)
163209.1
coe_sqlarea_80.sql
Top 10 Expensive SQL from SQL Area (8.0)
169630.1
bde_session.sql
Expensive SQL and resources utilization for given Session ID (8.1+)
174605.1
bde_chk_cbo.sql
Current, required and recommended Apps 11i init.ora params (11i)
163208.1
bde_last_analyzed.sql
Verifies Statistics for all installed Apps modules (11i)
156968.1
coe_stats.sql
Automates CBO Stats Gathering using FND_STATS and Table sizes (11i)
156969.1
coe_trace.sql
SQL Tracing Apps online transactions with Event 10046 (11i)
156970.1
coe_trace_11.sql
SQL Tracing Apps online transactions with Event 10046 (11.0)
156971.1
coe_trace_all.sql
Turns SQL Trace ON for all open DB Sessions (8.0+)
156965.1
coe_locks.sql
Session and serial# for locked Rows (7.3+)
Templates
MetaLink
Apps Performance Bug Template
169937.1
Transaction Tuning
169938.1
Back-End Tuning
169939.1
Tech-Stack Tuning
Memory Notification: Library Cache Object loaded into SGA
alert_SID.log Error.
Memory Notification: Library Cache Object loaded into SGA
Heap size 2550K exceeds notification threshold (2048K)
KGL object name :select t1.owner, t1.name, t1.queue_table, t1.queue_type, t1.max_retries, t1.retry_delay, t1.retention, t1.user_comment, t2.type, t2.object_type from all_queues t1, all_queue_tables t2 where t1.owner=:1 and t1.name=:2 and t2.owner=:3 and t1.queue_table=t2.queue_table
Sat Nov 8 03:36:15 2008
Memory Notification: Library Cache Object loaded into SGA
Heap size 2546K exceeds notification threshold (2048K)
Details in trace file /u01/11i/oracle/upgdb/10.2.0.1/admin/upg_zeus/udump/upg_ora_268966.trc
ORA-00060: Deadlock detected. More info in file /u01/11i/oracle/upgdb/10.2.0.1/admin/upg_zeus/udump/upg_ora_302372.trc.
Fri Oct 31 15:08:04 2008
ORA-00060: Deadlock detected. More info in file /u01/11i/oracle/upgdb/10.2.0.1/admin/upg_zeus/udump/upg_ora_129790.trc.
Fri Oct 31 15:08:35 2008
ORA-00060: Deadlock detected. More info in file /u01/11i/oracle/upgdb/10.2.0.1/admin/upg_zeus/udump/upg_ora_66976.trc.
Fri Oct 31 15:08:35 2008
ORA-00060: Deadlock detected. More info in file /u01/11i/oracle/upgdb/10.2.0.1/admin/upg_zeus/udump/upg_ora_196730.trc.
Fri Oct 31 15:08:37 2008
ORA-00060: Deadlock detected. More info in file /u01/11i/oracle/upgdb/10.2.0.1/admin/upg_zeus/udump/upg_ora_129790.trc.
Solutions:
SQL> SELECT a.ksppinm "Parameter",
2 b.ksppstvl "Session Value",
3 c.ksppstvl "Instance Value"
4 FROM x$ksppi a, x$ksppcv b, x$ksppsv c
5 WHERE a.indx = b.indx AND
6 a.indx = c.indx AND
7 a.ksppinm LIKE '%kgl_large_heap%';
Parameter Session Value Instance Value
--------------------------------------------------------------------------------
_kgl_large_heap_warning_threshold 2097152 2097152
Above parameter is hidden parameter. We have to change that hidden parameter.
If we using spfile, just login sql and change that parameter or Bounce the database and change the initSID.ora file.
$ sqlplus "/as sysdba"
SQL> alter system set "_kgl_large_heap_warning_threshold"=8388608 scope=spfile ;
System altered.
OR
Bounce the DB and edit the init parameter file and startup.
Then, edit the initialization parameter file and add the below line.
_kgl_large_heap_warning_threshold=8388608
Shut down and re-start the database after changes
SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP;
SQL> show parameter _kgl_large_heap_warning_threshold
NAME TYPE VALUE
------------------------------------ -----------
_kgl_large_heap_warning_threshold integer 8388608
Memory Notification: Library Cache Object loaded into SGA
Heap size 2550K exceeds notification threshold (2048K)
KGL object name :select t1.owner, t1.name, t1.queue_table, t1.queue_type, t1.max_retries, t1.retry_delay, t1.retention, t1.user_comment, t2.type, t2.object_type from all_queues t1, all_queue_tables t2 where t1.owner=:1 and t1.name=:2 and t2.owner=:3 and t1.queue_table=t2.queue_table
Sat Nov 8 03:36:15 2008
Memory Notification: Library Cache Object loaded into SGA
Heap size 2546K exceeds notification threshold (2048K)
Details in trace file /u01/11i/oracle/upgdb/10.2.0.1/admin/upg_zeus/udump/upg_ora_268966.trc
ORA-00060: Deadlock detected. More info in file /u01/11i/oracle/upgdb/10.2.0.1/admin/upg_zeus/udump/upg_ora_302372.trc.
Fri Oct 31 15:08:04 2008
ORA-00060: Deadlock detected. More info in file /u01/11i/oracle/upgdb/10.2.0.1/admin/upg_zeus/udump/upg_ora_129790.trc.
Fri Oct 31 15:08:35 2008
ORA-00060: Deadlock detected. More info in file /u01/11i/oracle/upgdb/10.2.0.1/admin/upg_zeus/udump/upg_ora_66976.trc.
Fri Oct 31 15:08:35 2008
ORA-00060: Deadlock detected. More info in file /u01/11i/oracle/upgdb/10.2.0.1/admin/upg_zeus/udump/upg_ora_196730.trc.
Fri Oct 31 15:08:37 2008
ORA-00060: Deadlock detected. More info in file /u01/11i/oracle/upgdb/10.2.0.1/admin/upg_zeus/udump/upg_ora_129790.trc.
Solutions:
SQL> SELECT a.ksppinm "Parameter",
2 b.ksppstvl "Session Value",
3 c.ksppstvl "Instance Value"
4 FROM x$ksppi a, x$ksppcv b, x$ksppsv c
5 WHERE a.indx = b.indx AND
6 a.indx = c.indx AND
7 a.ksppinm LIKE '%kgl_large_heap%';
Parameter Session Value Instance Value
--------------------------------------------------------------------------------
_kgl_large_heap_warning_threshold 2097152 2097152
Above parameter is hidden parameter. We have to change that hidden parameter.
If we using spfile, just login sql and change that parameter or Bounce the database and change the initSID.ora file.
$ sqlplus "/as sysdba"
SQL> alter system set "_kgl_large_heap_warning_threshold"=8388608 scope=spfile ;
System altered.
OR
Bounce the DB and edit the init parameter file and startup.
Then, edit the initialization parameter file and add the below line.
_kgl_large_heap_warning_threshold=8388608
Shut down and re-start the database after changes
SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP;
SQL> show parameter _kgl_large_heap_warning_threshold
NAME TYPE VALUE
------------------------------------ -----------
_kgl_large_heap_warning_threshold integer 8388608
To perform cancel-based recovery
RMAN> rman target / auxiliary sys/oracle@ROJA nocatalog
Recovery Manager: Release 10.2.0.2.0 - Production on Sun Nov 30 23:12:56 2008
Copyright (c) 1982, 2005, Oracle. All rights reserved.
connected to target database: PROD (DBID=78671012)
using target database control file instead of recovery catalog
connected to auxiliary database: ROJA (not mounted)
RMAN> @/u02/oracle/visarch/clone.rcv
RMAN> run
2> {
3> allocate auxiliary channel aux1 device type disk format '/u02/oracle/visarch';
4> allocate auxiliary channel aux2 device type disk format '/u02/oracle/visarch';
5> allocate auxiliary channel aux3 device type disk format '/u02/oracle/visarch';
6> allocate auxiliary channel aux4 device type disk format '/u02/oracle/visarch';
7> duplicate target database to "ROJA";
8> }
allocated channel: aux1
channel aux1: sid=386 devtype=DISK
allocated channel: aux2
channel aux2: sid=385 devtype=DISK
allocated channel: aux3
channel aux3: sid=384 devtype=DISK
allocated channel: aux4
channel aux4: sid=383 devtype=DISK
Starting Duplicate Db at 30-NOV-08
contents of Memory Script:
{
set until scn 5965096246191;
set newname for datafile 1 to
"/u01/oramgr/PROD/db/rojadata/system01.dbf";
set newname for datafile 2 to
"/u01/oramgr/PROD/db/rojadata/system02.dbf";
set newname for datafile 3 to
"/u01/oramgr/PROD/db/rojadata/system03.dbf";
set newname for datafile 4 to
"/u01/oramgr/PROD/db/rojadata/system04.dbf";
set newname for datafile 5 to
"/u01/oramgr/PROD/db/rojadata/system05.dbf";
.
.
.
.
.
.
.
.
.
"/u01/oramgr/PROD/db/rojadata/a_txn_ind04.dbf";
set newname for datafile 406 to
"/u01/oramgr/PROD/db/rojadata/a_txn_ind05.dbf";
set newname for datafile 407 to
"/u01/oramgr/PROD/db/rojadata/a_ref02.dbf";
restore
check readonly
clone database
;
}
executing Memory Script
executing command: SET until clause
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
.
.
.
.
.
.
.
executing command: SET NEWNAME
executing command: SET NEWNAME
Starting restore at 30-NOV-08
channel aux1: starting datafile backupset restore
channel aux1: specifying datafile(s) to restore from backup set
restoring datafile 00001 to /u01/oramgr/PROD/db/rojadata/system01.dbf
restoring datafile 00002 to /u01/oramgr/PROD/db/rojadata/system02.dbf
restoring datafile 00003 to /u01/oramgr/PROD/db/rojadata/system03.dbf
restoring datafile 00004 to /u01/oramgr/PROD/db/rojadata/system04.dbf
.
.
.
.
.
.
restoring datafile 00406 to /u01/oramgr/PROD/db/rojadata/a_txn_ind05.dbf
restoring datafile 00407 to /u01/oramgr/PROD/db/rojadata/a_ref02.dbf
channel aux1: reading from backup piece /u02/oracle/visarch/datafile_t672174776_s1_p1
channel aux1: restored backup piece 1
piece handle=/u02/oracle/visarch/datafile_t672174776_s1_p1 tag=TAG20081130T191256
channel aux1: restore complete, elapsed time: 00:24:57
Finished restore at 30-NOV-08
sql statement: CREATE CONTROLFILE REUSE SET DATABASE "ROJA" RESETLOGS ARCHIVELOG
MAXLOGFILES 32
MAXLOGMEMBERS 5
MAXDATAFILES 512
MAXINSTANCES 8
MAXLOGHISTORY 14607
LOGFILE
GROUP 1 ( '/u01/oramgr/PROD/db/rojadata/log01a.dbf', '/u01/oramgr/PROD/db/rojadata/log01b.dbf' ) SIZE 1000 M REUSE,
GROUP 2 ( '/u01/oramgr/PROD/db/rojadata/log02a.dbf', '/u01/oramgr/PROD/db/rojadata/log02b.dbf' ) SIZE 1000 M REUSE
DATAFILE
'/u01/oramgr/PROD/db/rojadata/system01.dbf'
CHARACTER SET US7ASCII
contents of Memory Script:
{
switch clone datafile all;
}
executing Memory Script
datafile 2 switched to datafile copy
input datafile copy recid=1 stamp=672190745 filename=/u01/oramgr/PROD/db/rojadata/system02.dbf
datafile 3 switched to datafile copy
input datafile copy recid=2 stamp=672190745 filename=/u01/oramgr/PROD/db/rojadata/system03.dbf
datafile 4 switched to datafile copy
input datafile copy recid=3 stamp=672190745 filename=/u01/oramgr/PROD/db/rojadata/system04.dbf
datafile 5 switched to datafile copy
input datafile copy recid=4 stamp=672190745 filename=/u01/oramgr/PROD/db/rojadata/system05.dbf
datafile 6 switched to datafile copy
input datafile copy recid=5 stamp=672190745 filename=/u01/oramgr/PROD/db/rojadata/ctxd01.dbf
.
.
.
.
.
.
datafile 406 switched to datafile copy
input datafile copy recid=41 stamp=672190747 filename=/u01/oramgr/PROD/db/rojadata/a_txn_ind05.dbf
datafile 407 switched to datafile copy
input datafile copy recid=42 stamp=672190747 filename=/u01/oramgr/PROD/db/rojadata/a_ref02.dbf
contents of Memory Script:
{
set until scn 5965096246191;
recover
clone database
delete archivelog
;
}
executing Memory Script
executing command: SET until clause
Starting recover at 30-NOV-08
starting media recovery
channel aux1: starting archive log restore to default destination
channel aux1: restoring archive log
archive log thread=1 sequence=6
channel aux1: restoring archive log
archive log thread=1 sequence=7
channel aux1: reading from backup piece /u02/oracle/backup/VIS_arch_3_672176329_%r.arc
ORA-19870: error reading backup piece /u02/oracle/backup/VIS_arch_3_672176329_%r.arc
ORA-19505: failed to identify file "/u02/oracle/backup/VIS_arch_3_672176329_%r.arc"
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory
Additional information: 3
Oracle Error:
ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below
ORA-01194: file 1 needs more recovery to be consistent
ORA-01110: data file 1: '/u01/oramgr/PROD/db/rojadata/system01.dbf'
released channel: aux1
released channel: aux2
released channel: aux3
released channel: aux4
RMAN-00571: ===========================================================
RMAN-00569: ERROR MESSAGE STACK FOLLOWS
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 11/30/2008 23:40:08
RMAN-03015: error occurred in stored script Memory Script
RMAN-20506: no backup of archivelog found
RMAN-06053: unable to perform media recovery because of missing log
RMAN-06025: no backup of log thread 1 seq 7 lowscn 5965096246186 found to restore
RMAN-06025: no backup of log thread 1 seq 6 lowscn 5965096244536 found to restore
RMAN>
RMAN> **end-of-file**
RMAN> exit
Recovery Manager complete.
*********************************************************************
To perform cancel-based recovery:
1. Start SQL*Plus and connect to Oracle with administrator privileges. For example, enter:
sqlplus '/ AS SYSDBA'
2. Start a new instance and mount the database:
STARTUP MOUNT
3. Begin cancel-based recovery by issuing the following command:
If you are using a backup control file with this incomplete recovery, then specify the USING BACKUP CONTROLFILE option in the RECOVER command.
SQL> RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFILE
--------------------------------------------------------------------------------
Note:
If you fail to specify the UNTIL clause on the RECOVER command, then you will not be able to open the database until a complete recovery is done.
--------------------------------------------------------------------------------
4. Oracle applies the necessary redo log files to reconstruct the restored datafiles. Oracle supplies the name it expects to find from LOG_ARCHIVE_DEST_1 and requests you to stop or proceed with applying the log file. Note that if the control file is a backup, then you must supply the names of the online logs if you want to apply the changes in these logs.
--------------------------------------------------------------------------------
Note:
If you use an Oracle Real Application Clusters configuration, and you are performing incomplete recovery or using a backup control file, then Oracle can only compute the name of the first archived redo log file from the first thread. The first redo log file from the other threads must be supplied by the user. After the first log file in a given thread has been supplied, Oracle can suggest the names of the subsequent log files in this thread.
--------------------------------------------------------------------------------
5. Continue applying redo log files until the last log has been applied to the restored datafiles, then cancel recovery by executing the following command:
CANCEL
Oracle returns a message indicating whether recovery is successful. Note that if you cancel recovery before all the datafiles have been recovered to a consistent SCN and then t rtry to open the database, you will get an ORA-1113 error if more recovery is necessary for the file. You can query V$RECOVER_FILE to determine whether more recovery is needed, or if a backup of a datafile was not restored prior to starting incomplete recovery.
6. Open the database in RESETLOGS mode. You must always reset the online logs after incomplete recovery or recovery with a backup control file. For example, enter:
ALTER DATABASE OPEN RESETLOGS;"
You copy that archivelog and change log name and apply it
cp PROD_arch_6_1_666832683.arc5 /u01/oramgr/PROD/db/tech_st/10.2.0/dbs/arch1_6_666832683.dbf
cp PROD_arch_7_1_666832683.arc6 /u01/oramgr/PROD/db/tech_st/10.2.0/dbs/arch1_7_666832683.dbf
Database is now mount stage, so controlfile created sucessfully, but database unable to open.
So we need to apply the archivelog files, you just apply two or more archive log and type cancel.
SQL> select open_mode from v$database;
OPEN_MODE
----------
MOUNTED
SQL> RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFILE
ORA-00279: change 5965096245461 generated at 11/30/2008 19:12:57 needed for
thread 1
ORA-00289: suggestion :
/u01/oramgr/PROD/db/tech_st/10.2.0/dbs/arch1_6_666832683.dbf
ORA-00280: change 5965096245461 for thread 1 is in sequence #6
Specify log: {=suggested filename AUTO CANCEL}
arch1_6_666832683.dbf
ORA-00279: change 5965096246186 generated at 11/30/2008 19:38:46 needed for
thread 1
ORA-00289: suggestion :
/u01/oramgr/PROD/db/tech_st/10.2.0/dbs/arch1_7_666832683.dbf
ORA-00280: change 5965096246186 for thread 1 is in sequence #7
ORA-00278: log file 'arch1_6_666832683.dbf' no longer needed for this recovery
Specify log: {=suggested filename AUTO CANCEL}
arch1_7_666832683.dbf
ORA-00279: change 5965096246191 generated at 11/30/2008 19:38:47 needed for
thread 1
ORA-00289: suggestion :
/u01/oramgr/PROD/db/tech_st/10.2.0/dbs/arch1_8_666832683.dbf
ORA-00280: change 5965096246191 for thread 1 is in sequence #8
ORA-00278: log file 'arch1_7_666832683.dbf' no longer needed for this recovery
Specify log: {=suggested filename AUTO CANCEL}
CANCEL (Here i typed Cancel), Now recovery is canceld and Database is now consistent stage.
Then try resetlogs.
Media recovery cancelled.
SQL> ALTER DATABASE OPEN RESETLOGS;
Database altered.
Finally bounce and startup the database.
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 1073741824 bytes
Fixed Size 1264892 bytes
Variable Size 427819780 bytes
Database Buffers 633339904 bytes
Redo Buffers 11317248 bytes
Database mounted.
Database opened.
Recovery Manager: Release 10.2.0.2.0 - Production on Sun Nov 30 23:12:56 2008
Copyright (c) 1982, 2005, Oracle. All rights reserved.
connected to target database: PROD (DBID=78671012)
using target database control file instead of recovery catalog
connected to auxiliary database: ROJA (not mounted)
RMAN> @/u02/oracle/visarch/clone.rcv
RMAN> run
2> {
3> allocate auxiliary channel aux1 device type disk format '/u02/oracle/visarch';
4> allocate auxiliary channel aux2 device type disk format '/u02/oracle/visarch';
5> allocate auxiliary channel aux3 device type disk format '/u02/oracle/visarch';
6> allocate auxiliary channel aux4 device type disk format '/u02/oracle/visarch';
7> duplicate target database to "ROJA";
8> }
allocated channel: aux1
channel aux1: sid=386 devtype=DISK
allocated channel: aux2
channel aux2: sid=385 devtype=DISK
allocated channel: aux3
channel aux3: sid=384 devtype=DISK
allocated channel: aux4
channel aux4: sid=383 devtype=DISK
Starting Duplicate Db at 30-NOV-08
contents of Memory Script:
{
set until scn 5965096246191;
set newname for datafile 1 to
"/u01/oramgr/PROD/db/rojadata/system01.dbf";
set newname for datafile 2 to
"/u01/oramgr/PROD/db/rojadata/system02.dbf";
set newname for datafile 3 to
"/u01/oramgr/PROD/db/rojadata/system03.dbf";
set newname for datafile 4 to
"/u01/oramgr/PROD/db/rojadata/system04.dbf";
set newname for datafile 5 to
"/u01/oramgr/PROD/db/rojadata/system05.dbf";
.
.
.
.
.
.
.
.
.
"/u01/oramgr/PROD/db/rojadata/a_txn_ind04.dbf";
set newname for datafile 406 to
"/u01/oramgr/PROD/db/rojadata/a_txn_ind05.dbf";
set newname for datafile 407 to
"/u01/oramgr/PROD/db/rojadata/a_ref02.dbf";
restore
check readonly
clone database
;
}
executing Memory Script
executing command: SET until clause
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
.
.
.
.
.
.
.
executing command: SET NEWNAME
executing command: SET NEWNAME
Starting restore at 30-NOV-08
channel aux1: starting datafile backupset restore
channel aux1: specifying datafile(s) to restore from backup set
restoring datafile 00001 to /u01/oramgr/PROD/db/rojadata/system01.dbf
restoring datafile 00002 to /u01/oramgr/PROD/db/rojadata/system02.dbf
restoring datafile 00003 to /u01/oramgr/PROD/db/rojadata/system03.dbf
restoring datafile 00004 to /u01/oramgr/PROD/db/rojadata/system04.dbf
.
.
.
.
.
.
restoring datafile 00406 to /u01/oramgr/PROD/db/rojadata/a_txn_ind05.dbf
restoring datafile 00407 to /u01/oramgr/PROD/db/rojadata/a_ref02.dbf
channel aux1: reading from backup piece /u02/oracle/visarch/datafile_t672174776_s1_p1
channel aux1: restored backup piece 1
piece handle=/u02/oracle/visarch/datafile_t672174776_s1_p1 tag=TAG20081130T191256
channel aux1: restore complete, elapsed time: 00:24:57
Finished restore at 30-NOV-08
sql statement: CREATE CONTROLFILE REUSE SET DATABASE "ROJA" RESETLOGS ARCHIVELOG
MAXLOGFILES 32
MAXLOGMEMBERS 5
MAXDATAFILES 512
MAXINSTANCES 8
MAXLOGHISTORY 14607
LOGFILE
GROUP 1 ( '/u01/oramgr/PROD/db/rojadata/log01a.dbf', '/u01/oramgr/PROD/db/rojadata/log01b.dbf' ) SIZE 1000 M REUSE,
GROUP 2 ( '/u01/oramgr/PROD/db/rojadata/log02a.dbf', '/u01/oramgr/PROD/db/rojadata/log02b.dbf' ) SIZE 1000 M REUSE
DATAFILE
'/u01/oramgr/PROD/db/rojadata/system01.dbf'
CHARACTER SET US7ASCII
contents of Memory Script:
{
switch clone datafile all;
}
executing Memory Script
datafile 2 switched to datafile copy
input datafile copy recid=1 stamp=672190745 filename=/u01/oramgr/PROD/db/rojadata/system02.dbf
datafile 3 switched to datafile copy
input datafile copy recid=2 stamp=672190745 filename=/u01/oramgr/PROD/db/rojadata/system03.dbf
datafile 4 switched to datafile copy
input datafile copy recid=3 stamp=672190745 filename=/u01/oramgr/PROD/db/rojadata/system04.dbf
datafile 5 switched to datafile copy
input datafile copy recid=4 stamp=672190745 filename=/u01/oramgr/PROD/db/rojadata/system05.dbf
datafile 6 switched to datafile copy
input datafile copy recid=5 stamp=672190745 filename=/u01/oramgr/PROD/db/rojadata/ctxd01.dbf
.
.
.
.
.
.
datafile 406 switched to datafile copy
input datafile copy recid=41 stamp=672190747 filename=/u01/oramgr/PROD/db/rojadata/a_txn_ind05.dbf
datafile 407 switched to datafile copy
input datafile copy recid=42 stamp=672190747 filename=/u01/oramgr/PROD/db/rojadata/a_ref02.dbf
contents of Memory Script:
{
set until scn 5965096246191;
recover
clone database
delete archivelog
;
}
executing Memory Script
executing command: SET until clause
Starting recover at 30-NOV-08
starting media recovery
channel aux1: starting archive log restore to default destination
channel aux1: restoring archive log
archive log thread=1 sequence=6
channel aux1: restoring archive log
archive log thread=1 sequence=7
channel aux1: reading from backup piece /u02/oracle/backup/VIS_arch_3_672176329_%r.arc
ORA-19870: error reading backup piece /u02/oracle/backup/VIS_arch_3_672176329_%r.arc
ORA-19505: failed to identify file "/u02/oracle/backup/VIS_arch_3_672176329_%r.arc"
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory
Additional information: 3
Oracle Error:
ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below
ORA-01194: file 1 needs more recovery to be consistent
ORA-01110: data file 1: '/u01/oramgr/PROD/db/rojadata/system01.dbf'
released channel: aux1
released channel: aux2
released channel: aux3
released channel: aux4
RMAN-00571: ===========================================================
RMAN-00569: ERROR MESSAGE STACK FOLLOWS
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 11/30/2008 23:40:08
RMAN-03015: error occurred in stored script Memory Script
RMAN-20506: no backup of archivelog found
RMAN-06053: unable to perform media recovery because of missing log
RMAN-06025: no backup of log thread 1 seq 7 lowscn 5965096246186 found to restore
RMAN-06025: no backup of log thread 1 seq 6 lowscn 5965096244536 found to restore
RMAN>
RMAN> **end-of-file**
RMAN> exit
Recovery Manager complete.
*********************************************************************
To perform cancel-based recovery:
1. Start SQL*Plus and connect to Oracle with administrator privileges. For example, enter:
sqlplus '/ AS SYSDBA'
2. Start a new instance and mount the database:
STARTUP MOUNT
3. Begin cancel-based recovery by issuing the following command:
If you are using a backup control file with this incomplete recovery, then specify the USING BACKUP CONTROLFILE option in the RECOVER command.
SQL> RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFILE
--------------------------------------------------------------------------------
Note:
If you fail to specify the UNTIL clause on the RECOVER command, then you will not be able to open the database until a complete recovery is done.
--------------------------------------------------------------------------------
4. Oracle applies the necessary redo log files to reconstruct the restored datafiles. Oracle supplies the name it expects to find from LOG_ARCHIVE_DEST_1 and requests you to stop or proceed with applying the log file. Note that if the control file is a backup, then you must supply the names of the online logs if you want to apply the changes in these logs.
--------------------------------------------------------------------------------
Note:
If you use an Oracle Real Application Clusters configuration, and you are performing incomplete recovery or using a backup control file, then Oracle can only compute the name of the first archived redo log file from the first thread. The first redo log file from the other threads must be supplied by the user. After the first log file in a given thread has been supplied, Oracle can suggest the names of the subsequent log files in this thread.
--------------------------------------------------------------------------------
5. Continue applying redo log files until the last log has been applied to the restored datafiles, then cancel recovery by executing the following command:
CANCEL
Oracle returns a message indicating whether recovery is successful. Note that if you cancel recovery before all the datafiles have been recovered to a consistent SCN and then t rtry to open the database, you will get an ORA-1113 error if more recovery is necessary for the file. You can query V$RECOVER_FILE to determine whether more recovery is needed, or if a backup of a datafile was not restored prior to starting incomplete recovery.
6. Open the database in RESETLOGS mode. You must always reset the online logs after incomplete recovery or recovery with a backup control file. For example, enter:
ALTER DATABASE OPEN RESETLOGS;"
You copy that archivelog and change log name and apply it
cp PROD_arch_6_1_666832683.arc5 /u01/oramgr/PROD/db/tech_st/10.2.0/dbs/arch1_6_666832683.dbf
cp PROD_arch_7_1_666832683.arc6 /u01/oramgr/PROD/db/tech_st/10.2.0/dbs/arch1_7_666832683.dbf
Database is now mount stage, so controlfile created sucessfully, but database unable to open.
So we need to apply the archivelog files, you just apply two or more archive log and type cancel.
SQL> select open_mode from v$database;
OPEN_MODE
----------
MOUNTED
SQL> RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFILE
ORA-00279: change 5965096245461 generated at 11/30/2008 19:12:57 needed for
thread 1
ORA-00289: suggestion :
/u01/oramgr/PROD/db/tech_st/10.2.0/dbs/arch1_6_666832683.dbf
ORA-00280: change 5965096245461 for thread 1 is in sequence #6
Specify log: {
arch1_6_666832683.dbf
ORA-00279: change 5965096246186 generated at 11/30/2008 19:38:46 needed for
thread 1
ORA-00289: suggestion :
/u01/oramgr/PROD/db/tech_st/10.2.0/dbs/arch1_7_666832683.dbf
ORA-00280: change 5965096246186 for thread 1 is in sequence #7
ORA-00278: log file 'arch1_6_666832683.dbf' no longer needed for this recovery
Specify log: {
arch1_7_666832683.dbf
ORA-00279: change 5965096246191 generated at 11/30/2008 19:38:47 needed for
thread 1
ORA-00289: suggestion :
/u01/oramgr/PROD/db/tech_st/10.2.0/dbs/arch1_8_666832683.dbf
ORA-00280: change 5965096246191 for thread 1 is in sequence #8
ORA-00278: log file 'arch1_7_666832683.dbf' no longer needed for this recovery
Specify log: {
CANCEL (Here i typed Cancel), Now recovery is canceld and Database is now consistent stage.
Then try resetlogs.
Media recovery cancelled.
SQL> ALTER DATABASE OPEN RESETLOGS;
Database altered.
Finally bounce and startup the database.
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 1073741824 bytes
Fixed Size 1264892 bytes
Variable Size 427819780 bytes
Database Buffers 633339904 bytes
Redo Buffers 11317248 bytes
Database mounted.
Database opened.
Enabling ARCHIVELOG Mode
Check Archive is enabled or not
SQL> SELECT LOG_MODE FROM SYS.V$DATABASE;
LOG_MODE
------------
NOARCHIVELOG
Set InitSID.ora on following parameter
remote_login_passwordfile=EXCLUSIVE
log_archive_dest='/u02/oracle/backup'
log_archive_format='PROD_arch_%s_%t_%r.arc'
Create Password File
orapwd file=/u01/oramgr/PROD/db/tech_st/10.2.0/dbs/orapwPROD entries=1 password=oracle
SQL> alter database archivelog;
Database altered.
SQL> alter database open;
Database altered.
V$DATABASE
Identifies whether the database is in ARCHIVELOG or NOARCHIVELOG mode and whether MANUAL (archiving mode) has been specified.
V$ARCHIVED_LOG
Displays historical archived log information from the control file. If you use a recovery catalog, the RC_ARCHIVED_LOG view contains similar information.
V$ARCHIVE_DEST
Describes the current instance, all archive destinations, and the current value, mode, and status of these destinations.
V$ARCHIVE_PROCESSES
Displays information about the state of the various archive processes for an instance.
V$BACKUP_REDOLOG
Contains information about any backups of archived logs. If you use a recovery catalog, the
RC_BACKUP_REDOLOG contains similar information.
V$LOG
Displays all redo log groups for the database and indicates which need to be archived.
V$LOG_HISTORY
Contains log history information such as which logs have been archived and the SCN range for each archived log.
Using these tables we can verify that we are infact in ARCHIVELOG mode:
SQL> select log_mode from v$database;
LOG_MODE
------------
ARCHIVELOG
SQL> select DEST_NAME,STATUS,DESTINATION from V$ARCHIVE_DEST;
SQL> SELECT LOG_MODE FROM SYS.V$DATABASE;
LOG_MODE
------------
NOARCHIVELOG
Set InitSID.ora on following parameter
remote_login_passwordfile=EXCLUSIVE
log_archive_dest='/u02/oracle/backup'
log_archive_format='PROD_arch_%s_%t_%r.arc'
Create Password File
orapwd file=/u01/oramgr/PROD/db/tech_st/10.2.0/dbs/orapwPROD entries=1 password=oracle
SQL> alter database archivelog;
Database altered.
SQL> alter database open;
Database altered.
V$DATABASE
Identifies whether the database is in ARCHIVELOG or NOARCHIVELOG mode and whether MANUAL (archiving mode) has been specified.
V$ARCHIVED_LOG
Displays historical archived log information from the control file. If you use a recovery catalog, the RC_ARCHIVED_LOG view contains similar information.
V$ARCHIVE_DEST
Describes the current instance, all archive destinations, and the current value, mode, and status of these destinations.
V$ARCHIVE_PROCESSES
Displays information about the state of the various archive processes for an instance.
V$BACKUP_REDOLOG
Contains information about any backups of archived logs. If you use a recovery catalog, the
RC_BACKUP_REDOLOG contains similar information.
V$LOG
Displays all redo log groups for the database and indicates which need to be archived.
V$LOG_HISTORY
Contains log history information such as which logs have been archived and the SCN range for each archived log.
Using these tables we can verify that we are infact in ARCHIVELOG mode:
SQL> select log_mode from v$database;
LOG_MODE
------------
ARCHIVELOG
SQL> select DEST_NAME,STATUS,DESTINATION from V$ARCHIVE_DEST;
In Oracle 10.2 and above RMAN is supported by a number of new dynamic performance views including:
V$BACKUP_ARCHIVELOG_DETAILS
V$BACKUP_ARCHIVELOG_SUMMARY
V$BACKUP_CONTROLFILE_DETAILS
V$BACKUP_CONTROLFILE_SUMMARY
V$BACKUP_COPY_DETAILS
V$BACKUP_COPY_SUMMARY
V$BACKUP_DATAFILE_DETAILS
V$BACKUP_DATAFILES_SUMMARY
V$BACKUP_PIECE_DETAILS
V$BACKUP_SET_DETAILS
V$BACKUP_SET_SUMMARY
V$BACKUP_SPFILE_DETAILS
V$BACKUP_SPFILE_SUMMARY
v$archived_log
v$archived_log
RMAN> list backup summary;
list backup by datafile;
list backup of database;
list backup of archivelog all;
list backup of controlfile;
PatchSet:
1. 11i.ATG_PF.H.delta.6 (RUP 5) or above.
2. 6117031 - 11i.ATG_PF.H RUP6 SSO 10g Integration,
Check and apply all the prerequisites.
Using OracleAS 10g with the Oracle E-Business Suite
Integrating Oracle E-Business Suite Release 11i with Oracle Internet Directory and Oracle Single Sign-On
Go to FND_TOP/bin
[applmgr@sys4 bin]$ txkrun.pl -script=SetSSOReg
Enter the host name where Oracle iAS Infrastructure database is installed ? sys38.doyen.in
Enter the Oracle iAS Infrastructure database port number ? 1521
Enter the Oracle iAS Infrastructure database SID ? test
Enter the LDAP Port on Oracle Internet Directory server ? 389
Enter Oracle E-Business apps database user password ? apps
Enter Oracle iAS Infrastructure database ORASSO schema password ? orasso
Enter Oracle E-Business SYSTEM database user password ? oracle
Enter E-Business Suite existing SSOSDK schema password or choose a password to use with the new SSOSDK schema if the schema does not exist ? SSOSDK
Enter the Oracle Internet Directory Administrator (orcladmin) Bind password ? welcome99
Enter the instance password that you would like to register this application instance with ? welcome99
*** ALL THE FOLLOWING FILES ARE REQUIRED FOR RESOLVING RUNTIME ERRORS
*** Log File = /oracle/app/apps/viscomn/rgf/VIS_sys4/sso/txkSetSSOReg_Fri_Jan_4_16_00_37_2008.log
Program : /oracle/app/apps/visappl/fnd/11.5.0/patch/115/bin/txkSetSSOReg.pl started @ Fri Jan 4 16:01:22 2008
*** Log File = /oracle/app/apps/viscomn/rgf/VIS_sys4/sso/txkSetSSOReg_Fri_Jan_4_16_00_37_2008.log
######################## WARNING
This application works with SSOSDK version 9.0.2 or higher. If lower version
(3.0.9) of SSOSDK was installed in your system and you have a registered
partner application, this process will remove the 3.0.9 version of the SSOSDK
schema and install the 9.0.2 version.
######################## WARNING
Beginning input parameter validation for SSO registration.
Beginning loading SSO SDK into database if necessary.
Loading of SSO SDK into database completed successfully.
Input parameters validation for OID registration completed.
BEGIN SSO REGISTRATION:
Beginning to register partner application.
Partner application has been registered successfully.
Single Sign-On partner application registered successfully.
BEGIN OID REGISTRATION:
Beginning to register Application and Service containers if necessary.
Application and Service containers were created successfully.
Beginning to register application in Oracle Internet Directory.
Registration of application in Oracle Internet Directory completed successfully.
Beginning to register instance password in Oracle Internet Directory.
Registration of instance password in Oracle Internet Directory completed successfully.
Beginning to test application registration in Oracle Internet Directory.
Testing of application registration in Oracle Internet Directory completed successfully.
Beginning to register provisioning profile in Oracle Internet Directory.
Registration of provisioning profile in Oracle Internet Directory completed successfully.
Application is now registered successfully with provisioning in Oracle Internet Directory.
End of /oracle/app/apps/visappl/fnd/11.5.0/patch/115/bin/txkSetSSOReg.pl : No Errors encountered
[applmgr@sys4 bin]$
a. do an anonymous bind...
ldapbind -h sys38.doyen.in -p 389
b. do a superuser bind....
ldapbind -h sys38.doyen.in -p 389 -D "cn=orcladmin" -w welcome99
c. do an encrypted super user bind...
ldapbind -h sys38.doyen.in -p 389 -U 1 -D cn=orcladmin -w welcome99
d. do a specific user bind....for example:
ldapbind -h sys38.doyen.in -p 389 -D "cn=orcladmin,cn=users,dc=doyen,dc=in" -w welcome99
Exporting Application Accounts into Intermediate LDIF File
Determine which accounts to migrate
ô€‚ƒ Applications SSO Login Types (APPS_SSO_LOCAL_LOGIN) – An account will not be migrated if the user level profile value of the account is ‘LOCAL’, i.e. the account is a local account.
ô€‚ƒ Applications SSO LDAP Synchronization (APPS_SSO_LDAP_SYNC) -- An account will not be migrated if the user level profile value of the account is ‘N’, i.e. the account is marked to not to synchronize with Oracle Internet Directory.
Note: The site level profile value will be used in the cases where the user level profile value is not set.
Oracle E-Business Suite ships a number of standard accounts, such as SYSADMIN and GUEST. These accounts should not be migrated. To enforce this, the SYSADMIN and GUEST accounts are pre-seeded with Applications SSO Login Types (APPS_SSO_LOCAL_LOGIN) set to ‘LOCAL’ and Applications SSO LDAP Synchronization (APPS_SSO_LDAP_SYNC) set to ‘N’.
Administrators should check whether there are any additional accounts that should not be migrated, especially accounts with user_id less than 10 (check with: select user_name from FND_USER where user_id<10). These standard accounts can only be used for local login and cannot be used to log into Single Sign-On. Use AppsUserExport to extract user information For
example:
java oracle.apps.fnd.oid.AppsUserExport \ -v \ -dbc $FND_TOP/secure/myebiz.dbc \ -o users.txt \ -pwd welcome \ -g \ -l users.log The resulting data file and log file may contain confidential information, such as the start and end dates for a user’s account, and should therefore be secured appropriately. java oracle.apps.fnd.oid.AppsUserExport -dbc /oracle/app/apps/visappl/fnd/11.5.0/secure/VIS_sys4/vis.dbc -o /oracle/app/apps/visappl/fnd/11.5.0/secure/VIS_sys4/vis01.out -pwd apps User Export to /oracle/app/apps/visappl/fnd/11.5.0/secure/VIS_sys4/vis01.out User Export to /oracle/app/apps/visappl/fnd/11.5.0/secure/VIS_sys4/vis01.out started.. User Export completed successfully. For further details please refer to log file at: /oracle/app/apps/visappl/fnd/11.5.0/secure/VIS_sys4/vis01.out.log [oracle@sys38 ~]$ $ORACLE_HOME/bin/ldapsearch -h sys38 -p 389 -D "cn=orcladmin" -w welcome99 -b "cn=Provisioning Profiles, cn=Changelog Subscriber, cn=Oracle Internet Directory" -s sub "objectclass=*" > profiles.ldif
[oracle@sys38 ~]$ $ORACLE_HOME/bin/ldapsearch -h sys38 -p 389 -D "cn=orcladmin" -w welcome99 -s sub "orclguid=42E42E799F8C50F5E040A8C0260051FA" -b "" dn
orclApplicationCommonName=VIS,cn=EBusiness,cn=Products,cn=OracleContext,dc=doyen,dc=in
[oracle@sys38 ~]$ oidprovtool operation=disable ldap_host=sys38.doyen.in ldap_port=389 ldap_user_dn=cn=orcladmin ldap_user_password=welcome99 application_dn=orclApplicationCommonName=VIS,cn=EBusiness,cn=Products,cn=OracleContext,dc=doyen,dc=in profile_mode=BOTH
This Provisioning Profile is disabled.
Task 2: Converting Intermediate LDIF File to Final LDIF File
Before performing loading data into Oracle Internet Directory, the Oracle Internet Directory administrator needs to ensure that:
􀂃 The extracted data file is copied from the Oracle E-Business Suite instance to Oracle Internet Directory.
􀂃 If the provisioning profile has been set up for the Oracle E-Business Suite instance and the profile mode is either OUTBOUND or BOTH
To convert the intermediate LDIF file to the final LDIF format:
. Use oidprovtool with operation=DISABLE to disable the profile before the migration is started.
For example:
oidprovtool operation=disable ldap_host=sys38.doyen.in ldap_port=389 ldap_user_dn=cn=orcladmin ldap_user_password=welcome99 application_dn=orclApplicationCommonName=VIS,cn=EBusiness,cn=Products,cn=OracleContext,dc=doyen,dc=in profile_mode=BOTH
After migration is complete, update the lastchangenumber attribute of the profile:
First, find the current last change number in Oracle Internet Directory with the ldapsearch command:
ldapsearch –h sys38.doyen.in -p welcome99 -D cn=oracladmin -w welcome99 -s base -b "" "objectclass=*" lastchangenumber=2623
Next, use the following command to update the lastchangenumber attribute to the number n that was discovered in the last step:
[oracle@sys38 bin]$ oidprovtool operation=MODIFY ldap_host=sys38.doyen.in ldap_port=389 ldap_user_dn=cn=orcladmin ldap_user_password=welcome99 application_dn=orclApplicationCommonName=VIS,cn=EBusiness,cn=Products,cn=OracleContext,dc=doyen,dc=in orclLastAppliedChangeNumber=2623
The Provisioning Profile for the Application has been modified.
3. Use oidprovtool with operation=ENABLE to enable the profile.
[oracle@sys38 bin]$ oidprovtool operation=enable ldap_host=sys38.doyen.in ldap_port=389 ldap_user_dn=cn=orcladmin ldap_user_password=welcome99 application_dn=orclApplicationCommonName=VIS,cn=EBusiness,cn=Products,cn=OracleContext,dc=doyen,dc=in profile_mode=BOTH
This Provisioning Profile is enabled.
4. The intermediate LDIF file created by AppsUserExport has two variables that an Oracle Internet Directory administrator needs to instantiate using the Oracle Internet Directory ldifmigrator utility:
[oracle@sys38 bin]$ ldifmigrator "input_file=/home/oracle/mig_user/vis01.out" "output_file=data.ldif" "s_UserContainerDN=cn=users,dc=doyen,dc=in" "s_UserNicknameAttribute=uid"
Migration of LDIF data completed. All the entries are successfully migrated
Task 3: Loading Final LDIF file into Oracle Internet Directory
Once the final LDIF file has been generated, the user data is ready to be loaded into Oracle Internet Directory using the Oracle Internet Directory bulkload tool.
Before performing a bulk load:
1. Stop all OID processes before using the bulkload utility to load the LDIF file:
$ORACLE_HOME/opmn/bin/opmnctl stopall
Note the OID password, which should be the same as the instance and orcladmin passwords. You will be prompted for this when running the utility.
2. In case the oidmon or oidctl commands were used to manually start the oid proceses, you must make sure that they have stopped:
On Unix Run: $ORACLE_HOME/ldap/bin/ldapcheck
[oracle@sys38 bin]$ ./ldapcheck
Checking Oracle Internet Directory Processes ...ALL
Not Running ---- Process oidmon
Not Running ---- Process oidldapd
Not Running ---- Process oidrepld
Not Running ---- Process odisrv
No LDAP Processes are Running
3. If any other OID processes such as odisrv are still running, you must stop them manually using:
oidctl connect=test server=oidsrv instance=1 stop
You must ensure that no OID processes are running before continuing with the bulkload.sh command.
1. Run the bulkload utility with the -check and –generate options to verify that there are no duplicate users.
For example:
bulkload.sh –connect-check –generate
[oracle@sys38 bin]$ ./bulkload.sh -connect "test" -check -generate /home/oracle/orainfra/opmn/bin/data.ldif
Verifying node "test"
-----------------------------
This tool can only be executed if you know database user password
for OiD on test
Enter OiD password ::
------------------------------------------------------------------
Checking Internet Directory current schema state
------------------------------------------------------------------
-------------------------------------------------------------------
Checking and Generating Internet Directory data for bulk loading
-------------------------------------------------------------------
Schema Check Errors are logged in : /home/oracle/orainfra/ldap/log/bulkload.log
Bad Entries are logged in : /home/oracle/orainfra/ldap/load/badentry.ldif
Non-Unique Distinguished Names are logged in : /home/oracle/orainfra/ldap/log/duplicateDN.log
-------------------------------------------------------------------
Data Generated for bulk loading
-------------------------------------------------------------------
Please Remove the errors
[oracle@sys38 bin]$ ./bulkload.sh -connect "test" -check -generate /home/oracle/orainfra/opmn/bin/data.ldif
Verifying node "test"
-----------------------------
This tool can only be executed if you know database user password
for OiD on test
Enter OiD password ::
------------------------------------------------------------------
Checking Internet Directory current schema state
------------------------------------------------------------------
-------------------------------------------------------------------
Checking and Generating Internet Directory data for bulk loading
-------------------------------------------------------------------
No Schema Check Errors.
No Bad Entries found.
No Duplicate DN Entries.
-------------------------------------------------------------------
Data Generated for bulk loading
-------------------------------------------------------------------
2. Check the log file for duplicate users
If you get any Bad Entries and Duplicate DN Entries, Just remove those entries and run again setp 1.
3. If the log file indicates duplicate users, manually remove these users from the LDIF file.
4. Rerun Step 1 to verify all duplicates have been successfully removed.
5. Once all duplicates are removed, run the bulkload utility with the –load option to load the users.
For example:
bulkload.sh –connect–load
[oracle@sys38 bin]$ ./bulkload.sh -connect "test" -load /home/oracle/orainfra/opmn/bin/data.ldif
Verifying node "test"
-----------------------------
This tool can only be executed if you know database user password
for OiD on test
Enter OiD password ::
It is recommended to use -check option before generating/loading data
Do you want to continue (y/n?) [n]
y
Loading data on : "test"
===============================
------------------------------------------------------------------
Preparing Internet Directory schema for bulk data loading
------------------------------------------------------------------
------------------------------------------------------------------
Initiating bulk load...
------------------------------------------------------------------
Loading Attribute Search Catalogs..
battr_store001..
battr_store002..
battr_store003..
attr_store001..
attr_store002..
attr_store003..
c..
cn..
ctcaladmd..
ctcalcountry..
ctcalhost..
ctcalmobiletelephonetype..
ctcalorganization..
ctcalorgunit1..
ctcalorgunit2..
ctcalorgunit3..
ctcalorgunit4..
ctcalprmd..
ctcalpublishedtype..
ctcalresourcecapacity..
ctcalresourcenumber..
ctcalxitemid..
dc..
description..
employeenumber..
facsimiletelephonenumber..
generationqualifier..
givenname..
homephone..
initials..
krbprincipalname..
labeleduri..
l..
mail..
manager..
member..
middlename..
mobile..
name..
objectclass..
o..
orclaci..
orclcalendarhost..
orclcalendarresourcecapacity..
orclcalendarresourcenumber..
orclcalendarstore..
orclcertificatehash..
orclcertificatematch..
orclcommonkrbprincipalattribute..
orcldasispersonal..
orcldassearchable..
orcldasvalidatepwdreset..
orcldasviewable..
orcldbaqgeneric..
orcldbaqobjname..
orcldbaqobjowner..
orcldbaqobjtype..
orcldbaqpointerattr..
orcldbaqreglocation..
orcldbaqregnamespace..
orcldbaqregrejected..
orcldbaqregservers..
orcldbaqregsubscription..
orcldbaqregunreachable..
orcldbaqreguser..
orcldbdistinguishedname..
orcldbentroleassigned..
orcldbentuser..
orcldbglobalname..
orcldblscolumnname..
orcldblsfullname..
orcldblsgroupparent..
orcldblsnumerictag..
orcldbnativeuser..
orcldbroleoccupant..
orcldbservermember..
orcldbserverrole..
orcldbtargetuser..
orcldbtrusteddomain..
orcldbtrusteduser..
orclentrylevelaci..
orcleventtime..
orcleventtype..
orclglobalid..
orclguid..
orclhostname..
orclipaddress..
orclisenabled..
orclisvisible..
orcljazncodebase..
orcljaznjavaclass..
orcljaznpermissionactions..
orcljaznpermissiontarget..
orcljaznprincipal..
orcljaznrealmisexternal..
orcljaznsigner..
orcljaznsubscriberdn..
orclldapinstanceid..
orclldapprocessid..
orclmailaci..
orclmailaddresscategory..
orclmailemail..
orclmailfolderdn..
orclmailgroupadminmailid..
orclmailgrouphasarchive..
orclmailgroupisexternal..
orclmaillistsuspendedmember..
orclmailnewsfoldercreatetime..
orclmailnntpactivegroup..
orclmailnntplocalgroup..
orclmailnntpmoderatedgroup..
orclmailowner..
orclmailpublicdisplayname..
orclmailrenamedsharedfolder..
orclmailrulescope..
orclmailstore..
orclmailstoredn..
orclmailuserdldn..
orclnethostname..
orclnetservicename..
orclnewsgroupdn..
orclnormdn..
orclobjectguid..
orclodipagentname..
orclodipprofileexecgroupid..
orclodipprofilename..
orclownerguid..
orclrealmname..
orclreplicadn..
orclresourcename..
orclresourcetypename..
orclsamaccountname..
orclsecondaryuid..
orclservicemember..
orclservicesubtype..
orclservicetype..
orclstatus..
orclsuitetype..
orclumattendantextension..
orclumdeviceaddress..
orclumlocale..
orclumnamehash..
orcluserapplnprovstatus..
orcluserdn..
orclwirelessaccountnumber..
ou..
owner..
pager..
personalmobile..
personalpager..
postalcode..
pwdaccountlockedtime..
sn..
st..
street..
targetdn..
telephonenumber..
title..
uid..
uniquemember..
vpimmail..
x509issuer..
Loading Distinguished Name Catalog..
------------------------------------------------------------------
Performing post bulk load processing for Internet Directory schema
------------------------------------------------------------------
------------------------------------------------------------------
Creating Indexes ...
------------------------------------------------------------------
-------------------------------------------------------------
Verifying Index creation ...
-------------------------------------------------------------
All indexes created successfully
-------------------------------------------------------------
Index creation verification Done ...
-------------------------------------------------------------
-------------------------------------------------------------
Altering Index ...
-------------------------------------------------------------
-------------------------------------------------------------
Altering Index Done ...
-------------------------------------------------------------
------------------------------------------------------------------
Generating Database Statistics ...
------------------------------------------------------------------
-------------------------------------------------------------
Done.
-------------------------------------------------------------
Migrating Existing Accounts from Oracle Internet Directory to Oracle E-Business Suite Release 11i
The LDAPUserImport command-line utility takes an LDIF file generated from Oracle Internet Directory, and inserts appropriate data into the E-Business Suite schema. It can be used for bulk migration of existing accounts from Oracle Internet Directory to Oracle E-Business Suite. LDAPUserImport updates both FND and TCA schema.
Task 1: Export Oracle Internet Directory users into LDIF file Using ldifwrite
The Oracle Internet Directory ldifWrite command-line utility is used to create an LDIF file that can be loaded into the E-Business Suite schema via the LDAPUserImport command-line utility.
General Syntax:
ldifwrite –c-b -f
Example:
ldifwrite -c test -b "cn=Users,dc=doyen,dc=in" -f output.ldif
[oracle@sys38 bin]$ ldifwrite -c test -b "cn=Users,dc=doyen,dc=in" -f output.ldif
This tool can only be executed if you know database user password for OiD
Enter OiD Password ::
------------------------------------------------------------
Reading entries under BaseDN "cn=users,dc=doyen,dc=in"...
-------------------------------------------------------------
------------------------------------------------------------
1872 Entries are written to "output.ldif".
------------------------------------------------------------
There is no need to modify the output file output.ldif in any way before proceeding with Task 2.
Task 2: Import LDAP Users into Oracle E-Business Suite using LDAPUserImport
The LDAPUserImport tool is invoked from the command line.
1. Ensure the environment is set up properly: $APPL_TOP/java must be in the CLASSPATH environment variable),
2. Invoke the LDAPUserImport tool with the following syntax:
java oracle.apps.fnd.oid.LDAPUserImport \
-v \
-dbc $FND_TOP/secure/myebiz.dbc \
-f users.ldif \
-n uid \
-l users.log
For example:
[applmgr@sys4 VIS_sys4]$ java oracle.apps.fnd.oid.LDAPUserImport -v -dbc /oracle/app/apps/visappl/fnd/11.5.0/secure/VIS_sys4/vis.dbc -f /oracle/app/apps/visappl/fnd/11.5.0/secure/VIS_sys4/output.ldif -n uid -l ouput.log
LDAP user import from /oracle/app/apps/visappl/fnd/11.5.0/secure/VIS_sys4/output.ldif started..
LDAP user import completed sucessfully. For further details refer to log file at ouput.log
1. 11i.ATG_PF.H.delta.6 (RUP 5) or above.
2. 6117031 - 11i.ATG_PF.H RUP6 SSO 10g Integration,
Check and apply all the prerequisites.
Using OracleAS 10g with the Oracle E-Business Suite
Integrating Oracle E-Business Suite Release 11i with Oracle Internet Directory and Oracle Single Sign-On
Go to FND_TOP/bin
[applmgr@sys4 bin]$ txkrun.pl -script=SetSSOReg
Enter the host name where Oracle iAS Infrastructure database is installed ? sys38.doyen.in
Enter the Oracle iAS Infrastructure database port number ? 1521
Enter the Oracle iAS Infrastructure database SID ? test
Enter the LDAP Port on Oracle Internet Directory server ? 389
Enter Oracle E-Business apps database user password ? apps
Enter Oracle iAS Infrastructure database ORASSO schema password ? orasso
Enter Oracle E-Business SYSTEM database user password ? oracle
Enter E-Business Suite existing SSOSDK schema password or choose a password to use with the new SSOSDK schema if the schema does not exist ? SSOSDK
Enter the Oracle Internet Directory Administrator (orcladmin) Bind password ? welcome99
Enter the instance password that you would like to register this application instance with ? welcome99
*** ALL THE FOLLOWING FILES ARE REQUIRED FOR RESOLVING RUNTIME ERRORS
*** Log File = /oracle/app/apps/viscomn/rgf/VIS_sys4/sso/txkSetSSOReg_Fri_Jan_4_16_00_37_2008.log
Program : /oracle/app/apps/visappl/fnd/11.5.0/patch/115/bin/txkSetSSOReg.pl started @ Fri Jan 4 16:01:22 2008
*** Log File = /oracle/app/apps/viscomn/rgf/VIS_sys4/sso/txkSetSSOReg_Fri_Jan_4_16_00_37_2008.log
######################## WARNING
This application works with SSOSDK version 9.0.2 or higher. If lower version
(3.0.9) of SSOSDK was installed in your system and you have a registered
partner application, this process will remove the 3.0.9 version of the SSOSDK
schema and install the 9.0.2 version.
######################## WARNING
Beginning input parameter validation for SSO registration.
Beginning loading SSO SDK into database if necessary.
Loading of SSO SDK into database completed successfully.
Input parameters validation for OID registration completed.
BEGIN SSO REGISTRATION:
Beginning to register partner application.
Partner application has been registered successfully.
Single Sign-On partner application registered successfully.
BEGIN OID REGISTRATION:
Beginning to register Application and Service containers if necessary.
Application and Service containers were created successfully.
Beginning to register application in Oracle Internet Directory.
Registration of application in Oracle Internet Directory completed successfully.
Beginning to register instance password in Oracle Internet Directory.
Registration of instance password in Oracle Internet Directory completed successfully.
Beginning to test application registration in Oracle Internet Directory.
Testing of application registration in Oracle Internet Directory completed successfully.
Beginning to register provisioning profile in Oracle Internet Directory.
Registration of provisioning profile in Oracle Internet Directory completed successfully.
Application is now registered successfully with provisioning in Oracle Internet Directory.
End of /oracle/app/apps/visappl/fnd/11.5.0/patch/115/bin/txkSetSSOReg.pl : No Errors encountered
[applmgr@sys4 bin]$
a. do an anonymous bind...
ldapbind -h sys38.doyen.in -p 389
b. do a superuser bind....
ldapbind -h sys38.doyen.in -p 389 -D "cn=orcladmin" -w welcome99
c. do an encrypted super user bind...
ldapbind -h sys38.doyen.in -p 389 -U 1 -D cn=orcladmin -w welcome99
d. do a specific user bind....for example:
ldapbind -h sys38.doyen.in -p 389 -D "cn=orcladmin,cn=users,dc=doyen,dc=in" -w welcome99
Exporting Application Accounts into Intermediate LDIF File
Determine which accounts to migrate
ô€‚ƒ Applications SSO Login Types (APPS_SSO_LOCAL_LOGIN) – An account will not be migrated if the user level profile value of the account is ‘LOCAL’, i.e. the account is a local account.
ô€‚ƒ Applications SSO LDAP Synchronization (APPS_SSO_LDAP_SYNC) -- An account will not be migrated if the user level profile value of the account is ‘N’, i.e. the account is marked to not to synchronize with Oracle Internet Directory.
Note: The site level profile value will be used in the cases where the user level profile value is not set.
Oracle E-Business Suite ships a number of standard accounts, such as SYSADMIN and GUEST. These accounts should not be migrated. To enforce this, the SYSADMIN and GUEST accounts are pre-seeded with Applications SSO Login Types (APPS_SSO_LOCAL_LOGIN) set to ‘LOCAL’ and Applications SSO LDAP Synchronization (APPS_SSO_LDAP_SYNC) set to ‘N’.
Administrators should check whether there are any additional accounts that should not be migrated, especially accounts with user_id less than 10 (check with: select user_name from FND_USER where user_id<10). These standard accounts can only be used for local login and cannot be used to log into Single Sign-On. Use AppsUserExport to extract user information For
example:
java oracle.apps.fnd.oid.AppsUserExport \ -v \ -dbc $FND_TOP/secure/myebiz.dbc \ -o users.txt \ -pwd welcome \ -g \ -l users.log The resulting data file and log file may contain confidential information, such as the start and end dates for a user’s account, and should therefore be secured appropriately. java oracle.apps.fnd.oid.AppsUserExport -dbc /oracle/app/apps/visappl/fnd/11.5.0/secure/VIS_sys4/vis.dbc -o /oracle/app/apps/visappl/fnd/11.5.0/secure/VIS_sys4/vis01.out -pwd apps User Export to /oracle/app/apps/visappl/fnd/11.5.0/secure/VIS_sys4/vis01.out User Export to /oracle/app/apps/visappl/fnd/11.5.0/secure/VIS_sys4/vis01.out started.. User Export completed successfully. For further details please refer to log file at: /oracle/app/apps/visappl/fnd/11.5.0/secure/VIS_sys4/vis01.out.log [oracle@sys38 ~]$ $ORACLE_HOME/bin/ldapsearch -h sys38 -p 389 -D "cn=orcladmin" -w welcome99 -b "cn=Provisioning Profiles, cn=Changelog Subscriber, cn=Oracle Internet Directory" -s sub "objectclass=*" > profiles.ldif
[oracle@sys38 ~]$ $ORACLE_HOME/bin/ldapsearch -h sys38 -p 389 -D "cn=orcladmin" -w welcome99 -s sub "orclguid=42E42E799F8C50F5E040A8C0260051FA" -b "" dn
orclApplicationCommonName=VIS,cn=EBusiness,cn=Products,cn=OracleContext,dc=doyen,dc=in
[oracle@sys38 ~]$ oidprovtool operation=disable ldap_host=sys38.doyen.in ldap_port=389 ldap_user_dn=cn=orcladmin ldap_user_password=welcome99 application_dn=orclApplicationCommonName=VIS,cn=EBusiness,cn=Products,cn=OracleContext,dc=doyen,dc=in profile_mode=BOTH
This Provisioning Profile is disabled.
Task 2: Converting Intermediate LDIF File to Final LDIF File
Before performing loading data into Oracle Internet Directory, the Oracle Internet Directory administrator needs to ensure that:
􀂃 The extracted data file is copied from the Oracle E-Business Suite instance to Oracle Internet Directory.
􀂃 If the provisioning profile has been set up for the Oracle E-Business Suite instance and the profile mode is either OUTBOUND or BOTH
To convert the intermediate LDIF file to the final LDIF format:
. Use oidprovtool with operation=DISABLE to disable the profile before the migration is started.
For example:
oidprovtool operation=disable ldap_host=sys38.doyen.in ldap_port=389 ldap_user_dn=cn=orcladmin ldap_user_password=welcome99 application_dn=orclApplicationCommonName=VIS,cn=EBusiness,cn=Products,cn=OracleContext,dc=doyen,dc=in profile_mode=BOTH
After migration is complete, update the lastchangenumber attribute of the profile:
First, find the current last change number in Oracle Internet Directory with the ldapsearch command:
ldapsearch –h sys38.doyen.in -p welcome99 -D cn=oracladmin -w welcome99 -s base -b "" "objectclass=*" lastchangenumber=2623
Next, use the following command to update the lastchangenumber attribute to the number n that was discovered in the last step:
[oracle@sys38 bin]$ oidprovtool operation=MODIFY ldap_host=sys38.doyen.in ldap_port=389 ldap_user_dn=cn=orcladmin ldap_user_password=welcome99 application_dn=orclApplicationCommonName=VIS,cn=EBusiness,cn=Products,cn=OracleContext,dc=doyen,dc=in orclLastAppliedChangeNumber=2623
The Provisioning Profile for the Application has been modified.
3. Use oidprovtool with operation=ENABLE to enable the profile.
[oracle@sys38 bin]$ oidprovtool operation=enable ldap_host=sys38.doyen.in ldap_port=389 ldap_user_dn=cn=orcladmin ldap_user_password=welcome99 application_dn=orclApplicationCommonName=VIS,cn=EBusiness,cn=Products,cn=OracleContext,dc=doyen,dc=in profile_mode=BOTH
This Provisioning Profile is enabled.
4. The intermediate LDIF file created by AppsUserExport has two variables that an Oracle Internet Directory administrator needs to instantiate using the Oracle Internet Directory ldifmigrator utility:
[oracle@sys38 bin]$ ldifmigrator "input_file=/home/oracle/mig_user/vis01.out" "output_file=data.ldif" "s_UserContainerDN=cn=users,dc=doyen,dc=in" "s_UserNicknameAttribute=uid"
Migration of LDIF data completed. All the entries are successfully migrated
Task 3: Loading Final LDIF file into Oracle Internet Directory
Once the final LDIF file has been generated, the user data is ready to be loaded into Oracle Internet Directory using the Oracle Internet Directory bulkload tool.
Before performing a bulk load:
1. Stop all OID processes before using the bulkload utility to load the LDIF file:
$ORACLE_HOME/opmn/bin/opmnctl stopall
Note the OID password, which should be the same as the instance and orcladmin passwords. You will be prompted for this when running the utility.
2. In case the oidmon or oidctl commands were used to manually start the oid proceses, you must make sure that they have stopped:
On Unix Run: $ORACLE_HOME/ldap/bin/ldapcheck
[oracle@sys38 bin]$ ./ldapcheck
Checking Oracle Internet Directory Processes ...ALL
Not Running ---- Process oidmon
Not Running ---- Process oidldapd
Not Running ---- Process oidrepld
Not Running ---- Process odisrv
No LDAP Processes are Running
3. If any other OID processes such as odisrv are still running, you must stop them manually using:
oidctl connect=test server=oidsrv instance=1 stop
You must ensure that no OID processes are running before continuing with the bulkload.sh command.
1. Run the bulkload utility with the -check and –generate options to verify that there are no duplicate users.
For example:
bulkload.sh –connect
[oracle@sys38 bin]$ ./bulkload.sh -connect "test" -check -generate /home/oracle/orainfra/opmn/bin/data.ldif
Verifying node "test"
-----------------------------
This tool can only be executed if you know database user password
for OiD on test
Enter OiD password ::
------------------------------------------------------------------
Checking Internet Directory current schema state
------------------------------------------------------------------
-------------------------------------------------------------------
Checking and Generating Internet Directory data for bulk loading
-------------------------------------------------------------------
Schema Check Errors are logged in : /home/oracle/orainfra/ldap/log/bulkload.log
Bad Entries are logged in : /home/oracle/orainfra/ldap/load/badentry.ldif
Non-Unique Distinguished Names are logged in : /home/oracle/orainfra/ldap/log/duplicateDN.log
-------------------------------------------------------------------
Data Generated for bulk loading
-------------------------------------------------------------------
Please Remove the errors
[oracle@sys38 bin]$ ./bulkload.sh -connect "test" -check -generate /home/oracle/orainfra/opmn/bin/data.ldif
Verifying node "test"
-----------------------------
This tool can only be executed if you know database user password
for OiD on test
Enter OiD password ::
------------------------------------------------------------------
Checking Internet Directory current schema state
------------------------------------------------------------------
-------------------------------------------------------------------
Checking and Generating Internet Directory data for bulk loading
-------------------------------------------------------------------
No Schema Check Errors.
No Bad Entries found.
No Duplicate DN Entries.
-------------------------------------------------------------------
Data Generated for bulk loading
-------------------------------------------------------------------
2. Check the log file for duplicate users
If you get any Bad Entries and Duplicate DN Entries, Just remove those entries and run again setp 1.
3. If the log file indicates duplicate users, manually remove these users from the LDIF file.
4. Rerun Step 1 to verify all duplicates have been successfully removed.
5. Once all duplicates are removed, run the bulkload utility with the –load option to load the users.
For example:
bulkload.sh –connect
[oracle@sys38 bin]$ ./bulkload.sh -connect "test" -load /home/oracle/orainfra/opmn/bin/data.ldif
Verifying node "test"
-----------------------------
This tool can only be executed if you know database user password
for OiD on test
Enter OiD password ::
It is recommended to use -check option before generating/loading data
Do you want to continue (y/n?) [n]
y
Loading data on : "test"
===============================
------------------------------------------------------------------
Preparing Internet Directory schema for bulk data loading
------------------------------------------------------------------
------------------------------------------------------------------
Initiating bulk load...
------------------------------------------------------------------
Loading Attribute Search Catalogs..
battr_store001..
battr_store002..
battr_store003..
attr_store001..
attr_store002..
attr_store003..
c..
cn..
ctcaladmd..
ctcalcountry..
ctcalhost..
ctcalmobiletelephonetype..
ctcalorganization..
ctcalorgunit1..
ctcalorgunit2..
ctcalorgunit3..
ctcalorgunit4..
ctcalprmd..
ctcalpublishedtype..
ctcalresourcecapacity..
ctcalresourcenumber..
ctcalxitemid..
dc..
description..
employeenumber..
facsimiletelephonenumber..
generationqualifier..
givenname..
homephone..
initials..
krbprincipalname..
labeleduri..
l..
mail..
manager..
member..
middlename..
mobile..
name..
objectclass..
o..
orclaci..
orclcalendarhost..
orclcalendarresourcecapacity..
orclcalendarresourcenumber..
orclcalendarstore..
orclcertificatehash..
orclcertificatematch..
orclcommonkrbprincipalattribute..
orcldasispersonal..
orcldassearchable..
orcldasvalidatepwdreset..
orcldasviewable..
orcldbaqgeneric..
orcldbaqobjname..
orcldbaqobjowner..
orcldbaqobjtype..
orcldbaqpointerattr..
orcldbaqreglocation..
orcldbaqregnamespace..
orcldbaqregrejected..
orcldbaqregservers..
orcldbaqregsubscription..
orcldbaqregunreachable..
orcldbaqreguser..
orcldbdistinguishedname..
orcldbentroleassigned..
orcldbentuser..
orcldbglobalname..
orcldblscolumnname..
orcldblsfullname..
orcldblsgroupparent..
orcldblsnumerictag..
orcldbnativeuser..
orcldbroleoccupant..
orcldbservermember..
orcldbserverrole..
orcldbtargetuser..
orcldbtrusteddomain..
orcldbtrusteduser..
orclentrylevelaci..
orcleventtime..
orcleventtype..
orclglobalid..
orclguid..
orclhostname..
orclipaddress..
orclisenabled..
orclisvisible..
orcljazncodebase..
orcljaznjavaclass..
orcljaznpermissionactions..
orcljaznpermissiontarget..
orcljaznprincipal..
orcljaznrealmisexternal..
orcljaznsigner..
orcljaznsubscriberdn..
orclldapinstanceid..
orclldapprocessid..
orclmailaci..
orclmailaddresscategory..
orclmailemail..
orclmailfolderdn..
orclmailgroupadminmailid..
orclmailgrouphasarchive..
orclmailgroupisexternal..
orclmaillistsuspendedmember..
orclmailnewsfoldercreatetime..
orclmailnntpactivegroup..
orclmailnntplocalgroup..
orclmailnntpmoderatedgroup..
orclmailowner..
orclmailpublicdisplayname..
orclmailrenamedsharedfolder..
orclmailrulescope..
orclmailstore..
orclmailstoredn..
orclmailuserdldn..
orclnethostname..
orclnetservicename..
orclnewsgroupdn..
orclnormdn..
orclobjectguid..
orclodipagentname..
orclodipprofileexecgroupid..
orclodipprofilename..
orclownerguid..
orclrealmname..
orclreplicadn..
orclresourcename..
orclresourcetypename..
orclsamaccountname..
orclsecondaryuid..
orclservicemember..
orclservicesubtype..
orclservicetype..
orclstatus..
orclsuitetype..
orclumattendantextension..
orclumdeviceaddress..
orclumlocale..
orclumnamehash..
orcluserapplnprovstatus..
orcluserdn..
orclwirelessaccountnumber..
ou..
owner..
pager..
personalmobile..
personalpager..
postalcode..
pwdaccountlockedtime..
sn..
st..
street..
targetdn..
telephonenumber..
title..
uid..
uniquemember..
vpimmail..
x509issuer..
Loading Distinguished Name Catalog..
------------------------------------------------------------------
Performing post bulk load processing for Internet Directory schema
------------------------------------------------------------------
------------------------------------------------------------------
Creating Indexes ...
------------------------------------------------------------------
-------------------------------------------------------------
Verifying Index creation ...
-------------------------------------------------------------
All indexes created successfully
-------------------------------------------------------------
Index creation verification Done ...
-------------------------------------------------------------
-------------------------------------------------------------
Altering Index ...
-------------------------------------------------------------
-------------------------------------------------------------
Altering Index Done ...
-------------------------------------------------------------
------------------------------------------------------------------
Generating Database Statistics ...
------------------------------------------------------------------
-------------------------------------------------------------
Done.
-------------------------------------------------------------
Migrating Existing Accounts from Oracle Internet Directory to Oracle E-Business Suite Release 11i
The LDAPUserImport command-line utility takes an LDIF file generated from Oracle Internet Directory, and inserts appropriate data into the E-Business Suite schema. It can be used for bulk migration of existing accounts from Oracle Internet Directory to Oracle E-Business Suite. LDAPUserImport updates both FND and TCA schema.
Task 1: Export Oracle Internet Directory users into LDIF file Using ldifwrite
The Oracle Internet Directory ldifWrite command-line utility is used to create an LDIF file that can be loaded into the E-Business Suite schema via the LDAPUserImport command-line utility.
General Syntax:
ldifwrite –c
Example:
ldifwrite -c test -b "cn=Users,dc=doyen,dc=in" -f output.ldif
[oracle@sys38 bin]$ ldifwrite -c test -b "cn=Users,dc=doyen,dc=in" -f output.ldif
This tool can only be executed if you know database user password for OiD
Enter OiD Password ::
------------------------------------------------------------
Reading entries under BaseDN "cn=users,dc=doyen,dc=in"...
-------------------------------------------------------------
------------------------------------------------------------
1872 Entries are written to "output.ldif".
------------------------------------------------------------
There is no need to modify the output file output.ldif in any way before proceeding with Task 2.
Task 2: Import LDAP Users into Oracle E-Business Suite using LDAPUserImport
The LDAPUserImport tool is invoked from the command line.
1. Ensure the environment is set up properly: $APPL_TOP/java must be in the CLASSPATH environment variable),
2. Invoke the LDAPUserImport tool with the following syntax:
java oracle.apps.fnd.oid.LDAPUserImport \
-v \
-dbc $FND_TOP/secure/myebiz.dbc \
-f users.ldif \
-n uid \
-l users.log
For example:
[applmgr@sys4 VIS_sys4]$ java oracle.apps.fnd.oid.LDAPUserImport -v -dbc /oracle/app/apps/visappl/fnd/11.5.0/secure/VIS_sys4/vis.dbc -f /oracle/app/apps/visappl/fnd/11.5.0/secure/VIS_sys4/output.ldif -n uid -l ouput.log
LDAP user import from /oracle/app/apps/visappl/fnd/11.5.0/secure/VIS_sys4/output.ldif started..
LDAP user import completed sucessfully. For further details refer to log file at ouput.log
DBCONSOLE STATUS PENDING
PROBLEM
========
-- Problem Statement:Enterprise Manager 10g - Database Control monitoring a Infrastructure Database installed with Oracle Application Server shows the database instance in Pending Status
/11i/disco10g/infraas/10.1.0.3/zeus.fti-intra.com_blinfra/sysman/recv/errors
the above path, keep on errors generated
SOLUTION
=========
-- To implement the solution, please execute the following steps::
export ORACLE_HOME=/11i/disco10g/infraas/10.1.0.3
1. Stop the EM Console and DB Control:
$ORACLE_HOME/bin/emctl stop iasconsole$ORACLE_HOME/bin/emctl stop dbconsole
2. Take backup of $ORACLE_HOME/sysman/jlib/emCORE.jar file
cd $ORACLE_HOME/sysman/jlibcp emCORE.jar emCORE.jar.orig
3. Replace the $ORACLE_HOME/sysman/jlib/emCORE.jar file in the 10.1.4.0.1 home with a $ORACLE_HOME/sysman/jlib/emCORE.jar file from a standalone 10.1.0.5.0 database home file.
Download the file from: https://metalink2.oracle.com/cgi-bin/cr/getfile.cgi?p_attid=469050.1:1
4. Remove the log files from $OH/sysman/logs and $OH/sysman/recv/errors directories
5. Make a copy of $ORACLE_HOME/bin/emctl.pl
cd $ORACLE_HOME/bincp emctl.pl emctl.pl.orig
6. Edit $ORACLE_HOME/bin/emctl.pl and change references to 10.1.0.3.0 to 10.1.0.5.0; there are three places that the 10.1.0.3.0 reference must be changed to 10.1.0.5.0 as follows:
Metalink Note Id: 469050.1
========
-- Problem Statement:Enterprise Manager 10g - Database Control monitoring a Infrastructure Database installed with Oracle Application Server shows the database instance in Pending Status
/11i/disco10g/infraas/10.1.0.3/zeus.fti-intra.com_blinfra/sysman/recv/errors
the above path, keep on errors generated
SOLUTION
=========
-- To implement the solution, please execute the following steps::
export ORACLE_HOME=/11i/disco10g/infraas/10.1.0.3
1. Stop the EM Console and DB Control:
$ORACLE_HOME/bin/emctl stop iasconsole$ORACLE_HOME/bin/emctl stop dbconsole
2. Take backup of $ORACLE_HOME/sysman/jlib/emCORE.jar file
cd $ORACLE_HOME/sysman/jlibcp emCORE.jar emCORE.jar.orig
3. Replace the $ORACLE_HOME/sysman/jlib/emCORE.jar file in the 10.1.4.0.1 home with a $ORACLE_HOME/sysman/jlib/emCORE.jar file from a standalone 10.1.0.5.0 database home file.
Download the file from: https://metalink2.oracle.com/cgi-bin/cr/getfile.cgi?p_attid=469050.1:1
4. Remove the log files from $OH/sysman/logs and $OH/sysman/recv/errors directories
5. Make a copy of $ORACLE_HOME/bin/emctl.pl
cd $ORACLE_HOME/bincp emctl.pl emctl.pl.orig
6. Edit $ORACLE_HOME/bin/emctl.pl and change references to 10.1.0.3.0 to 10.1.0.5.0; there are three places that the 10.1.0.3.0 reference must be changed to 10.1.0.5.0 as follows:
Metalink Note Id: 469050.1
output is in pdf format the following error is encountered.
REP-3000: Internal error starting Oracle Toolkit
Xlib: No protocol specified
ERROR ENCOUNTERED :
While Running the report ex :Doyen Ennore Activity Report (Daily) and the output is in pdf format the following error is encountered.
Error in the log file:
Xlib: connection to "dbserv2:0.0" refused by server
Xlib: No protocol specified
Xlib: connection to "dbserv2:0.0" refused by server
Xlib: No protocol specified
REP-3000: Internal error starting Oracle Toolkit.
REP-3000: Internal error starting Oracle Toolkit
Solution:
Enter in to the Node where the Report is Running and can also done in all the nodes
Please check VNC server start or not. If down, start vnc and let try.
STEP 1 : Login as user root.
STEP 2 : export DISPLAY=localhost:0.0
STEP 3 : xhost +
STEP 4 : To Check the Display put the following : echo $DISPLAY
STEP 5 : We can also check by entering in as any other user
Note :Before settting the DISPLAY check the XML file in APPL_TOP/ADMIN and inside the xml file see the parameter DISPLAY = "hostname:0.0" or some thing . this shold be same as when we give echo $DISPLAY
Then try
1. xhost +
2. xclock
Xlib: No protocol specified
ERROR ENCOUNTERED :
While Running the report ex :Doyen Ennore Activity Report (Daily) and the output is in pdf format the following error is encountered.
Error in the log file:
Xlib: connection to "dbserv2:0.0" refused by server
Xlib: No protocol specified
Xlib: connection to "dbserv2:0.0" refused by server
Xlib: No protocol specified
REP-3000: Internal error starting Oracle Toolkit.
REP-3000: Internal error starting Oracle Toolkit
Solution:
Enter in to the Node where the Report is Running and can also done in all the nodes
Please check VNC server start or not. If down, start vnc and let try.
STEP 1 : Login as user root.
STEP 2 : export DISPLAY=localhost:0.0
STEP 3 : xhost +
STEP 4 : To Check the Display put the following : echo $DISPLAY
STEP 5 : We can also check by entering in as any other user
Note :Before settting the DISPLAY check the XML file in APPL_TOP/ADMIN and inside the xml file see the parameter DISPLAY = "hostname:0.0" or some thing . this shold be same as when we give echo $DISPLAY
Then try
1. xhost +
2. xclock
IZU_TOP GONE/LOST AFTER AUTOCONFIG UPGRADE
Txk Rollup Patch S (Patch 6372396) Removes Izu_top From Context File
Solution
If you forget to apply this 7126196 before applying this patch 6372396 or TXK-S.
The IZU_TOP will not be there.
To implement the solution, please execute the following steps:
- Try to apply patch 7126196 before applying patch TXK-S, if TXK-S is already applied then
1. add entry to $APPL_TOP/admin/topfile.txt
izu
2. Apply patch 7126196
Note:
Customers who are planning to apply patch TXK AUTOCONFIG AND TEMPLATES ROLLUP
PATCH S (6372396) and have manually added product tops should apply this patch
(7126196) before applying patch 6372396 to preserve their manually added
product tops.
Solution
If you forget to apply this 7126196 before applying this patch 6372396 or TXK-S.
The IZU_TOP will not be there.
To implement the solution, please execute the following steps:
- Try to apply patch 7126196 before applying patch TXK-S, if TXK-S is already applied then
1. add entry to $APPL_TOP/admin/topfile.txt
izu
2. Apply patch 7126196
Note:
Customers who are planning to apply patch TXK AUTOCONFIG AND TEMPLATES ROLLUP
PATCH S (6372396) and have manually added product tops should apply this patch
(7126196) before applying patch 6372396 to preserve their manually added
product tops.
eulapi -CONNECT EUL_US/EUL_US@upg -AUTO_UPGRADE
Database Error - ORA-02289: sequence does not exist
eulapi -CONNECT EUL_US/EUL_US@upg -AUTO_UPGRADE
-connect <**********>
-auto_upgrade
Database Error - ORA-02289: sequence does not exist
I recommend you to clean up the failed upgraded user because unnecessary object
s might remains.
Drop eul schema and import from your exported backup.
1) drop user eul_us cascade
2) Create eul_us again
3) Asign the access to eul_us (connect access, create table, etc)
4) Import the file you generated using imp command
imp EUL_US/EUL_US file=pre_10g_upgrade_eul_backup.dmp
Also, please consider the following:
Can you please make sure that EULowner in your new database has the following
privileges (before the import of the data from old database):
create procedure
create session
create table
create view
create sequence
grant create procedure, create session, create table, create view, create sequence to EUL_US;
Then run the -AUTPUPGRADE
bash-2.05b$ eulapi -CONNECT EUL_US/EUL_US@upg -AUTO_UPGRADE
-connect <**********>
-auto_upgrade
Command completed.
eulapi -CONNECT EUL_US/EUL_US@upg -AUTO_UPGRADE
-connect <**********>
-auto_upgrade
Database Error - ORA-02289: sequence does not exist
I recommend you to clean up the failed upgraded user because unnecessary object
s might remains.
Drop eul schema and import from your exported backup.
1) drop user eul_us cascade
2) Create eul_us again
3) Asign the access to eul_us (connect access, create table, etc)
4) Import the file you generated using imp command
imp EUL_US/EUL_US file=pre_10g_upgrade_eul_backup.dmp
Also, please consider the following:
Can you please make sure that EULowner in your new database has the following
privileges (before the import of the data from old database):
create procedure
create session
create table
create view
create sequence
grant create procedure, create session, create table, create view, create sequence to EUL_US;
Then run the -AUTPUPGRADE
bash-2.05b$ eulapi -CONNECT EUL_US/EUL_US@upg -AUTO_UPGRADE
-connect <**********>
-auto_upgrade
Command completed.
Discoverer 10g Installation and Migration Plan
Oracle Apps DBA: Discoverer 10g Installation and Migration Plan
http://www.oracle.com/technology/documentation/discoverer.html
http://www.oracle.com/technology/documentation/discoverer.html
How To Setup Web Services Integration with BI Publisher and Discoverer Doc ID: Note:459853.1
Troubleshooting Login Problems in Oracle Applications 11i RDBMS Checks
1. Check the GUEST user information.
a. Run following SQL:
select user_name, start_date, end_date
from fnd_user
where user_name = 'GUEST';
This should return one row, end_date should be NULL or in advance of today's date, and start_date should be before today's date.
b. Validate the GUEST username/password combinations from the DBC file.
Using the GUEST_USER_PWD value in the DBC file (see step 2) run the following sql:
select fnd_web_sec.validate_login('GUEST','') from dual ;
This should return Yes
If this returns N, then do:
select fnd_message.get from dual;
This should give a reason why the validation failed, or an error message.
If this fails with a database error, confirm the problem is not specific to the GUEST user.
Redo the SQL command with a different userid (like sysadmin)
select fnd_web_sec.validate_login('SYSADMIN','') from dual;
Again, this command should return 'Y' if it is working OK.
If not, you should reload the jar files to the database using adadmin.
2. Run the following script to ensure there are no invalid objects:
select owner, object_name, object_type
from all_objects
where status != 'VALID'
order by owner, object_type, object_name;
Ideally, this should return no rows, but some invalid objects may be acceptable, depending on what they are.
3. Check Tablespace free space:
Ensure that the database tablespaces have not run out of room. This can result in '-1' errors and/or 'Session expired' errors if the system cannot add data to the ICX tables. To test that rows can be succesfully inserted, you can run the script below:
REM Start of script
insert into icx_sessions (session_id, user_id, created_by, creation_date,last_updated_by,last_update_date)
values (-99999, -99, -1, sysdate, -1, sysdate)
/
insert into icx_failures (created_by, creation_date,last_updated_by, last_update_date) values (-1, sysdate, -1, sysdate)
/
rollback
/
REM - End of script
Note - ensure these two insert statements are rolled back - you do not want these dummy records saved.
4. Review your Alert.log.
Does the RDBMS alert log show any errors? What are they? Report them in a TAR.
5. Review any database trace files.
cd to the directory specified by user_dump_dest in the init.ora file.&nbttempt at login may create a .trc file
6. Validate the FND_NODES table:
Run the following sql:
select NODE_NAME, NODE_ID , SERVER_ID , SERVER_ADDRESS from FND_NODES;
Each SERVER_ID and NODE_ID should be unique.
The Node Name for all servers involved for the instance should appear here. We typically expect this to be e hostname or virtual hostname (alias), not the IP address. If the servers do not appear, use OAM to register them.
The SERVER_ADDRESS is optional, but if present should reflect the IP of the host. If necessary, update the IP using the system administrator responsibility.
For 11.5.2 – 11.5.9 this should return 56 rows.
For 11.5.10 this should return 131 rows.
(11.5.10+) Note: in 11.5.10 the required plsql patckages can be quickly enabled
using the script: $FND_TOP/patch/sql/txkDisableModPLSQL.sql Y
7. Validate the FND_ENABLED_PLSQL table Run the script in Appendix B. For 11.5.2 – 11.5.9 this should return 56 rows. For 11.5.10 this should return 131 rows. (11.5.10+)
Note: in 11.5.10 the required plsql packages can be quickly enabled using the script: $FND_TOP/patch/sql/txkDisableModPLSQL.sql Y :
8. Validate the 'ICX_SESSIONS_S' synonym
This should be shown as owned by ICX, if not, drop the synonym and run adadmin to regenerate grants and synonyms.
9. Ensure ICX module is showing as an "Installed" module.
Run "adutconf.sql" to check this, particularly important to check if migrating to 11i from previous release of Applications.
10. Validate the ICX_PARAMETERS table.
Run the following SQL:
select count(*) from icx_parameters;
This should only return one row.
11. Check for Bug 3275654
Run the following SQL:
SELECT c.function_id, nvl(b.prompt,c.user_function_name) prompt,c.TYPE,a.menu_id from
fnd_responsibility_vl a,
fnd_menu_entries_vl b,
fnd_form_functions_vl c
where a.responsibility_id=21584
and a.menu_id=b.menu_id
and b.function_id=c.function_id
and c.type in ('WWW','WWK','SERVLET','JSP','FORM','INTEROPJSP');
This should only return one row. If not, apply Patch 3275654
12. Oracle 8i ONLY do the following sql:
select fnd_crypto.SmallRandomNumber from dual;
If this errors with: ORA-28235: algorithm not available
Then make sure you have the file $ORACLE_HOME/lib/naeet.o (7112 bytes) in place.
If not, you need to get the file from a known good source (like another instance or from the CD). Again use the size of the file to validate.
Next relink the Oracle Executables:
cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk install
$ORACLE_HOME/bin/genclntsh.sh
OA Framework Checks
These are only applicable to OA Framework 5.7 and above. (11.5.9+)
13. Disable all personalizations on the homepage
Run the following sql:
set serverout on;
exec jdr_utils.listcustomizations(‘/oracle/apps/fnd/framework/navigate/webui/HomePG’);
If this returns any rows then you have personalizations.
Disable your personalizations by logging into forms directly and setting the profile option:
Disable Self Service Personal = Yes.
Then retest the login.
If the homepage works, you need to remove your “bad” personalization.
See Note 304670.1
14. You can turn on OA Framework diagnostics logging in several ways Please refer to Note 139863.1, section 4 Profile Options Reference for more information, if required. Set the following profile options at USER level for one Applications user. It is important this is setup for one user only. You can launch Core Forms directly to gain access to the profile options, as you may not be able to login if you are reading this note!
Name Value
---------------------------------------------
FND: Debug Log Enabled Yes
FND: Debug Log Filename /tmp/OAF_Debug.txt
FND: Debug Log Module %
FND: Debug Log Level STATEMENT
Login to Applications using the Apps Username you specified above. Any error or problem you experiance will still occur, but the file /tmp/OAF_Debug.txt should be created with some diagnostics information. Please upload this file to Oracle Support for further analysis. After you have created this diagnostics file, you should disable logging by setting the USER level profile option listed below:
Name Value
---------------------------------------------
FND: Debug Log Enabled No
Detailed checks
==============
Note: It is recommended that you have a current backup your system and have no users on the system while performing these checks/tests.
15. Enable detailed logging in iAS
Follow the steps in Appendix C to enable detailed logging for iAS.
Review the logs for errors.
16.Temporarily enable iAS to use symbolic links.
Replace all occurrences of
'Option -FollowSymLinks'
for
'Option +FollowSymLinks'
in
$IAS_ORACLE_HOME/Apache/Apache/conf/httpd.conf
and
$IAS_ORACLE_HOME/Apache/Apache/conf/httpd_pls.conf
and bounce apache. If this is the issue, you should then go back and implement the changes via autoconfig. The value from this is controllable from your Apps Context, see s_options_symlinks .
17. Clear the iAS cache.
To clear the jsp & modplsql caches either rename or delete the sub-directories below following directories and restart apache. This will clear out the compiled JSP classes and cached modplsql modules causing them to be automatically recompiled next time they are accessed.
rm -Rf $OA_HTML/_pages/*
rm -Rf $COMMON_TOP/_pages/*
rm -Rf $IAS_ORACLE_HOME/Apache/modplsql/cache/*
Note: Depending on your configuration and patch level all directories may not exist.
18. Check the sqlnet.ora setup in the database Oracle Home.
Edit the
$ORACLE_HOME/network/admin/sqlnet.ora
Is tcp.validnode_checking enabled (i.e. = yes)? If so, make sure the parameter tcp.invited_nodes contains an entry for all the nodes involved in your configuration. This parameter, in conjunction with tcp.validnode_checking determines which clients can connect to the database.
Or you can temporarily disable node checking by removing the tcp.validnode_checking and retest. This is enabled for security reasons.
19. Modify AppsLocalLogin.jsp to trap exceptions.
If you get java error while using the login page like NoClassDefFound or NullPointerException, we need to trap the context of the message.
Backup and edit your:
$OA_HTML/AppsLocalLogin.jsp.
On the line that reads
} catch(Exception e) {}
Change to:
} catch(Exception e) {
} catch(Throwable t) {
System.err.println("OSS: Caught throwable in AppsLocalLogin.jsp : " +t.toString()); t.printStackTrace();
}
Then bounce Apache and reload the page and more detail should show up in the OACoreGroup.0.stderr file.
< dbc="
20. Check file permissions are not causing any problems.
Check file permissions are appropriate. In particular, the liboci806jdbc.so (.sl on HP, .DLL on NT) shared library should have read, write and execute permissions. It may be advisable to temporarily change all permissions in $JAVA_TOP to read, write and execute to see if it resolves the problem. On UNIX, you can use the command 'chmod -R 777 $JAVA_TOP', assuming $JAVA_TOP has been set correctly in your environment.
21. Regenerate JAVA_TOP:
Ensure you have a full backup of your system! To run this process, run adadmin and select Maintain Applications Files then Copy Files to Destinations.
22. Generate database trace and SQL*Net traces.
To set-up SQL*Net Trace on the Web Server set
TRACE_LEVEL_CLIENT = 16
in the
$TNS_ADMIN/SQLNET.ORA
file. This should be in the iAS file system and not in the 8.0.6. Oracle Home. By default the SQL*Net trace file will be called 'sqlnet.trc'.
a. Run following SQL:
select user_name, start_date, end_date
from fnd_user
where user_name = 'GUEST';
This should return one row, end_date should be NULL or in advance of today's date, and start_date should be before today's date.
b. Validate the GUEST username/password combinations from the DBC file.
Using the GUEST_USER_PWD value in the DBC file (see step 2) run the following sql:
select fnd_web_sec.validate_login('GUEST','
This should return Yes
If this returns N, then do:
select fnd_message.get from dual;
This should give a reason why the validation failed, or an error message.
If this fails with a database error, confirm the problem is not specific to the GUEST user.
Redo the SQL command with a different userid (like sysadmin)
select fnd_web_sec.validate_login('SYSADMIN','
Again, this command should return 'Y' if it is working OK.
If not, you should reload the jar files to the database using adadmin.
2. Run the following script to ensure there are no invalid objects:
select owner, object_name, object_type
from all_objects
where status != 'VALID'
order by owner, object_type, object_name;
Ideally, this should return no rows, but some invalid objects may be acceptable, depending on what they are.
3. Check Tablespace free space:
Ensure that the database tablespaces have not run out of room. This can result in '-1' errors and/or 'Session expired' errors if the system cannot add data to the ICX tables. To test that rows can be succesfully inserted, you can run the script below:
REM Start of script
insert into icx_sessions (session_id, user_id, created_by, creation_date,last_updated_by,last_update_date)
values (-99999, -99, -1, sysdate, -1, sysdate)
/
insert into icx_failures (created_by, creation_date,last_updated_by, last_update_date) values (-1, sysdate, -1, sysdate)
/
rollback
/
REM - End of script
Note - ensure these two insert statements are rolled back - you do not want these dummy records saved.
4. Review your Alert.log.
Does the RDBMS alert log show any errors? What are they? Report them in a TAR.
5. Review any database trace files.
cd to the directory specified by user_dump_dest in the init
6. Validate the FND_NODES table:
Run the following sql:
select NODE_NAME, NODE_ID , SERVER_ID , SERVER_ADDRESS from FND_NODES;
Each SERVER_ID and NODE_ID should be unique.
The Node Name for all servers involved for the instance should appear here. We typically expect this to be e hostname or virtual hostname (alias), not the IP address. If the servers do not appear, use OAM to register them.
The SERVER_ADDRESS is optional, but if present should reflect the IP of the host. If necessary, update the IP using the system administrator responsibility.
For 11.5.2 – 11.5.9 this should return 56 rows.
For 11.5.10 this should return 131 rows.
(11.5.10+) Note: in 11.5.10 the required plsql patckages can be quickly enabled
using the script: $FND_TOP/patch/sql/txkDisableModPLSQL.sql Y
7. Validate the FND_ENABLED_PLSQL table Run the script in Appendix B. For 11.5.2 – 11.5.9 this should return 56 rows. For 11.5.10 this should return 131 rows. (11.5.10+)
Note: in 11.5.10 the required plsql packages can be quickly enabled using the script: $FND_TOP/patch/sql/txkDisableModPLSQL.sql Y :
8. Validate the 'ICX_SESSIONS_S' synonym
This should be shown as owned by ICX, if not, drop the synonym and run adadmin to regenerate grants and synonyms.
9. Ensure ICX module is showing as an "Installed" module.
Run "adutconf.sql" to check this, particularly important to check if migrating to 11i from previous release of Applications.
10. Validate the ICX_PARAMETERS table.
Run the following SQL:
select count(*) from icx_parameters;
This should only return one row.
11. Check for Bug 3275654
Run the following SQL:
SELECT c.function_id, nvl(b.prompt,c.user_function_name) prompt,c.TYPE,a.menu_id from
fnd_responsibility_vl a,
fnd_menu_entries_vl b,
fnd_form_functions_vl c
where a.responsibility_id=21584
and a.menu_id=b.menu_id
and b.function_id=c.function_id
and c.type in ('WWW','WWK','SERVLET','JSP','FORM','INTEROPJSP');
This should only return one row. If not, apply Patch 3275654
12. Oracle 8i ONLY do the following sql:
select fnd_crypto.SmallRandomNumber from dual;
If this errors with: ORA-28235: algorithm not available
Then make sure you have the file $ORACLE_HOME/lib/naeet.o (7112 bytes) in place.
If not, you need to get the file from a known good source (like another instance or from the CD). Again use the size of the file to validate.
Next relink the Oracle Executables:
cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk install
$ORACLE_HOME/bin/genclntsh.sh
OA Framework Checks
These are only applicable to OA Framework 5.7 and above. (11.5.9+)
13. Disable all personalizations on the homepage
Run the following sql:
set serverout on;
exec jdr_utils.listcustomizations(‘/oracle/apps/fnd/framework/navigate/webui/HomePG’);
If this returns any rows then you have personalizations.
Disable your personalizations by logging into forms directly and setting the profile option:
Disable Self Service Personal = Yes.
Then retest the login.
If the homepage works, you need to remove your “bad” personalization.
See Note 304670.1
14. You can turn on OA Framework diagnostics logging in several ways Please refer to Note 139863.1, section 4 Profile Options Reference for more information, if required. Set the following profile options at USER level for one Applications user. It is important this is setup for one user only. You can launch Core Forms directly to gain access to the profile options, as you may not be able to login if you are reading this note!
Name Value
---------------------------------------------
FND: Debug Log Enabled Yes
FND: Debug Log Filename /tmp/OAF_Debug.txt
FND: Debug Log Module %
FND: Debug Log Level STATEMENT
Login to Applications using the Apps Username you specified above. Any error or problem you experiance will still occur, but the file /tmp/OAF_Debug.txt should be created with some diagnostics information. Please upload this file to Oracle Support for further analysis. After you have created this diagnostics file, you should disable logging by setting the USER level profile option listed below:
Name Value
---------------------------------------------
FND: Debug Log Enabled No
Detailed checks
==============
Note: It is recommended that you have a current backup your system and have no users on the system while performing these checks/tests.
15. Enable detailed logging in iAS
Follow the steps in Appendix C to enable detailed logging for iAS.
Review the logs for errors.
16.Temporarily enable iAS to use symbolic links.
Replace all occurrences of
'Option -FollowSymLinks'
for
'Option +FollowSymLinks'
in
$IAS_ORACLE_HOME/Apache/Apache/conf/httpd.conf
and
$IAS_ORACLE_HOME/Apache/Apache/conf/httpd_pls.conf
and bounce apache. If this is the issue, you should then go back and implement the changes via autoconfig. The value from this is controllable from your Apps Context, see s_options_symlinks .
17. Clear the iAS cache.
To clear the jsp & modplsql caches either rename or delete the sub-directories below following directories and restart apache. This will clear out the compiled JSP classes and cached modplsql modules causing them to be automatically recompiled next time they are accessed.
rm -Rf $OA_HTML/_pages/*
rm -Rf $COMMON_TOP/_pages/*
rm -Rf $IAS_ORACLE_HOME/Apache/modplsql/cache/*
Note: Depending on your configuration and patch level all directories may not exist.
18. Check the sqlnet.ora setup in the database Oracle Home.
Edit the
$ORACLE_HOME/network/admin
Is tcp.validnode_checking enabled (i.e. = yes)? If so, make sure the parameter tcp.invited_nodes contains an entry for all the nodes involved in your configuration. This parameter, in conjunction with tcp.validnode_checking determines which clients can connect to the database.
Or you can temporarily disable node checking by removing the tcp.validnode_checking and retest. This is enabled for security reasons.
19. Modify AppsLocalLogin.jsp to trap exceptions.
If you get java error while using the login page like NoClassDefFound or NullPointerException, we need to trap the context of the message.
Backup and edit your:
$OA_HTML/AppsLocalLogin.jsp.
On the line that reads
} catch(Exception e) {}
Change to:
} catch(Exception e) {
} catch(Throwable t) {
System.err.println("OSS: Caught throwable in AppsLocalLogin.jsp : " +t.toString()); t.printStackTrace();
}
Then bounce Apache and reload the page and more detail should show up in the OACoreGroup.0.stderr file.
< dbc="
20. Check file permissions are not causing any problems.
Check file permissions are appropriate. In particular, the liboci806jdbc.so (.sl on HP, .DLL on NT) shared library should have read, write and execute permissions. It may be advisable to temporarily change all permissions in $JAVA_TOP to read, write and execute to see if it resolves the problem. On UNIX, you can use the command 'chmod -R 777 $JAVA_TOP', assuming $JAVA_TOP has been set correctly in your environment.
21. Regenerate JAVA_TOP:
Ensure you have a full backup of your system! To run this process, run adadmin and select Maintain Applications Files then Copy Files to Destinations.
22. Generate database trace and SQL*Net traces.
To set-up SQL*Net Trace on the Web Server set
TRACE_LEVEL_CLIENT = 16
in the
$TNS_ADMIN/SQLNET.ORA
file. This should be in the iAS file system and not in the 8.0.6. Oracle Home. By default the SQL*Net trace file will be called 'sqlnet.trc'.
Troubleshooting Login Problems IAS Checks
You can check your version by doing:
$IAS_ORACLE_HOME/Apache/Apache/bin/httpd –version
1. Validate TNS Connectivity
a. Make sure you can TNSPING and sqlplus the database alias used from the APPL_TOP (i.e. After running APPSORA.env). Do:
tnsping [sid]
sqlplus appsun/appspw
sqlplus appsun/appspw@[sid]
Also, validate that APPLSYSPUB/PUB can connect
b. Change to the $IAS_ORACLE_HOME, run the [sid]_[host].env file.
This will set the $ORACLE_HOME to be iAS.
Now check that you can TNSPING and sqlplus the database alias.
2. Determine the DBC file in use and make sure it is valid:
a. (11.5.9+) Run the profile option query provided in Appendix A when prompted for profile_option_name enter: APPS_DATABASE_ID.
If this returns a value, then this is the DBC file name that Apps is expecting to use.
Otherwise do:
select host_name'_'instance_name from v$instance;
b. Validate the OS location & permissions of the dbc file. Do:
ls –al $FND_SECURE/*.dbc (11.5.10+).
If $FND_SECURE is not set, then the dbc filebr> This should return the value from step 1ad.
The permissions on the file should be 644 and it should be owned my the “applmgr” user.
c. Verify the contents of the dbc file with the AdminAppServer utility. Do:
java oracle.apps.fnd.security.AdminAppServer appsun/appspw STATUS DBC=[path to dbc $FND_SECURE]/[dbc_name].dbc
This should return STATUS: VALID and the current status of AUTHENTICATION: [SECURE/ON/OFF/null] among other values.
d. Validate the autoconfig context file (11.5.8+) uses the correct dbc file.
Your context file is located in $APPL_TOP/admin and is typically named [SID]_[host].xml. Review the value for s_dbc_file_name, it should match the dbc just tested in 1c.
If any of this errors you should run autoconfig and/or $COMMON_TOP/admin/install/adgendbc.sh appsus appspw and retest (this will require iAS restart)
3. Is the web server running and able to render static html?
a. Are you able to access the page:
http://:/aplogon.html
b. If not, then do:
ps –fu [applmgr] grep http
(or ps –fu [applmgr] grep http wc –l )
This should return at least 5 http processes running … otherwise you webserver may not be started…Make sure you are using the Oracle provided start script in:
$COMMON_TOP/admin/scripts/[SID]_[host]
If these tests fail you need to review your iAS installation and/or log a TAR.
4. (11.5.2-11.5.9) Check that the CGI environment and mod_plsql is functioning
a. Run the following URL:
http://:/pls//FND_WEB.PING
If you are unable to run the procedure below because of an 'internal error' or a 'cannot find host' or a similar error, then it could indicate that there is a problem with the PLSQL Configuration. Failures here may indicate problems with mod_plsql…Follow Note 116715.1 - How to Enable Logging for the PL/SQL Gateway. Redo the test and log a tar with the logs attached.
Or this may be a result of a RDBMS issue (For example - invalid packages, rdbms crashed)…See RDBMS section below.
b. Validate the APPS password used by the plsql gateway.
The password may be stored as clear text as a parameter (password= APPSpw) in
$IAS_ORACLE_HOME/Apache/modplsql/cfg/wdbsvr.app
If the password is encrypted in the file, update the parameter:
administrators = system
to be
administrators = all
Then navigate to:
http://:/pls//admin_/
Select the Gateway Database Access Descriptor Settings link
Select the Edit icon next to the Database Access Descriptor Name which matches your SID
Make sure the Oracle User Name = APPS
Enter the Apps user password in the Oracle Password field.
Make sure the Oracle Connect String is the SID for the instance.
If you made any changes here you will have to review your autoconfig context file to make sure the changes are permanent.
(11.5.10) After validating the above items, you may still get 'Forbidden - You don't have permission to access /pls//fnd_web.ping' on this server.” This may be by design for enhanced security. Please skip to the next test.
5. Ensure that JDK is installed correctly & is a certified version.
a. Get the value of wrapper.bin in:
$iAS_ORACLE_HOME/Apache/Jserv/etc
This will either point directly to the java executable in use or to $iAS_ORACLE_HOME/Apache/Apache/bin/java.sh.
If this points to the java.sh go to step 5b…otherwise skip to step 5c.
b.Open the java.sh File under $iAS_ORACLE_HOME/Apache/Apache/bin. In this file and you will find path to java executable in variable "JSERVJAVA"
c. Use the absolute path to the java executable and do:
/absolute/path/to/java –version
e. Check that the version returned is certified by using the certify website on Metalink.
Assuming this returns a supported version of JDK. Use the following notes to validate your JDK installation (i.e. that all required patches, autoconfig templates, etc have been completed):
Note 304099.1 => if using J2SE Version 5.0
Or
Note 246105.1 => if using J2SE 1.4
OR
Note 130091.1 => if using JDK 1.3
6. Use the following programs to verify the installation and check that the servlets are functioning.
a. http(s)://:/servlets/IsItWorking
(11.5.10) This may fail with:
Forbidden You don't have permission to access /servlets/IsItWorking on this server.
This is due to enhanced security delivered with the autoconfig templates.
Please try test 4b instead.
b.http(s)://:/servlets/Hello
If this one fails, this indicates an issue with your Jserv set-up. You then need to follow Note 230688.1 to drill down into this problem.
7. Validate that jsp work.
a. http(s)://:/OA_HTML/jsp/fnd/aoljtest.jsp
If this one fails to render, this indicates an issue with your Jserv set-up. You then need to follow Note 230688.1 to drill down into this problem.Otherwise you enter the values requested, and follow the link at the bottom of the first page to run through this set of diagnostic tests. Report all tests that fail in a TAR.
Note: The initial page of this test may show some "missing" files.
Depending on your configuration the following missing files are acceptable:
apps.zip (is normal to be missing since it has been exploded on $JAVA_TOP (ref : Note 220188.1 ))
iAS/mp/jlib/opreopi-rt.jar (Used for Oracle Personalization. Can be ignored if you are not using MP.)
iAS/mp/jlib/dmtutil.jar (Used for Data Mining)
iAS/dm/jlib/odmapi.jar (Used for Data Mining - If you are using Data Mining, and these are listed as missing, please see Note 281739.1 )
iAS/portal30/jpdk/lib/partnerApp.jar (If you are not using Portal, this can be ignored.)
8. Check the "session.topleveldomain" setting in the
$IAS_ORACLE_HOME/Apache/Jserv/etc/zone.properties
This should match the domain you are using as defined in the SESSION_COOKIE_DOMAIN column in ICX_PARAMETERS table.
From sqlplus do:
select SESSION_COOKIE_DOMAIN from ICX_PARAMETERS;
Notes: It is acceptable to have SESSION_COOKIE_DOMAIN set to null
You MUST have a valid domain that is composed of 2 or more components (see Bug 2510732). I.e: .oracle is an INVALID domain, but .oracle.com IS a valid domain.
$IAS_ORACLE_HOME/Apache/Apache/bin/httpd –version
1. Validate TNS Connectivity
a. Make sure you can TNSPING and sqlplus the database alias used from the APPL_TOP (i.e. After running APPSORA.env). Do:
tnsping [sid]
sqlplus appsun/appspw
sqlplus appsun/appspw@[sid]
Also, validate that APPLSYSPUB/PUB can connect
b. Change to the $IAS_ORACLE_HOME, run the [sid]_[host].env file.
This will set the $ORACLE_HOME to be iAS.
Now check that you can TNSPING and sqlplus the database alias.
2. Determine the DBC file in use and make sure it is valid:
a. (11.5.9+) Run the profile option query provided in Appendix A when prompted for profile_option_name enter: APPS_DATABASE_ID.
If this returns a value, then this is the DBC file name that Apps is expecting to use.
Otherwise do:
select host_name'_'instance_name from v$instance;
b. Validate the OS location & permissions of the dbc file. Do:
ls –al $FND_SECURE/*.dbc (11.5.10+).
If $FND_SECURE is not set, then the dbc filebr> This should return the value from step 1ad.
The permissions on the file should be 644 and it should be owned my the “applmgr” user.
c. Verify the contents of the dbc file with the AdminAppServer utility. Do:
java oracle.apps.fnd.security.AdminAppServer appsun/appspw STATUS DBC=[path to dbc $FND_SECURE]/[dbc_name].dbc
This should return STATUS: VALID and the current status of AUTHENTICATION: [SECURE/ON/OFF/null] among other values.
d. Validate the autoconfig context file (11.5.8+) uses the correct dbc file.
Your context file is located in $APPL_TOP/admin and is typically named [SID]_[host].xml. Review the value for s_dbc_file_name, it should match the dbc just tested in 1c.
If any of this errors you should run autoconfig and/or $COMMON_TOP/admin/install/adgendbc.sh appsus appspw and retest (this will require iAS restart)
3. Is the web server running and able to render static html?
a. Are you able to access the page:
http://
b. If not, then do:
ps –fu [applmgr] grep http
(or ps –fu [applmgr] grep http wc –l )
This should return at least 5 http processes running … otherwise you webserver may not be started…Make sure you are using the Oracle provided start script in:
$COMMON_TOP/admin/scripts/[SID]_[host]
If these tests fail you need to review your iAS installation and/or log a TAR.
4. (11.5.2-11.5.9) Check that the CGI environment and mod_plsql is functioning
a. Run the following URL:
http://
If you are unable to run the procedure below because of an 'internal error' or a 'cannot find host' or a similar error, then it could indicate that there is a problem with the PLSQL Configuration. Failures here may indicate problems with mod_plsql…Follow Note 116715.1 - How to Enable Logging for the PL/SQL Gateway. Redo the test and log a tar with the logs attached.
Or this may be a result of a RDBMS issue (For example - invalid packages, rdbms crashed)…See RDBMS section below.
b. Validate the APPS password used by the plsql gateway.
The password may be stored as clear text as a parameter (password= APPSpw) in
$IAS_ORACLE_HOME/Apache/modplsql/cfg/wdbsvr.app
If the password is encrypted in the file, update the parameter:
administrators = system
to be
administrators = all
Then navigate to:
http://
Select the Gateway Database Access Descriptor Settings link
Select the Edit icon next to the Database Access Descriptor Name which matches your SID
Make sure the Oracle User Name = APPS
Enter the Apps user password in the Oracle Password field.
Make sure the Oracle Connect String is the SID for the instance.
If you made any changes here you will have to review your autoconfig context file to make sure the changes are permanent.
(11.5.10) After validating the above items, you may still get 'Forbidden - You don't have permission to access /pls/
5. Ensure that JDK is installed correctly & is a certified version.
a. Get the value of wrapper.bin in:
$iAS_ORACLE_HOME/Apache/Jserv/etc
This will either point directly to the java executable in use or to $iAS_ORACLE_HOME/Apache/Apache/bin/java.sh.
If this points to the java.sh go to step 5b…otherwise skip to step 5c.
b.Open the java.sh File under $iAS_ORACLE_HOME/Apache/Apache/bin. In this file and you will find path to java executable in variable "JSERVJAVA"
c. Use the absolute path to the java executable and do:
/absolute/path/to/java –version
e. Check that the version returned is certified by using the certify website on Metalink.
Assuming this returns a supported version of JDK. Use the following notes to validate your JDK installation (i.e. that all required patches, autoconfig templates, etc have been completed):
Note 304099.1 => if using J2SE Version 5.0
Or
Note 246105.1 => if using J2SE 1.4
OR
Note 130091.1 => if using JDK 1.3
6. Use the following programs to verify the installation and check that the servlets are functioning.
a. http(s)://
(11.5.10) This may fail with:
Forbidden You don't have permission to access /servlets/IsItWorking on this server.
This is due to enhanced security delivered with the autoconfig templates.
Please try test 4b instead.
b.http(s)://
If this one fails, this indicates an issue with your Jserv set-up. You then need to follow Note 230688.1 to drill down into this problem.
7. Validate that jsp work.
a. http(s)://
If this one fails to render, this indicates an issue with your Jserv set-up. You then need to follow Note 230688.1 to drill down into this problem.Otherwise you enter the values requested, and follow the link at the bottom of the first page to run through this set of diagnostic tests. Report all tests that fail in a TAR.
Note: The initial page of this test may show some "missing" files.
Depending on your configuration the following missing files are acceptable:
apps.zip (is normal to be missing since it has been exploded on $JAVA_TOP (ref : Note 220188.1 ))
iAS/mp/jlib/opreopi-rt.jar (Used for Oracle Personalization. Can be ignored if you are not using MP.)
iAS/mp/jlib/dmtutil.jar (Used for Data Mining)
iAS/dm/jlib/odmapi.jar (Used for Data Mining - If you are using Data Mining, and these are listed as missing, please see Note 281739.1 )
iAS/portal30/jpdk/lib/partnerApp.jar (If you are not using Portal, this can be ignored.)
8. Check the "session.topleveldomain" setting in the
$IAS_ORACLE_HOME/Apache/Jserv/etc/zone.properties
This should match the domain you are using as defined in the SESSION_COOKIE_DOMAIN column in ICX_PARAMETERS table.
From sqlplus do:
select SESSION_COOKIE_DOMAIN from ICX_PARAMETERS;
Notes: It is acceptable to have SESSION_COOKIE_DOMAIN set to null
You MUST have a valid domain that is composed of 2 or more components (see Bug 2510732). I.e: .oracle is an INVALID domain, but .oracle.com IS a valid domain.
Subscribe to:
Posts (Atom)