Posted
Filed under ORACLE

Now it is called Oracle Enterprise Manager Cloud Control (previously, Grid Control).

Version: 12

Platform: OEL 6.1, x86_64 (Installed on a VM)

Requirements: Oracle Database 11g Release 2 11.2.0.3

1 - Install the database

1a- firewall and SELinux should be disabled:

# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination  
# cat /etc/selinux/config

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
# SELINUX=enforcing
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted 

#

1b - Verify that /etc/hosts contains the server's fqdns

# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
10.20.30.40    my-em-host.my.domain.com my-em-host
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

#

1c - Modified kernel parameters: added in /etc/sysctl.conf the following entries:

fs.suid_dumpable = 1
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmmni = 4096
# semaphores: semmsl, semmns, semopm, semmni
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default=4194304
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=1048586

Then called

# /sbin/sysctl -p 

1d - Added the following lines to /etc/security/limits.conf

oracle              soft    nproc   2047
oracle              hard    nproc   16384
oracle              soft    nofile  4096
oracle              hard    nofile  65536
oracle              soft    stack   10240

1e - Added groups and users:

# groupadd -g 502 oinstall
# groupadd -g 503 dba
# groupadd -g 504 oper
# groupadd -g 505 asmadmin
# groupadd -g 506 asmoper
# groupadd -g 507 asmdba
# useradd -u 503 -g oinstall -G dba,asmdba,oper oracle
# passwd oracle

1f - Create the directory for the database

# mkdir -p /u01/app/oracle/product/11.2.0/db_1
# chown -R oracle:oinstall /u01
# chmod -R 775 /u01

1g - install the following packages (use yum for this):

glibc-devel-2.12-1.25.el6.i686 ksh-20100621-6.el6.x86_64 
libaio-0.3.107-10.el6.i686 libaio-devel-0.3.107-10.el6.i686 libaio-devel-0.3.107-10.el6.x86_64 
libstdc++-4.4.5-6.el6.i686 numactl-devel-2.0.3-9.el6.x86_64

1h - login as 'oracle', add the following lines to .bash_profile:

# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
ORACLE_HOSTNAME=my-em-host.my.domain.com; export ORACLE_HOSTNAME
ORACLE_UNQNAME=orcl; export ORACLE_UNQNAME
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1; export ORACLE_HOME
ORACLE_SID=orcl; export ORACLE_SID
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH

1i - log in as 'oracle', unzip the oracle-db zips, and run 'runInstaller'

Configure Security Updates: NULL

Download Software Updates: Skip'

Installation Option: Create and configure database

System Class: Server class

Grid options: Single instance

Install type: Typical

Typical Installation: accept values; osdba group: oinstall

Create Inventory: accept default

Prerequisite checks: Installed via yum: compat-libcap1, compat-libstdc++-33, ksh, libaio-devel

Finish: run scripts as 'root':

# /u01/app/oraInventory/orainstRoot.sh  # /u01/app/oracle/product/11.2.0/db_1/root.sh 

1j - Edit /etc/oratab, set resatrt flag to 'Y':

orcl:/u01/app/oracle/product/11.2.0/db_1:Y

1k - create as root file /etc/init.d/dbora

#!/bin/sh
# chkconfig: 345 99 10
# description: Oracle auto start-stop script.
#
# Set ORA_HOME to be equivalent to the $ORACLE_HOME
# from which you wish to execute dbstart and dbshut;
#
# Set ORA_OWNER to the user id of the owner of the
# Oracle database in ORA_HOME.

ORA_HOME=/u01/app/oracle/product/11.2.0/db_1
ORA_OWNER=oracle

if [ ! -f $ORA_HOME/bin/dbstart ]
then
    echo "Oracle startup: cannot start"
    exit
fi

case "$1" in
    'start')
        # Start the Oracle databases:
        # The following command assumes that the oracle login
        # will not prompt the user for any values
        su - $ORA_OWNER -c "$ORA_HOME/bin/dbstart $ORA_HOME"
        touch /var/lock/subsys/dbora
        ;;
    'stop')
        # Stop the Oracle databases:
        # The following command assumes that the oracle login
        # will not prompt the user for any values
        su - $ORA_OWNER -c "$ORA_HOME/bin/dbshut $ORA_HOME"
        rm -f /var/lock/subsys/dbora
        ;;
esac

Then:

# chmod 750 /etc/init.d/dbora
# chkconfig --add dbora

1k - start oracle db

1l - as user 'oracle' access sqlplus / as sysdba and reset password for sys, system and sysman

2 as user oracle run:

emca -deconfig dbcontrol db -repos drop -SYS_PWD <password-SYS> -SYSMAN_PWD <password-SYSMAN>

 3 - as user oracle run sqlplus / as sysdba and:

sqlplus / AS SYSDBA

ALTER SYSTEM SET processes=300 SCOPE=SPFILE;
ALTER SYSTEM SET session_cached_cursors=200 SCOPE=SPFILE;
ALTER SYSTEM SET sga_target=2G SCOPE=SPFILE;
ALTER SYSTEM SET shared_pool_size=600M SCOPE=SPFILE;
ALTER SYSTEM SET pga_aggregate_target=1G SCOPE=SPFILE;
ALTER SYSTEM SET job_queue_processes=20 SCOPE=SPFILE;

-- May be required if using older versions of DB.
--ALTER SYSTEM SET log_buffer=10485760 SCOPE=SPFILE;
--ALTER SYSTEM SET open_cursors=300 SCOPE=SPFILE;

-- Restart the instance.
SHUTDOWN IMMEDIATE
STARTUP 

Got problems to start the database:

SQL> startup
ORA-00838: Specified value of MEMORY_TARGET is too small, needs to be at least 3072M

So, I did:

SQL> create pfile from spfile;

And edited the created file

/u01/app/oracle/product/11.2.0/db_1/dbs/initorcl.ora

and set *.memory_target=3221225472

but also remounted the devshm (as root):

# df -k
Filesystem           1K-blocks      Used Available Use% Mounted on
...
tmpfs                  1929528       528   1929000   1% /dev/shm
...
# mount -t tmpfs shmfs -o size=4g /dev/shm
# df -h
...
tmpfs                 4.0G     0  4.0G   0% /dev/shm
...
# vi /etc/fstab
...
tmpfs        /dev/shm        tmpfs    size=4g        0 0
...
#

then restarted the database:

SQL> startup pfile=/u01/app/oracle/product/11.2.0/db_1/dbs/initorcl.ora
ORACLE instance started.
Total System Global Area 3206836224 bytes
Fixed Size            2232640 bytes
Variable Size         1761611456 bytes
Database Buffers     1426063360 bytes
Redo Buffers           16928768 bytes
Database mounted.
Database opened.
SQL> 

And recreated the spfile

SQL> CREATE SPFILE FROM PFILE;

4 - As 'oracle' created the directory

/u01/app/oracle/Middleware 

4a - install:

 binutils-devel-2.20.51.0.2-5.20.el6.i686

5 - unzipped the OEM zips, and as 'oracle' user ran 'runInstaller'

5a - MOS: no email, uncheck box

5b - Software updates: Skip

5c - Pre-requisite checks: glib-devel warning, ignore and continue

5d - Install types: Create new EM -> Simple -> Middelware location:

/u01/app/oracle/Middleware 

5e - Configuration details: ... (admin password same as DB password)

5f -Warning dialog: click 'Yes' to disable stats gathering job

5g - Warnings : 'OK'

5h - Review: Click 'Install'

5i - After Installation, when pop-up indicates so, run (as root):

/u01/app/oracle/Middleware/oms/allroot.sh

(Note: it overrides all the existing files)

5j - Finishing installation:

This information is also available at: 
    /u01/app/oracle/Middleware/oms/install/setupinfo.txt
See below for information pertaining to your Enterprise Manager installation:
Use the following URL to access:
    1. Enterprise Manager Cloud Control URL: https://my-em.host.my.domain.com:7803/em
    2. Admin Server URL: https://my-em-host.my.domain.com:7103/console
The following details need to be provided during the additional OMS install:
    1. Admin Server Hostname: my-em-host.ie.oracle.com
    2. Admin Server Port: 7103
NOTE: An encryption key has been generated to encrypt sensitive data in the Management Repository. If this key is lost, all encrypted data in the Repository becomes unusable. Please run following command to backup the Management Service configuration including the emkey and keep the backup on another system:
 emctl exportconfig oms -dir <backup location>

5k - Log-In ...

5l - Accept License Agreement

Homepage Selector Screen -> Summary -> 'Preview'; 'Select As My Home'

6 - Create (as root) start/stop script /etc/init.d/emora:

#!/bin/bash

export ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1
export OMS_HOME=/u01/app/oracle/Middleware/oms
export AGENT_HOME=/u01/app/oracle/Middleware/agent/core/12.1.0.1.0

ORA_OWNER=oracle

case "$1" in
    'start')
        # Start everything

        #$ORACLE_HOME/bin/dbstart $ORACLE_HOME
        /etc/init.d/dbora start

        su - $ORA_OWNER -c "$OMS_HOME/bin/emctl start oms"

        su - $ORA_OWNER -c "$AGENT_HOME/bin/emctl start agent"
        ;;
    'stop')
        # Stop everything

        su - $ORA_OWNER -c "$OMS_HOME/bin/emctl stop oms -all"

        su - $ORA_OWNER -c "$AGENT_HOME/bin/emctl stop agent"

        #$ORACLE_HOME/bin/dbshut $ORACLE_HOME
        /etc/init.d/dbora stop
        ;;
esac

Then:

# chmod 750 /etc/init.d/emora
2014/02/10 18:06 2014/02/10 18:06