Friday, June 29, 2012

Requirements for Installing Oracle 11g R2 Fusion Applications Database




The fusion applications has Four  database [including one optional data ware house database]
In the fusion applications oracle had come up with two database for the OAM[single sign on] and the OID [oracle internet directory]
now the user details are stored in the separate database not in the transnational database which holds the real data
The User's transitional data or stores in the fusion applications database
There is a fourth optional database known as the datawarehoue database for the fusion applications when you are using the fusion applications BI
[1]Fusion applications transaction database

Holds the schema's of the different domains in which all the translation data's are stored

[2]Oracle Identity management 

In the identity management category oracle has two database

[1] OID database which holds the data of the oracle internet directory
[3]OAM database which holds the data of the oracle access mangement

[4]Fusion data warehouse database --- Optional database when you are using Bi with fusion then we need to install this Db

If you are using the BI with the fusion applications then we need to install the fusion data warehouse  database or you can use OTBI which comes along with the fusion applications

It is recommended to go with the three server architecture with out datawarehouse database

Server 1 

Which holds the fusion application database 

Server 2

Which hold's the oracle Identity management database's [OID and OAM] with the IDM web logic middle ware

Server 3

Which holds the fusion applications 

It can be done with the two server arrchicture as we can install the IDM database and the Fusion application database and the IDM web logic in the single server  and fusion applications in the another server

Check the prerequisits for creating the fusion app database and the idm database

1] Create the fully qualified Host name

login to the root and check the /etc/hosts file for the fully qualified hostname with the IP

[root@fah]# vi /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1            localhost.localdomain localhost
::1                      localhost6.localdomain6 localhost6
<ip number>     fahtestdb.<domain_name>.com fahtestdb

and save the hosts file 

2]Before installing The database conform the O/S archicture 

To know the archicture type uname -a

[root@fah ~]# uname -a
Linux fahtestdb.oasiserp.com 2.6.18-194.el5 #1 SMP Mon Mar 29 22:10:29 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux
here we are using the x86_64 bit archicture system for installing and database 

To know the releease of the linux type  $ lsb_release -id

[root@fah ~]# lsb_release -id
Distributor ID: EnterpriseEnterpriseServer
Description:    Enterprise Linux Enterprise Linux Server release 5.5 (Carthage)

To know the kernal which is installed

[root@fah ~]# uname -r
2.6.18-194.el5

3] Rpm's required for the oracle database in the linux x86-64

These are the rpm's which is mandatory to install the oracle database in the Linux environment  the Rpm version numbers may slightly change according to the Linux version you are using

1] binutils-2.17.50*
2] compat-libstdc++-33-3.2.3-61*
3] elfutils-libelf-*
4]  glibc-2.5-81.el5_8.2.
5] glibc-common-2.5-81.el5_8.2.
6] ksh-20100621-5.el5_8.1
7] libaio-0.3.106-5.x86_64
8] libgcc-4.1.2-52.el5_8.1
9] libstdc++-4.1.2-52.el5_8.1
10]libstdc++44-devel.x86_64
11]glibc-headers-2.5-81.el5_8.2.x86_64
12] sysstat-7.0.2-11.el5.x86_64
13] unixODBC-devel-2.2.11-10.el5
14]unixODBC-2.2.11-10.el5
15]unixODBC-libs-2.2.11-10.el5
16]gcc-c++-4.1.2-52.el5_8.1.x86_64
17]kernel-headers.x86_64
18] glibc-devel-2.5-81.el5_8.2.
19] libgomp-4.4.6-3.el5.1
20] make-3.81-3.el5.x86_64 
21]openmotif22-2.2.3-20
22]openmotif-2.3.1-6.1.el5_8
23]xorg-x11-utils

Query to conform all the rpms are installed 

rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" | grep <rpm name>

1]   rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" |grep binuti
binutils-2.17.50.0.6-20.el5_8.3 (x86_64)
binutils-devel-2.17.50.0.6-20.el5_8.3 (i386)
binutils-devel-2.17.50.0.6-20.el5_8.3 (x86_64)
binutils220-2.20.51.0.2-5.29.el5 (x86_64)

2]   rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" |grep compat-libstdc++
compat-libstdc++-33-3.2.3-61 (x86_64)
compat-libstdc++-33-3.2.3-61 (i386)
compat-libstdc++-296-2.96-138 (i386)

3]   rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" |grep elfutils-libelf-
elfutils-libelf-devel-0.137-3.el5 (x86_64)
elfutils-libelf-0.137-3.el5 (x86_64)
elfutils-libelf-devel-static-0.137-3.el5 (i386)
elfutils-libelf-0.137-3.el5 (i386)
elfutils-libelf-devel-0.137-3.el5 (i386)
elfutils-libelf-devel-static-0.137-3.el5 (x86_64)

4]   rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" |grep glibc-2.5-81.el5_8.2
glibc-2.5-81.el5_8.2 (x86_64)
glibc-2.5-81.el5_8.2 (i686)

5]   rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" |grep glibc-common
glibc-common-2.5-81.el5_8.2 (x86_64)

6]  rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" |grep ksh
ksh-20100621-5.el5_8.1 (x86_64)

7] rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" |grep libaio-
libaio-0.3.106-5 (x86_64)
libaio-devel-0.3.106-5 (i386)
libaio-devel-0.3.106-5 (x86_64)
libaio-0.3.106-5 (i386)

8] rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" |grep libgcc
libgcc-4.1.2-52.el5_8.1 (x86_64)
libgcc-4.1.2-52.el5_8.1 (i386)
compat-libgcc-296-2.96-138 (i386)

9] and [10] rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" |grep libstdc++
libstdc++-4.1.2-52.el5_8.1 (i386)
libstdc++-devel-4.1.2-52.el5_8.1 (i386)
compat-libstdc++-33-3.2.3-61 (x86_64)
compat-libstdc++-33-3.2.3-61 (i386)
compat-libstdc++-296-2.96-138 (i386)
libstdc++-devel-4.1.2-52.el5_8.1 (x86_64)
libstdc++44-devel-4.4.6-3.el5.1 (x86_64)
libstdc++-4.1.2-52.el5_8.1 (x86_64)
libstdc++44-devel-4.4.6-3.el5.1 (i386)

11] rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" |grep glibc-headers
glibc-headers-2.5-81.el5_8.2 (x86_64)

12] rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" |grep sysstat-
sysstat-7.0.2-11.el5 (x86_64)

13] [14] [15]rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" |grep unixODBC
unixODBC-devel-2.2.11-10.el5 (x86_64)
unixODBC-2.2.11-10.el5 (x86_64)
unixODBC-libs-2.2.11-10.el5 (x86_64)
unixODBC-2.2.11-10.el5 (i386)
unixODBC-libs-2.2.11-10.el5 (i386)
unixODBC-devel-2.2.11-10.el5 (i386)

16] rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" |grep gcc-c++
gcc-c++-4.1.2-52.el5_8.1 (x86_64)

17] rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" |grep kernel-headers
kernel-headers-2.6.18-308.8.2.0.1.el5 (x86_64)

18]rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" |grep glibc-devel
glibc-devel-2.5-81.el5_8.2 (i386)
glibc-devel-2.5-81.el5_8.2 (x86_64)

19] rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" |grep libgomp
libgomp-4.4.6-3.el5.1 (i386)
libgomp-4.4.6-3.el5.1 (x86_64)

20] rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" |grep make
make-3.81-3.el5 (x86_64)

21] [22]  rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" |grep openmotif
openmotif22-2.2.3-20 (x86_64)
openmotif-devel-2.3.1-6.1.el5_8 (x86_64)
openmotif22-2.2.3-20 (i386)
openmotif-devel-2.3.1-6.1.el5_8 (i386)
openmotif-2.3.1-6.1.el5_8 (i386)
openmotif-2.3.1-6.1.el5_8 (x86_64)

23]  rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" |grep xorg-x11-utils
xorg-x11-utils-7.1-2.fc6 (x86_64)


If any of the rpm's are not installed then use the yum install to install the particular rpm and check again 
for an  example here we have installed the libstdc++* .. like wise you need to install all the rpm's which are not installed  in your environment  for installing the Public yum please check the previous post   http://orafapp.blogspot.com/2012/06/creating-public-yum-repositiry-for.html

For more information Regarding the different versions of operating system requirements refer to the below link
http://docs.oracle.com/html/E18558_01/fusion_requirements.htm#CHDGICGE
Requirements for Installing Oracle 11gR2 RDBMS on RHEL (and OEL) 5 on AMD64/EM64T [ID 880989.1]

4] creating the O/S user and groups for the necessary installation

Here we explained the structure for the two node and the three node arrchicture for the fusion applications
for three node arch                                                                   For two node arch
server1    [node1]                                                                                Server1 [node1]
fusion database                                                          Fusion database,IDM database's IDMDomain
server2    [node2]                                                                                Server2 [node2]
IDM database's and IDM domain                             Fusion Applications
server3    [node3]
Fusion applications

Creating o/s username and group's for the fusion applications database

1] oracle fusion applications database
2]Oracle OID database
3]Oracle Access manager database
  
Creating the Group names
groupadd  oinstall
groupadd  dba  
we have create two groups know as the oinstall and the dba the oinstall will be the primary group and the dba will be the secondary group for the database's

If you are suing the ASM  create the asm groups

groupadd   asmadmin
groupadd   asmoper
groupadd   asmoper
if you are using the file system ignore this groups

To Create Users for the database

useradd grid         -g   oinstall -G  dba, asmoper, asmadmin ,asmdba  -- [if you are using the asm]
useradd oraidm    -g   oinstall -G  dba       --[IDM database o/s user]
useradd oraoam   -g    oinstall -G  dba       --[OAM database o/s user]
useradd oracle      -g   oinstall -G  dba       --[fusiondb database o/s user]
useradd  fmwidm  -g oinstall -G dba     --[oraweblogic IDM Domain o/s user]
useradd orafapp        -g oinstall -G dba    --[fusion applications username]

The small g is used to specify the primary group of the user and the G is used to specify the Other groups which the user is assigned to 


[root@fa ~]# id oraidm
uid=54322(oraidm) gid=54321(oinstall) groups=54321(oinstall),54322(dba)
[root@fa ~]# id oraoam
uid=54323(oraoam) gid=54321(oinstall) groups=54321(oinstall),54322(dba)
[root@fa ~]# id oracle
uid=54321(oracle) gid=54321(oinstall) groups=54321(oinstall),54322(dba)
[root@fa~]# id grid
uid=54324(grid) gid=54321(oinstall)groups=54321(oinstall),54322(dba),54333(asmadmin),54334(asmdba),54335(asmoper)

If You have the wrong group combinations then use the  usermod command to modify the  user group to match all the remaining users
 usermod -g oinstall -G dba oraoam

5]Creating the Directory and mount to the label and change the owner to the oracle Users 


For creating the directory and mount to the appropriated label please refer to the previous post 

http://orafapp.blogspot.com/2012/06/mounting-partitions-in-oracle-linux.html
http://orafapp.blogspot.com/2012/06/installing-oracle-11gr2-database-in.html


mkdir  /u01/app/oracle -p
mkdir  /u02/app/oracle -p
mkdir  /u03/app/oracle -p
mkdir  /u04/app/oracle -p

There are three directories which is to be owned by the oracle database users here we are going to install three database in the same machine..
and the fourth directory is used to install the IDM Domain

if you are installing with the three servers then you can create only  one directory
/u01/app/oracle in the fusiondb linux box and remaining  three in the IDMbox


chown command is used to change the owner of the particular directory or file

Server 1
[root@fah ~]# chown oracle:oinstall   /u01/app/oracle       --[Installing Location of the Fusionapp db]
[root@fah ~]# chown oraidm:oinstall /u02/app/oracle       --[Installing Location of OID   db]
[root@fah ~]# chown oraoam:oinstall /u03/app/oracle      --[Installing Location of OAM db]
[root@fah ~]# chown orafmw:oinstall /u04/app/oracle      --[Installing Location Of IDM Domain]
Server 2 [for fusion applications installation]
[root@fah ~]#chown orafapp:oinstall  /u05/app/oracle      -- [Installation location of the fusion applications ]

chmod command is used to change the file permissions to the file system 

we have to assign  the write permission to the group for all the user's 

[root@fah]# cd /u01/app
[root@fah]# chmod 765 oracle
[root@fah]# cd /u02/app
[root@fah]# chmod 765 oracle
[root@fah]# cd /u03/app
[root@fah]# chmod 765 oracle
[root@fah]# ll /u0*/app
 
now the owner has the full access read write and execute to the file system and the group had the read and write and other's has read and execute 

6] Open file Limits for the users

To set the open file limits go the /etc/security/limites.conf

Set the open below parameters in the limites .conf we can use the wild card to match multiple users when we are installing the fusion applications

*     soft     nproc         131072
*     hard     nproc         131072
*     soft     nofile        327679
*     hard     nofile        327679
*     soft     stack         131072

7] Init Parameters for the fusion applications database


[1]  audit_trail                                  string      NONE

Desc :audit trail is set to be none for disable the database auditing

[2]  plsql_code_type                       string      NATIVE

Desc: we need to set the value to the NATIVE PL/SQL library units (with the possible exception of top-level anonymous PL/SQL blocks) will be compiled to native (machine) code. Such modules will be executed natively without incurring any interpreter overhead.

[3]  nls_sort                                    string          BINARY

Desc :Setting NLS_SORT to anything other than BINARY causes a sort to use a full table scan, regardless of the path chosen by the optimizer. BINARY is the exception because indexes are built according to a binary order of keys. Thus the optimizer can use an index to satisfy the ORDER BY clause when NLS_SORT is set to BINARY. If NLS_SORT is set to any linguistic sort, the optimizer must include a full table scan and a full sort in the execution plan Nls_sort is set to Binary for the improved performance of the ORDER BY quires

[4]open_cursors                              integer     1000

Desc: OPEN_CURSORS specifies the maximum number of open cursors (handles to private SQL areas) a session can have at once. You can use this parameter to prevent a session from opening an excessive number of cursors ..no of Cursors open is set to be 500 to 1000 according to you environment

[5]session_cached_cursors               integer     1000


DESC :  Recommended value for the parameter is 500 to 1000 according to the env 
Specifies the number of session cursors to cache. Repeated parse calls of the same SQL statement cause the session cursor for that statement to be moved into the session cursor cache. Subsequent parse calls find the cursor in the cache and do not reopen the cursor. Oracle uses a least recently used algorithm to remove entries in the session cursor cache to make room for new entries when needed.This parameter also constrains the size of the PL/SQL cursor cache that PL/SQL uses to avoid having to re-parse as statements are re-executed by a user


[6] processes                            integer     5000

Desc : The recommended vale for the process is 5000 for fusion database and 2500 for idm database's
Sets the maximum number of operating system processes that can be connected to Oracle concurrently. The value of this parameter must account for Oracle background processes. SESSIONS parameter is deduced from this value
[7]star_transformation_enabled          string      FALSE


Desc recommended value is False Determines whether a cost-based query transformation will be applied to star queries

[8] query_rewrite_integrity              string      enforced


Desc QUERY_REWRITE_INTEGRITY determines the degree to which Oracle must enforce query rewriting. At the safest level, Oracle does not use query rewrite transformations that rely on unenforced relationships.
Determines whether a cost-based query transformation will be applied to star queries
we need to set the value as Enforced  as it  guarantees consistency and integrity


[9]parallel_max_servers                 integer     640

Desc :PARALLEL_MAX_SERVERS specifies the maximum number of parallel execution processes and parallel recovery processes for an instance. As demand increases, Oracle increases the number of processes from the number created at instance start up up to this value. we need to specify the value as 640 in the fusion applications  

[10] job_queue_processes                  integer     100

Desc Specifies the maximum number of job slaves per instance that can be created for the execution of DBMS_JOB jobs and Oracle Scheduler (DBMS_SCHEDULER) jobs the recommended value is 10 to 100

[11]_b_tree_bitmap_plans                 boolean     FALSE

Desc we need to set the value as false we are setting to false for the improved performance with the sql quries

[12]_fix_control                         string      5483301:OFF, 6708183:ON

Desc we need to specify the two values one is OFF and another is ON

[13] sga_target                           big integer 18

Desc The suggested value for an Oracle Fusion Applications Starter database is 9 GB

[14]pga_aggregate_target                 big integer 8G

Desc The suggested value for an Oracle Fusion Applications Starter database is 4 GB


9 comments:

  1. Its been a learning experience to read your blog

    Could u tell how many OS user are required to create for Installing Oracle Fusion Applications
    on Linux server..

    Do we 've to create oracle, oraoam, oraidm OS Users even if we Installing just the Finenial suite of Fusion Apps. ?

    As you know there are inter-dependencies Of Product Involved even if we wanna Install just the Financials suite. as during the
    provisioning process between offerings we simply select the ones we want. . In order to install Financials a portion of HCM would be installed as User Management (create users, delete users, etc) is done through modules in HCM. Only those modules needed from HCM would be installed however, not the whole of HCM ..

    Also we cannot exclude the Identity Management components. As all the authentication and authorization is done through IDM.

    What i wanna know if we installing Fusion Application How many OS user & group like dba,oinstall we have to create In order install Fusion Apps on Linux.. ?!

    Really Appreciate if u could tell.

    Thanks & Regards
    MZ




    ReplyDelete
  2. Hi Mazhar

    For installing the fusion financials we need to install three database.. one is for Fusion applications and another two is for IDM [OID] and OAM database and two weblogic's one to fusion applications and another to idm Domain

    Oracle recommends To use Three physical servers to install the full fusion applications

    [1] fusion applications database
    [2] IDM server [contains OID db,OAM db,weblogic for IDM]
    [3] Fusion applications

    But we can install all this in two servers .. also with he combination of IDM and Fusion DB in one server and fusion applications in another server

    we can install the database through the installers of the fusion binaries [or] we can install bare metal installations of three database's and create the Respective RCU's

    For Fusion applications database [ oradb] oinstall [ if you are using the ASM then asmdb,asmoper,and dba group you can create] it is as same as installing the 11gr2 database ]

    For IDM
    Oracle internet directory OID database [oraoid] oinstall
    Oracle Access manager OAM database [oraoam] oinstall
    weblogic for idm [oracle] oinstall

    For fusion applications
    [orafapp] oinstall

    Regarding the Fusion Financial Suite installations
    during the provisioning of Fusion applications we need to specify the product Family as financials to install finance suite
    with the Full finance suite we will get 8 domains ...HCM,SCM,CRM, Projects,Procurement,Common,BI,Finance Domains
    All this domains expect finance contains the supporting managed server's [modules] to the financials with in it .. with this HCM or CRM we cant derive the full functionality of that modules they contains only the supporting stuff to the finance..
    if we need to install the HCM and finance together then during the time of provisioning we need to select the HCM and Finance

    I hope this answers the query if not please feel free to post

    Thanks & Regards
    B.Palaneandavar

    ReplyDelete
  3. Thanks for providing the detail Answers. as my understanding of fusion Apss is very limited.

    Could you please tell If it is possible to Install Oracle Fusion Apps (Specifically Financial suite)on a single Linux Server which has around 132 GB of RAM & around 800 GB disk space. ?! There is No Oracle DB previously installed on this server. & we 've Downloaded the Oracle Fusion Applications 11g Release 4 (11.1.4) Media Pack for Linux x86-64.

    I Would be highly Obliged to you if you could explain the sequence of steps that need to be followed in order to install the Oracle Fusion Apps(Specifically Financial suite).

    How many oracle Fusion Apps Users ( OS users on linux to install ) & groups like dba , oinstall etc. would be required for installing fusion Apps on single linux server. ? Do we 've to create 3 OS Users like oracle, oraoam, oraidm as well.



    Eagerly waiting for your reply.


    Thanks & Regards
    MZ

    ReplyDelete
    Replies
    1. Could you please also tell that What would be the Values of these memory related parameters like kernel.shmall , kernel.sem , fs.file-max ...etc in /etc/sysctl.conf file .. ?

      Really Appreciate if u could also share the prerequisite steps that r required to be executed On Linux server before starting the Fusion Application Installation on a fresh Linux server which has 132 GB of RAM & 800GB harddisk space.

      Also after unzipping the Oracle Fusion Applications 11g Release 4 (11.1.4) Software which Installer should i run first if its fresh Installation of Oracle Fusion Applications ? do we run Start the installer from /installers/faprov/Disk1 directory first ?!

      Hope I am not bothering you much .. really Appreciate if you could clear the Confusion .

      Thanks & Regards
      MZ


      Delete

    2. It will be tough to go with single node server because the weblogic ports may conflict with the idm weblogic ports we need to follow the different ports rather that the default ports which is mentioned in the EDG

      Delete
  4. what would be The minimum Open File Limit is it 4096 in /etc/security/limits.conf file for installing Fusion Apps on linux ?

    ReplyDelete
  5. Hi

    Hope you 'll be in the best of health.

    COuld you tell when am trying to find the java version getting this error
    java -version
    -bash: java: command not found

    How to know the jdk version on a fresh linux server. Also if jdk isn't installed do we 've to
    install the rpm for it or It 'll be installed during installation of Fusion Apps Software ?

    Thanks & Regards
    MZ

    ReplyDelete
  6. Hi,

    Could u please suggest anything as we r Getting This Strange error when we exceute the /runInstaller which is under /apps/oracle/installers/faprov/Disk1/ Dire
    .when we execute the command i.e ./runInstaller it check the Cpu speed temp space....etc & Than it ask or prompt for the jdk location... ... as soon as we specified the jdk location .. before opening the Installer Window....The terminal window get closed down automatically without opening Installer window.

    Also xclock is working fine for root

    The jdk location which we provided to the prompt

    [root@SST~]# echo $JAVA_HOME
    /apps/oracle/jdk6/

    The server is Linux 64 bit & RAM is 132 GB & Harddisk space is 800 GB Also we 've installed the required RPMs & settup the Kernel parameters & rebooted the server as well

    we tried executing the runinstaller first from fusionapps User than after 2 hours from root .... but got the same result.

    we r unable to figure it out .. Appreciate if you could suggest anything....

    ReplyDelete
  7. Excellent work…Appreciate your work…thanks very much for sharing
    Its very Useful Docs.

    While Running Fusion Applications Repository Creation Utility (Apps RCU)

    I am facing these rcu related error.
    RCU-6130:Action failed – RCU-6135 Error while trying to execute java action


    Please Advise..

    Thanks !!

    ReplyDelete