Thursday, October 23, 2008

Troubleshooting Login Problems in Oracle Applications 11i RDBMS Checks

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.
Posted by Ramesh Mani 0 comments Links to this post
Labels: Application Server 10g(10g AS)
Oracle Apps DBA: Discoverer 10g Installation and Migration Plan
Oracle Apps DBA: Discoverer 10g Installation and Migration Plan
Posted by Ramesh Mani 0 comments Links to this post
Labels: Application Server 10g(10g AS)
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'.
Posted by Ramesh Mani 0 comments Links to this post
Labels: Trouble Shooting for Ebiz
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.
Posted by Ramesh Mani 0 comments Links to this post
Labels: Trouble Shooting for Ebiz
adaimgr AutoUpgrade
After 8i to 9i Migration, The steps to be followed.

************* Start of AutoUpgrade session *************

AutoUpgrade version: 11.5.0
AutoUpgrade started at: Thu Apr 10 2008 09:53:09

APPL_TOP is set to /u01/11i/uat/applmgr/uatappl

NLS_LANG value from the environment is : American_America.WE8ISO8859P1
NLS_LANG value for this AD utility run is : AMERICAN_AMERICA.WE8ISO8859P1

It is critical that your Oracle Applications, RDBMS and related tools are
compatible and certified combinations. If you are uncertain whether a
combination is certified please contact Oracle Support Services.

Are you certain you are running a certified release combination [No] ? Yes

You can be notified by email if a failure occurs.
Do you wish to activate this feature [No] ? No

Please enter the batchsize [1000] : 1000


Please enter the name of the Oracle Applications System that this
APPL_TOP belongs to.

The Applications System name must be unique across all Oracle
Applications Systems at your site, must be from 1 to 30 characters
long, may only contain alphanumeric and underscore characters,
and must start with a letter.

Sample Applications System names are: "prod", "test", "demo" and
"Development_2".

Applications System Name [uat] : uat_zeus


NOTE: If you do not have or choose not to have certain types of files installed
in this APPL_TOP, you may not be able to perform certain tasks.

Example 1: If you don't have files used for installing or upgrading
the database installed in this area, you cannot install or upgrade
the database from this APPL_TOP.

Example 2: If you don't have forms files installed in this area, you cannot
generate them or run them from this APPL_TOP.

Example 3: If you don't have concurrent program files installed in this area,
you cannot relink concurrent programs or generate reports from this APPL_TOP.


Do you currently have or want to install files used for installing or upgrading
the database in this APPL_TOP [YES] ? YES


Do you currently have or want to install Java and HTML files for HTML-based
functionality in this APPL_TOP [YES] ? YES


Do you currently have or want to install Oracle Applications forms files
in this APPL_TOP [YES] ? YES


Do you currently have or want to install concurrent program files
in this APPL_TOP [YES] ? YES


Please enter the name Oracle Applications will use to identify this APPL_TOP.

The APPL_TOP name you select must be unique within an Oracle Applications
System, must be from 1 to 30 characters long, may only contain
alphanumeric and underscore characters, and must start with a letter.

Sample APPL_TOP Names are: "prod_all", "demo3_forms2", and "forms1".

APPL_TOP Name [zeus] : uat_zeus_appltop

You are about to install or upgrade Oracle Applications product tables
in your ORACLE database 'uat'
using ORACLE executables in '/u01/11i/uat/applmgr/uatora/8.0.6'.

Is this the correct database [Yes] ? Yes

AutoUpgrade needs the password for your 'SYSTEM' ORACLE schema
in order to determine your installation configuration.

Enter the password for your 'SYSTEM' ORACLE schema: *****


Connecting to SYSTEM......Connected successfully.

There exists one FND_PRODUCT_INSTALLATIONS table.
AutoUpgrade will upgrade the existing product group.

The ORACLE username specified below for Application Object Library
uniquely identifies your existing product group: APPLSYS

Enter the ORACLE password of Application Object Library [APPS] : *****

AutoUpgrade is verifying your username/password.
Connecting to APPLSYS......Connected successfully.

The status of various features in this run of AutoUpgrade is:

<-Feature version in->
Feature Active? APPLTOP Data model Flags
------------------------------ ------- -------- ----------- -----------
CHECKFILE No 1 -1 Y N N Y N N
PREREQ No 6 -1 Y N N Y N N
CONCURRENT_SESSIONS No 2 -1 Y Y N Y Y N
PATCH_TIMING No 2 -1 Y N N Y N N
PATCH_HIST_IN_DB No 6 -1 Y N N Y N N
SCHEMA_SWAP No 1 -1 Y N N Y Y N



Connecting to SYSTEM......Connected successfully.

Connecting to APPLSYS......Connected successfully.

Identifier for the current session is 1

Reading product information from file...

Reading language and territory information from file...

Reading language information from applUS.txt ...

Reading database to see what industry is currently installed.


Oracle Applications is currently installed for Commercial or for-profit use.

Do you wish to:
1) Continue to use Oracle Applications for Commercial or for-profit use.
2) Convert Oracle Applications to government, education or
not-for-profit use

Enter your choice [1] : 1


Reading FND_LANGUAGES to see what is currently installed.
Currently, the following languages are installed:

Code Language Status
---- --------------------------------------- ---------
US American English Base
ESA Latin American Spanish Install

Reading language information from applESA.txt ...

Your base language will be AMERICAN.

Your other languages to install are: LATIN AMERICAN SPANISH

Setting up module information.
Reading database for information about the modules.
Saving module information.
Reading database for information about the products.
Connecting to SYSTEM......Connected successfully.

Connecting to APPLSYS......Connected successfully.

Connecting to SYSTEM......Connected successfully.

Reading database for information about how products depend on each other.
Connecting to APPLSYS......Connected successfully.

Reading topfile.txt ...

Saving product information.
Connecting to SYSTEM......Connected successfully.

Connecting to APPLSYS......Connected successfully.

Connecting to APPS......Connected successfully.

Connecting to SYSTEM......Connected successfully.

Saving task information.

AutoUpgrade Main Menu
--------------------------------------------------

1. Choose database parameters

2. Choose overall tasks and their parameters

3. Run the selected tasks

4. Exit AutoUpgrade

* Please use License Manager to license additional
* products or modules after the upgrade is complete.


Enter your choice : 1

AutoUpgrade - Choose database parameters

- O - - S - --- M --- --- I --- --- D ---
Product Action ORACLE Sizing Main Index Default
# Name User ID Factor Tablespace Tablespace Tablespace
-- ---------------------- - ------- ------ ---------- ---------- ----------
1 Application Object Lib U APPLSYS 100 AOLD AOLX AOLD
2 Application Utilities U APPLSYS 0 AOLD AOLX AOLD
3 Applications DBA U APPLSYS 0 AOLD AOLX AOLD
4 Alert U APPLSYS 100 AOLD AOLX AOLD
5 Global Accounting Engi I AX 100 AXD AXX AXD
6 Common Modules-AK I AK 100 AKD AKX AKD
7 Subledger Accounting S XLA 100 XLAD XLAX XLAD
8 General Ledger U GL 100 GLD GLX GLD

There are 209 Oracle Applications. Enter U/D to scroll up/down.

Note: This will display all the tablespace

- To change a database parameter for a product;
INCLUDE the LETTER ABOVE the COLUMN you want to change
U / D / T / B - Press up/down/top/bottom to see other products
[Return] - To return to the AutoUpgrade Main Menu

Enter your choice (for example, 1M) :

AutoUpgrade error:

APPLSYSD
APPLSYSX

The above tablespaces do not exist in your database.
Please either create the missing tablespaces or change your
tablespace selection to exclude these tablespaces.

Review the messages above, then press [Return] to continue.

AutoUpgrade - Choose database parameters

- O - - S - --- M --- --- I --- --- D ---
Product Action ORACLE Sizing Main Index Default
# Name User ID Factor Tablespace Tablespace Tablespace
-- ---------------------- - ------- ------ ---------- ---------- ----------
39 Applications Shared Te S APPLSYS 100 APPLSYSD APPLSYSX AOLD
40 Enterprise Asset Manag EAM 100 EAMD EAMX EAMD
41 Transportation Executi FTE 100 FTED FTEX FTED
42 Public Sector Financia IGI 100 IGID IGIX IGID
43 Internet Procurement E ITG 100 ITGD ITGX ITGD
44 Inventory Optimization MSR 100 MSRD MSRX MSRD
45 Product Development IPD 100 IPDD IPDX IPDD
46 Product Development In ENI 100 ENID ENIX ENID

There are 209 Oracle Applications. Enter U/D to scroll up/down.


- To change a database parameter for a product;
INCLUDE the LETTER ABOVE the COLUMN you want to change
U / D / T / B - Press up/down/top/bottom to see other products
[Return] - To return to the AutoUpgrade Main Menu

Enter your choice (for example, 1M) : 39M

Enter the ORACLE tablespace name where you wish to store
Applications Shared Technology tables in ORACLE username APPLSYS [APPLSYSD] : AOLD

Connecting to APPLSYS......Connected successfully.

AutoUpgrade - Choose database parameters

- O - - S - --- M --- --- I --- --- D ---
Product Action ORACLE Sizing Main Index Default
# Name User ID Factor Tablespace Tablespace Tablespace
-- ---------------------- - ------- ------ ---------- ---------- ----------
33 Report Manager FRM 100 FRMD FRMX FRMD
34 Activity Based Managem ABM 100 ABMD ABMX ABMD
35 Balanced Scorecard BSC 100 BSCD BSCX BSCD
36 SEM Exchange EAA 100 EAAD EAAX EAAD
37 Value Based Management EVM 100 EVMD EVMX EVMD
38 Strategic Enterprise M FEM 100 FEMD FEMX FEMD
39 Applications Shared Te S APPLSYS 100 AOLD APPLSYSX AOLD
40 Enterprise Asset Manag EAM 100 EAMD EAMX EAMD

There are 209 Oracle Applications. Enter U/D to scroll up/down.


- To change a database parameter for a product;
INCLUDE the LETTER ABOVE the COLUMN you want to change
U / D / T / B - Press up/down/top/bottom to see other products
[Return] - To return to the AutoUpgrade Main Menu

Enter your choice (for example, 1M) : 39I

Enter the ORACLE tablespace name where you wish to store
Applications Shared Technology indexes in ORACLE username APPLSYS [APPLSYSX] : AOLX

Connecting to SYSTEM......Connected successfully.

Connecting to APPLSYS......Connected successfully.

AutoUpgrade - Choose database parameters

- O - - S - --- M --- --- I --- --- D ---
Product Action ORACLE Sizing Main Index Default
# Name User ID Factor Tablespace Tablespace Tablespace
-- ---------------------- - ------- ------ ---------- ---------- ----------
33 Report Manager FRM 100 FRMD FRMX FRMD
34 Activity Based Managem ABM 100 ABMD ABMX ABMD
35 Balanced Scorecard BSC 100 BSCD BSCX BSCD
36 SEM Exchange EAA 100 EAAD EAAX EAAD
37 Value Based Management EVM 100 EVMD EVMX EVMD
38 Strategic Enterprise M FEM 100 FEMD FEMX FEMD
39 Applications Shared Te S APPLSYS 100 AOLD AOLX AOLD
40 Enterprise Asset Manag EAM 100 EAMD EAMX EAMD

There are 209 Oracle Applications. Enter U/D to scroll up/down.


- To change a database parameter for a product;
INCLUDE the LETTER ABOVE the COLUMN you want to change
U / D / T / B - Press up/down/top/bottom to see other products
[Return] - To return to the AutoUpgrade Main Menu

Enter your choice (for example, 1M) :

Connecting to SYSTEM......Connected successfully.

Saving your choices...
Done.

Backing up restart files, if any......Done.


AutoUpgrade Main Menu
--------------------------------------------------

1. Choose database parameters

2. Choose overall tasks and their parameters

3. Run the selected tasks

4. Exit AutoUpgrade

* Please use License Manager to license additional
* products or modules after the upgrade is complete.


Enter your choice : 2

AutoUpgrade - Choose overall tasks and their parameters

# Task Do it? Parameters
-- ------------------------------------------ ------ --------------------
1 Verify files necessary for upgrade YES
2 Install or upgrade database objects YES


There are 2 tasks. Enter U/D to scroll up/down.

- To change YES to NO or NO to YES
(You cannot change a task marked with a *)
P - To change the parameters of a task
U / D - To page up/down to see other tasks
[Return] - To return to the AutoUpgrade Main Menu

Enter your choice (for example 2 or 2P) :

Saving your choices...
Done.

Backing up restart files, if any......Done.


AutoUpgrade Main Menu
--------------------------------------------------

1. Choose database parameters

2. Choose overall tasks and their parameters

3. Run the selected tasks

4. Exit AutoUpgrade

* Please use License Manager to license additional
* products or modules after the upgrade is complete.

Enter your choice : 3

Connecting to APPLSYS......Connected successfully.

Connecting to SYSTEM......Connected successfully.

Connecting to APPS......Connected successfully.


AD utilities can support a maximum of 999 workers. Your
current database configuration supports a maximum of 992 workers.
Oracle recommends that you use between 24 and 48 workers.


Enter the number of workers [24] : 24

Now process will start

Tuesday, September 9, 2008

Developer 6i Patch Set 19 upgrade with EBS 11i

It has been more than two years since the last Developer 6i patchset 18 was certified with Oracle E-Business Suite Release 11i, and now, Developer 6i patchset 19 (6.0.8.28) is certified with Oracle Apps 11i.

Actually, since we migrated from Jinitiator to Java JRE 1.6, we've encountered some frustrating mouse focus issues, I really hope they were fixed with this patch and won't appear after upgrade.

Like with the last patch set, I'll bring you "step-by-step" upgrade instructions for linux deployments.
Other Operation Systems's need another patches - see Note 125767.1 - Upgrading Developer 6i with Oracle Applications 11i.

*** All patches must be installed on all Application tier nodes

1. Stop all application processes by adstpall.sh

2. Apply the latest certified Developer 6i patch set 19 (6194129)
- Source applications environment (e.g source .../testappl/APPSORA.env)
- Verify that $ORACLE_HOME is the 806_ORACLE_HOME
- Execute with applmgr user
$ unzip p6194129_60828_LINUX.zip
$ cd developer6i_patch19
$ ./patch_install.sh 2>&1 | tee patch_install_p19.log

- Check patch_install_p19.log for any errors
- Execute the following to relink Procedure Builder, Forms, Graphics and Reports
$ cd $ORACLE_HOME/procbuilder60/lib; make -f ins_procbuilder.mk install
$ cd $ORACLE_HOME/forms60/lib; make -f ins_forms60w.mk install
$ cd $ORACLE_HOME/graphics60/lib; make -f ins_graphics60w.mk install
$ cd $ORACLE_HOME/reports60/lib; make -f ins_reports60w.mk install

3. Apply patch 7156414
- Unzip patch file
$ unzip p7156414_60828_GENERIC.zip

- Backup old files
$ cp -r $ORACLE_HOME/forms60/java/oracle/forms/handler/UICommon.class $ORACLE_HOME/forms60/java/oracle/forms/
handler/UICommon.class.PRE_BUG7156414
$ cp -r $ORACLE_HOME/forms60/java/oracle/forms/handler/ComponentItem.class $ORACLE_HOME/forms60/java/oracle/forms/
handler/ComponentItem.class.PRE_BUG7156414
$ cp -r $ORACLE_HOME/forms60/java/oracle/forms/handler/BlockScroller.class $ORACLE_HOME/forms60/java/oracle/forms/
handler/BlockScroller.class.PRE_BUG7156414
$ cp -r $ORACLE_HOME/forms60/java/oracle/forms/handler/FormCanvas.class $ORACLE_HOME/forms60/java/oracle/forms/
handler/FormCanvas.class.PRE_BUG7156414
$ cp -r $ORACLE_HOME/forms60/java/oracle/forms/handler/FormWindow.class $ORACLE_HOME/forms60/java/oracle/forms/
handler/FormWindow.class.PRE_BUG7156414
$ cp -r $ORACLE_HOME/forms60/java/oracle/forms/ui/VBean.class $ORACLE_HOME/forms60/java/oracle/forms/
ui/VBean.class.PRE_BUG7156414

- Copy patch files to appropriate directories
$ cd [PATCH_TOP]/7156414/oracle/forms/handler
$ cp UICommon.class $ORACLE_HOME/forms60/java/oracle/forms/handler/UICommon.class
$ cp ComponentItem.class $ORACLE_HOME/forms60/java/oracle/forms/handler/ComponentItem.class
$ cp BlockScroller.class $ORACLE_HOME/forms60/java/oracle/forms/handler/BlockScroller.class
$ cp FormCanvas.class $ORACLE_HOME/forms60/java/oracle/forms/handler/FormCanvas.class
$ cp FormWindow.class $ORACLE_HOME/forms60/java/oracle/forms/handler/FormWindow.class

$ cd [PATCH_TOP]/7156414/oracle/forms/ui
$ cp VBean.class $ORACLE_HOME/forms60/java/oracle/forms/ui/VBean.class

- Regenerate Jar files
- Execute adadmin
- Select the "Generate Applications Files menu" option
- Select "Generate product JAR files"
- Do you wish to force regeneration of all jar files? => Yes
- Spot check that the JAR files have been generated by verifying the timestamp
$ cd $OA_JAVA/oracle/apps/fnd/jar
$ ll fndforms.jar fndewt.jar

4. Apply patch 6125732
- Unzip patch file + Apply patch
$ unzip p6125732_60828_LINUX.zip
$ cd 6125732
$ sh patch.sh

5. Apply patch 6857221
- Unzip patch file + Apply patch
$ unzip p6857221_60828_LINUX.zip
$ cd 6857221
$ sh patch.sh

- Relink f60webmx for Oracle Applications
$ adrelink.sh force=y "fnd f60webmx"

6. Apply patch 3830807
- Unzip patch file + Apply patch
$ unzip p3830807_8063_LINUX.zip
$ cd 3830807
$ ./patch.sh

- Relink all Applications executables:
adadmin -> "Maintain Applications Files" -> "Relink Applications programs"

7. Apply patch 4586086
- Unzip patch file
$ unzip p4586086_600_LINUX.zip

- Backup old file
$ cd $ORACLE_HOME/forms60/lib
$ mv env_forms60.mk env_forms60.mk.PRE_BUG4586086

- Copy patch file to the appropriate directory
$ cd [PATCH_HOME]/bug4586086
$ cp env_forms60.mk $ORACLE_HOME/forms60/lib

- Generate shared object + Relink f60webmx for apps
$ cd $ORACLE_HOME/forms60/lib
$ make -f cus_forms60w.mk libso_install
$ adrelink.sh force=y "fnd f60webmx"

8. Relink applications executables
- Run adadmin
- Select (2) "Maintain Applications Files Menu"
- Select (1) "Relink Applications programs"
- List of product to link: fnd
- Generate specific executables …: Yes
- Relink with debug: No
- Enter executables to relink: f60webmx ar60run ar60runb ar60rund

9. Apply patch 7343387 (Apps Interoperability)
- Unzip patch file
$ unzip p7343387_11i_GENERIC.zip

- Enable maintenance mode: adadmin -> (5) Change Maintenance Mode -> (1) Enable Maintenance Mode
- apply patch with adpatch
- Disable maintenance mode: adadmin -> (5) Change Maintenance Mode -> (2) Disable Maintenance Mode

10. Verify your upgrade
- Check the timestamp for the following files:
$ cd $OA_JAVA/oracle/apps/fnd/jar
$ ll fndforms.jar fndewt.jar

If the timestamp is not current - run adadmin => Maintain Applications Files => Generate Product JAR Files.

11. Start all applications processes (adstrtall.sh)
- You can also verify your upgrade by login to forms responsibility -> Help -> About Oracle Applications
You should see: Oracle Forms version : 6.0.8.28.0


Related - Note 125767.1 - Upgrading Developer 6i with Oracle Applications 11i.

OracleAS 10g with the Oracle E-Business Suite


Integrating Oracle E-Business Suite Release 11i with Oracle Internet Directory and Oracle Single Sign-On


Purpose of Internet Directory instead of storing the information directly in an Oracle database

User identities and credentials
User profiles
User application preferences
Application authorization policies
Application-discovery information
Application- and service-specific management and configuration data, and
Network configuration and management policy data

What is Oracle Application Server?

Oracle Application Server provides the infrastructure to develop and deploy e-business portals, transactional applications, and Web services.
Oracle AS 10g includes Oracle Containers for J2EE (OC4J), Oracle HTTP Server (powered by Apache), Oracle JDeveloper, Oracle Forms, Oracle Identity Management, Oracle Portal, Oracle Business Intelligence, Oracle Business Integration, and Oracle WebCache.

Installing Oracle Application Server 10g with Oracle E-Business Suite Release 11i Doc ID: Note:233436.1


Integrate AS10g with Apps 11i.
Go to FND_TOP/bin and run below script. Its located in FND_TOP.

[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

Once register sucessfully you can proceed below.

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).>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.



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


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.

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



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.

Important Metalink Documents

186981.1 : Frequently Asked Questions
293849.1 : Roadmap: Using OracleAS 10g with the Oracle E-Business Suite (Overview Presentation)
233436.1 : OracleAS 10g + E-Business Suite Installation Guide
261914.1 : Integrating Oracle E-Business Suite Release 11i with Oracle Internet Directory and Oracle Single Sign-On
305918.1: Portal 10g + E-Business Suite Installation Guide
313418.1: Discoverer 10g + E-Business Suite Installation Guide
306653.1: Web Cache 10g + E-Business Suite Installation Guide
223927.1 : Oracle Application Server Integration with Oracle E-Business Suite: Statement of Direction

Wednesday, August 6, 2008

Concurrent Manager : troubleshooting

Summary of Possible Reasons and Solutions for the Problem Where All Concurrent Requests Stuck in Pending Phase


Below are several different possible solutions to the problem where concurrent
requests are stuck in pending status:

1. When shutting down the concurrent manager are there any FNDLIBR processes still running at the OS level? If so, do a kill -9 on them. Then restart the concurrent manager.

2. Try Relinking $FND_TOP.

3. Rebuild the concurrent manager views. As applmgr run the following from
the OS:

This is non-destructive. Concurrent Manager views can be rebuild by running the following command at the command line:

Ensure that concurrent manager is shutdown.

FNDLIBR FND FNDCPBWV apps/apps SYSADMIN 'System Administrator' SYSADMIN

restart the concurrent mgr.

4. Another possibility is that the Profile Option "Concurrent: OPS Request Partitioning" is set to OFF (by default). Unless Concurrent OPS is being used, the setting for this profile option should be NULL.

5. Yet another possibility is that System Profile Option: Concurrent Active
Requests is set to 0.


1. Log into Oracle Applications as SYSADMIN.
2. Select System Administrator responsibility.
3. Navigate to PROFILE --> SYSTEM.
4. Query for %CONC%ACTIVE%.
5. Change the profile option for Concurrent: Active Request Limit to Null (blank).
6. Exit Oracle Applications and log in again for the change to take affect.
7. Run a new concurrent request.


6. Another possibility is that Concurrent managers were brought down, while an
outstanding request was still running in the background. In which case, Update
the FND_CONCURRENT_REQUESTS table as follows:
.
sql> update fnd_concurrent_requests
set status_code='X', phase_code='C'
where status_code='T';
sql> commit;

7. The control_code for concurrent_queue_name = 'FNDCRM' is 'N' in the FND_CONCURRENT_QUEUES table, which means 'Target node/queue unavailable'. This value should be NULL (CRM is running; target and actual process amount are the same), or 'A' ('Activate concurrent manager' control status).

Set the control_code to 'A' in fnd_concurrent_queues for the Conflict Resolution Manager:

1. Logon to Oracle Applications database server as 'applmgr'.
2. Verify the Applications environment is setup correctly ($ORACLE_HOME and $ORACLE_SID).

3. Logon to SQL*Plus as 'APPS' and run the following SQL statement:

update fnd_concurrent_queues
set control_code = 'A'
where concurrent_queue_name = 'FNDCRM';

commit;

4. Verify the status of the concurrent managers through the
Concurrent -> Manager -> Administer form.

If the CRM is still not active, bounce (deactivate, activate) the Internal Concurrent Manager. This is done through the Concurrent -> Manager ->

Administer form from the 'System Administrator' responsibility. It can also be done through the CONCSUB command at the command level.

Setting the control_code to 'A' in the fnd_concurrent_queues table for the Conflict Resolution Manager indicates that this concurrent manager is to be activated with the parameter values specified through this table for this manager (MAX_PROCESSES, CACHE_SIZE, etc).

8. What is the cache size? Try increasing it then bounce the concurrent manager.

If concurrent requests are rarely prioritized and there are managers that service short-running requests, consider setting the cache size to equal at least twice the number of target processes. This increases the throughput of the concurrent manaagers by attempting to avoid any sleep time. For example, if more than one manager or worker processes the same type of requests with only a small cache size, it may be unable to process any jobs in a single processing cycle, because other processes have already run the cached requests. When this happens, it is important to note that the manager will sleep before refreshign its cache. To increase manager throughput where there are sufficient requests of the required type in the queue, increase the cache size to improve the chance of the manager finding work to process and thus avoid having to enter a sleep phase.

TIP: Ensure that the system is not resource-constrained before attempting to increase the rate of concurrent processing in this way; otherwise, these changes may actually reduce concurrent processing throughput because jobs take longer to run..

Enter the number of requests your manager remembers each time it reads which requests to run. For example, if a manager's workshift has 1 target process and a cache value of 3, it will read three requests,, and will wait until these three requests have been run before reading new requests.

In reading requests, the manager will only put requests it is allowed to run into its cache. For example, if you have defined your manager to run only Order Entry reports then the manager will put only Order Entry requests into its cache.

If you enter 1, the concurrent manager must look at its requests list each time it is ready to process another request. By setting the cache size at a higher number, the concurrent manager does not have to read its requests list each time it runs a request. However, the manager does not recognizea nay priority changes you make for a particular request if it has already read that request into its cache. Further, even if you give a higher priority to a new request, that new request must wait until the buffer isempty and the manager returns to look at the requests list. That request may have to wait a long time if you set the buffer size to a high number.

You should use cache size to tune your concurrent managers to work most efficiently for you site's needs. If your organization tends to reprioritize jobs going to a certain manager, that manager should have its buffer size set fairly low.

*Suggestion: *Enter a value of 1 when defining a manager that runs long, time-consuming jobs, and a value of 3 or 4 for managers that run small, quick jobs.



9. Please check the sleep seconds set for the concurrent manager which runs the report that is taking long time for completion. Reducing the sleep time will improve performance.

1. Check for the value set for the sleep seconds for the concurrent manager using the following path: System Administrator Responsibilty -> Concurrent -> Manager -> Define.

2. Check the processes running for the concurent manager using the following command:

ps -ef | grep 'INVLIBR'

As all concurrent programs are dealt by INVLIBR, the number of processes returned here must tally with the value specified for the processes defined for the concurrent manager.

3. Also, check for the duration for which the processes are sleeping. Reducing the value assigned for it would improve performance.

As a workaround to improve performance, you could change the priority of concurent request.

Explanation
-----------
The sleep state would be assigned to some tasks when the program running it has to handle more tasks than it has been configured to process. For example, if the number of processes has been defined as say 10, then at any point of time there is a provision to run 10 tasks. Now say, 12 tasks arrive for the program, then time slots are alloted for 10 and the rest 2 are put to sleep. So, if the concurrent program running the problem report is handling larger number of processes the sleep and run behaviour can be observed.

Wednesday, July 30, 2008

Access Oracle Apps R12 / 11i from Linux Client (Mozilla Firefox)

In Oracle Applications professional Users can access professional forms via Appletin web browser. This Form Applet must run with in Java Virtual Machine (JVM) and Oracle bundles its own JVM as Oracle Jinitiator. This Jinitiator is available only for Windows Client and for Unix/Linux you have to use Java Plug-In.
Till Oracle Apps 11i default JVM was Jinitiator but with Oracle Apps R12 default JVM under which form Applet run is J2SE Plug-In. If you are accessing Oracle Applications (11i/R12), Apps will automatically prompt you to install Jinitiator/J2SE Plug-in (If Jinitiator/J2SE is not installed in client machine) but if you are accessing same Oracle Applications from Linux/Unix it does not prompt to install plug-in and you can’t apps forms from Linux client.

How to access Oracle Apps 11i/R12 professional forms from Linux Client ?
In you to access forms from Linux client, Three steps are installed (You can skip first if Mozilla is installed on your Linux client) –

1. Install Mozilla Browser
2. Install JRE on client machine (JRE version to install will depend on Server configuration, for R 12.0.o you need JRE 5 update 10) .
3. Use JRE installed above on client machine in Browser (Mozilla) Plugin

1. Install FireFox Mozilla
–Download Mozilla for Linux from http://www.mozilla.com/en-US/firefox/all.html#en firefox-2.0.0.7.tar.gz
– “gunzip -d firefox-2.0.0.7.tar.gz” (You will get unzipped file with name as firefox-2.0.0.7.tar)
– Extract tar file as “tar -xvf firefox-2.0.0.7.tar”
– This will create directory called “firefox” which is under you will see executable called “firefox“; Use this executable to start FireFox on Linux machine.

2. Install JRE on client machine
–Download JRE 5.0 Update 10 for Linux from http://java.sun.com/products/archive/j2se/5.0_10/index.html ”jre-1_5_0_10-linux-i586-rpm.bin”
–”chmod 755 jre-1_5_0_10-linux-i586-rpm.bin”
–./jre-1_5_0_10-linux-i586-rpm.bin (You will be asked to accept license agreement , click enter and when prompted to accept license enter Yes)
–This will install jre 1.5.10 in linux machine under /usr/java and plugin is installed under /usr/java/jre1.5.0_10/plugin/i386/ns7/libjavaplugin_oji.so

Configure JRE Plug-in in browser
–Go to Mozilla FireFox plug-in directory which is $location_where_you_unziped_firefox_directory/plugins and create soft link like
–ln -s /usr/java/jre1.5.0_10/plugin/i386/ns7/libjavaplugin_oji.so ./libjavaplugin_oji.so

Oracle Apps on Mozilla Firefox

You actually don't need to install JInitiator (jinit 1.3.1.21) to run Oracle Applications on Firefox if you already installed the Sun JRE 1.4.2 and above. You will need to edit pluginreg.dat

On Windows, that file is located at %APPDATA%\Mozilla\Firefox. Make a copy of the existing one first in case something goes wrong.

Search for NPJava14.dll because Oracle runs on Java 1.4. This will appear whether you have installed Java 5 or 6.

You will need to add the following line to at the end of the plugins.

6|application/x-jinit-applet;version=1.3.1.21|Java||$

Then update the count at the top of the section. Your modified pluginreg.dat will look like:

C:\Program Files\Java\jre1.5.0_09\bin\NPJava14.dll|$
|$
1160594743000|1|5|$
Java Plug-in 1.5.0_09 for Netscape Navigator (DLL Helper)|$
Java(TM) 2 Platform Standard Edition 5.0 Update 9|$
7
0|application/x-java-applet;version=1.4.2|Java Applet||$
1|application/x-java-bean;version=1.4.2|JavaBeans||$
2|application/x-java-applet;version=1.4.1|Java Applet||$
3|application/x-java-bean;version=1.4.1|JavaBeans||$
4|application/x-java-applet;version=1.5|Java Applet||$
5|application/x-java-bean;version=1.5|JavaBeans||$
6|application/x-jinit-applet;version=1.3.1.21|Java||$

Just replace the | with : if you're in Linux. Run Firefox and you're good to go.

Monday, July 21, 2008

Manual Database Creation steps for Single-Instance.

Oracle RAC
=====================================================


Here are the steps to be followed:


1. Make a init.ora in your $ORACLE_HOME/dbs directory. On Windows this
file is in $ORACLE_HOME\database. To simplify, you can copy init.ora to
init.ora and modify the file.
*** Path names, file names, and sizes will need to be modified
Example parameter settings :

db_block_size=8192
db_cache_size=52428800
background_dump_dest=/u01/32bit/app/oracle/product/9.0.1/rdbms/log
core_dump_dest=/u01/32bit/app/oracle/product/9.0.1/rdbms/log
user_dump_dest=/u01/32bit/app/oracle/product/9.0.1/rdbms/log
timed_statistics=TRUE
control_files=("/u01/rbdb1/control_01.ctl", "/u01/rbdb1/control_02.ctl")
db_name=rbdb1
shared_pool_size=52428800
sort_area_size=524288
undo_management=AUTO
undo_tablespace=UNDOTBS

** You can also use an spfile as described in Note 162491.1.

2. Run the following sqlplus command to connect to the database:

sqlplus '/ as sysdba'

3. Startup up the database in NOMOUNT mode:

SQL> startup nomount

4. Create the Database :
*** Path names, file names, and sizes will need to be modified

CREATE DATABASE
MAXLOGFILES 255
MAXINSTANCES 1
MAXDATAFILES 256
MAXLOGHISTORY 256
DATAFILE '/u01/oracle/rbdb1/system_01.dbf' SIZE 400M REUSE
UNDO TABLESPACE "UNDOTBS" DATAFILE '/u01/oracle/rbdb1/undotbs_01.dbf'
SIZE 200M REUSE AUTOEXTEND ON NEXT 5120K MAXSIZE UNLIMITED
CHARACTER SET US7ASCII
LOGFILE GROUP 1 ('/u01/oracle/rbdb1/redo1_01.dbf') SIZE 100M REUSE,
GROUP 2 ('/u01/oracle/rbdb1/redo1_02.dbf') SIZE 100M REUSE;

5. Create a Users Tablespace :
*** Path names, file names, and sizes will need to be modified

CREATE TABLESPACE "USERS" DATAFILE '/u01/oracle/rbdb1/users01.dbf'
SIZE 300M REUSE AUTOEXTEND ON
NEXT 5M MAXSIZE 1500M;

6. Create a Temporary Tablespace :
*** Path names, file names, and sizes will need to be modified

CREATE TEMPORARY TABLESPACE "TEMP" TEMPFILE '/u01/oracle/rbdb1/temp_01.dbf'
SIZE 40M REUSE AUTOEXTEND ON NEXT 640K MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL;
ALTER DATABASE DEFAULT TEMPORARY TABLESPACE "TEMP";

7. Run the scripts necessary to build views, synonyms, etc. :

The primary scripts that you must run are:

i> CATALOG.SQL-- creates the views of data dictionary tables and the
dynamic performance views.
ii> CATPROC.SQL-- establishes the usage of PL/SQL functionality and
creates many of the PL/SQL Oracle supplied packages.


==============================================================
Manual Database Creation steps for Real Application Clusters
==============================================================

Here are the steps to be followed to create a Real Application Clusters database:


1. Make a init.ora in your $ORACLE_HOME/dbs directory. On Windows this
file is in $ORACLE_HOME\database. To simplify, you can copy init.ora to
init.ora and modify the file. Remember that your control file must
be pointing to a pre-existing raw device or cluster file system location.
*** Path names, file names, and sizes will need to be modified
Example parameter settings for the first instance:

Cluster-Wide Parameters for Database "RAC":

db_block_size=8192
db_cache_size=52428800
background_dump_dest=/u01/32bit/app/oracle/product/9.0.1/rdbms/log
core_dump_dest=/u01/32bit/app/oracle/product/9.0.1/rdbms/log
user_dump_dest=/u01/32bit/app/oracle/product/9.0.1/rdbms/log
timed_statistics=TRUE
control_files=("/dev/RAC/control_01.ctl", "/dev/RAC/control_02.ctl")
db_name=RAC
shared_pool_size=52428800
sort_area_size=524288
undo_management=AUTO
cluster_database=true
cluster_database_instances=2
remote_listener=LISTENERS_RAC

Instance Specific Parameters for Instance "RAC1":

instance_name=RAC1
instance_number=1
local_listener=LISTENER_RAC1
thread=1
undo_tablespace=UNDOTBS

* The local_listener parameter requires that you first add the listener
address to the TNSNAMES.ORA - remember to do so on both Node 1 and Node 2.

** You can also use an spfile as described in Note 136327.1.

2. Run the following sqlplus command to connect to the database:

sqlplus '/ as sysdba'

3. Startup up the database in NOMOUNT mode:

SQL> startup nomount

4. Create the Database (All raw devices must be pre-created) :
*** Path names, file names, and sizes will need to be modified

CREATE DATABASE
CONTROLFILE REUSE
MAXDATAFILES 254
MAXINSTANCES 32
MAXLOGHISTORY 100
MAXLOGMEMBERS 5
MAXLOGFILES 64
DATAFILE '/dev/RAC/system_01_400.dbf' SIZE 400M
REUSE AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED
UNDO TABLESPACE "UNDOTBS" DATAFILE
'/dev/RAC/undotbs_01_210.dbf' SIZE 200M REUSE
NEXT 5120K MAXSIZE UNLIMITED
CHARACTER SET US7ASCII
LOGFILE GROUP 1 ('/dev/RAC/redo1_01_100.dbf') SIZE 100M REUSE,
GROUP 2 ('/dev/RAC/redo1_02_100.dbf') SIZE 100M REUSE;

5. Create a Users Tablespace:
*** Path names, file names, and sizes will need to be modified

CREATE TABLESPACE "USERS" LOGGING DATAFILE
'/dev/RAC/users_01_125.dbf' SIZE 120M REUSE
NEXT 1280K MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL;

6. Create a Temporary Tablespace:
*** Path names, file names, and sizes will need to be modified

CREATE TEMPORARY TABLESPACE "TEMP" TEMPFILE
'/dev/RAC/temp_01_50.dbf' SIZE 40M REUSE

7. Create a 2nd Undo Tablespace:
*** Path names, file names, and sizes will need to be modified

CREATE UNDO TABLESPACE "UNDOTBS2" DATAFILE
'/dev/RAC/undotbs_02_210.dbf' SIZE 200M REUSE
NEXT 5120K MAXSIZE UNLIMITED;

8. Run the necessary scripts to build views, synonyms, etc.:

The primary scripts that you must run are:
i> CATALOG.SQL--creates the views of data dictionary tables and the
dynamic performance views
ii> CATPROC.SQL--establishes the usage of PL/SQL functionality and
creates many of the PL/SQL Oracle supplied packages
iii> CATPARR.SQL--creates RAC specific views

9. Edit init.ora and set appropriate values for the 2nd instance on the
2nd Node:
*** Names may need to be modified

instance_name=RAC2
instance_number=2
local_listener=LISTENER_RAC2
thread=2
undo_tablespace=UNDOTBS2

10. From the first instance, run the following command:
*** Path names, file names, and sizes will need to be modified

alter database
add logfile thread 2
group 3 ('/dev/RAC/redo2_01_100.dbf') size 100M,
group 4 ('/dev/RAC/redo2_02_100.dbf') size 100M;
alter database enable public thread 2;

12. Start the second Instance. (Assuming that your cluster configuration
is up and running).