Thursday, 5 February 2015

Oracle 11g Installations Steps:


 Oracle 11g Installations Steps:

Oracle 11g software installation on RHEL 5

Set Kernel Parameters
# vi /etc/sysctl.conf
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
# sysctl -p
Set User Limits
# /etc/security/limits.conf
oracle              soft    nproc   2047
oracle              hard    nproc   16384
oracle              soft    nofile  1024
oracle              hard    nofile  65536

# vi /etc/pam.d/login
session    required     pam_limits.so
#  /etc/selinux/config
SELINUX=disabled

Install OS Packages
# rpm -Uvh binutils-2.*
# rpm -Uvh compat-libstdc++-33*
# rpm -Uvh compat-libstdc++-33*.i386.rpm
# rpm -Uvh elfutils-libelf*
# rpm -Uvh gcc-4.*
# rpm -Uvh gcc-c++-4.*
# rpm -Uvh glibc-2.*
# rpm -Uvh glibc-common-2.*
# rpm -Uvh glibc-devel-2.*
# rpm -Uvh glibc-headers-2.*
# rpm -Uvh ksh*
# rpm -Uvh libaio-0.*
# rpm -Uvh libaio-devel-0.*
# rpm -Uvh libgomp-4.*
# rpm -Uvh libgcc-4.*
# rpm -Uvh libstdc++-4.*
# rpm -Uvh libstdc++-devel-4.*
# rpm -Uvh make-3.*
# rpm -Uvh sysstat-7.*
# rpm -Uvh unixODBC-2.*
# rpm -Uvh unixODBC-devel-2.*

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


# su - oracle
$ vi .bash_profile
export ORACLE_UNQNAME=DB11G
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=DB11G;
export PATH=/usr/sbin:$PATH:$HOME/bin
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH= $ORACLE_HOME/JRE: $ORACLE_HOME/jlib
                                                                            :ORACLE_HOME/rdbms/jlib
$ exit
# mkdir /software/11gDatabase
Insert Oracle 11g Software Disk1
# mount /dev/cdrom   /mnt
# cp -r  *  /software/11gDatabase
# cd /
# eject
Insert Oracle 11g Software Disk2
# mount /dev/cdrom   /mnt
# cp -r  *  /software/11gDatabase
# cd /
# eject

# unzip linux.x64_11gR2_database_1of2.zip
# unzip linux.x64_11gR2_database_2of2.zip
# chown -R oracle:oinstall  /software
# chmod -R 755  /software
# init 6
Login as Oracle user
$ cp /software/11gDatabase/Disk1
$ ./runInstaller

1. Configure Security Updates à Click  “Next

2. Select installation option – Choose “Create and configure a database” then click “Next

3. System Class – Choose “Server Class” then click “Next

4. Node Selection – Choose “Single instance database installation” then click “Next

5. Select Install Type – Choose “Typical install” then click “Next

6. Typical install configuration – Click “Next

7. Create Inventory – Click “Next

8. Perform Prerequisite Checks – Click “Next

9. Summary – Click “Next

10. Install Product

11. Database configuration Assistant – click “Ok”





12. Execute configuration Scripts – Click “Ok

13. Finish – click “Close”

RMAN Database Cloning:


RMAN Database Cloning:



               Target DB                                                                 Auxiliary DB  
 192.168.1.100                                                              192.168.1.101

  PROD                                                                          TEST
 <--------------------------------
    <--------------------------------   

Target DB Server: 

$export ORACLE_SID=PROD
$rman target / catalog rman/rman123@apps123
RMAN> backup database;
RMAN> backup archivelog all;
RMAN> backup current controlfile;
RMAN> backup spfile;
RMAN> resync catalog;
RMAN> exit;

Auxiliary DB Server:

$ mkdir /u01/admin/test
$ cd /u01/admin/test
$mkdir pfile bdump udump cdump create
$mkdir /u01/oradata/test

Target DB Server:

$scp –r $ORACLE_HOME/dbs/initprod.ora oracle@192.168.1.101:/u01/admin/test/pfile

Target DB Server:
$mv /u01/admin/test/pfile/initprod.ora /u01/admin/test/pfile/inittest.ora
$ vi /u01/admin/test/pfile/inittest.ora
      db_unique_name=test
      db_name=test
      control_files=’/u01/oradata/test/control01.ctl’
      background_dump_dest=/u01/admin/test/bdump
      user_dump_dest=/u01/admin/test/udump
      core_dump_dest=/u01/admin/test/cdump
      audit_dump_dest==/u01/admin/test/adump
      db_file_name_convert=(‘/opt/oradata/prod’,’/u01/oradata/test’)
      log_file_name_convert=(‘/opt/oradata/prod’,’/u01/oradata/test’)

$export ORACLE_SID=test
$orapwd file=$ORACLE_HOME/dbs/orapwtest password=sys
$ sqlplus “ / as sysdba”
SQL> startup nomount pfile=’/u01/admin/test/pfile/inittest.ora’;
SQL> create spfile from pfile=’/u01/admin/test/pfile/inittest.ora’;
SQL> shutdown immediate;
SQL> startup nomount;

$cat>> $ORACLE_HOME/network/admin/tnsnames.ora
 test=
      (DESCRIPTION=
          (ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.101)(PORT=1521))
            (CONNECT_DATA=
               (SERVICE_NAME=test)
            )
       )

Target DB SERVER:

$cat>> $ORACLE_HOME/network/admin/tnsnames.ora
 test123=
      (DESCRIPTION=
          (ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.101)(PORT=1521))
            (CONNECT_DATA=
               (SERVICE_NAME=test)
            )
       )

$ export ORACLE_SID=PROD
$ rman target /
RMAN> connect catalog rman/rman123@apps123
RMAN> connect auxiliary sys/sys@test123
RMAN> run {
                         Set until time to_date(‘2013-Jan-22 10:10:00’);
                         #set until scn 12345;
                         #set until sequence 170;
                         Duplicate target database to test;
                      }
RMAN> exit;

Oracle database 10 installation on red hat enterprise linux

Oracle database 10 installation on red hat enterprise linux 5:

Login As root user

Set Kernel parameters


# vi /etc/sysctl.conf
      kernel.shmall = 2097152
      kernel.shmmax = 2147483648
      kernel.shmmni = 4096
      kernel.sem = 250       32000    100         128
      fs.file-max = 65536
      net.ipv4.ip_local_port_range = 1024                 65000
      net.core.rmem_default = 262144
      net.core.rmem_max = 262144
      net.core.wmem_default = 262144
      net.core.wmem_max = 262144
# sysctl –p

Set Security Limits

# vi /etc/security/limits.conf
           oracle         soft        nproc    16384   
           oracle         hard       nproc    16384
           oracle         soft        nofile    65536
           oracle         hard       nofile    65536

Set Remote Authentication
# vi /etc/pam.d/login
                     session            required              pam_limits.so

Disable SELINUX
# vi /etc/selinux/config
                      SELINUX=disabled

Check Existing Packages
# rpm –qa setarch-2*
# rpm –qa make-3*
# rpm –qa glibc-2*
# rpm –qa libaio-0*
# rpm –qa compat-libstdc++-33-3*
#rpm –qa compat-gcc-34-3*
# rpm –qa compat-gcc-34-c++-3*
# rpm –qa gcc-4*
# rpm –qa libXp-1*
# rpm –qa openmotif-2*
# rpm –qa compat-db-4*
# rpm –qa cpp*
# rpm –qa binutils*

Install Packages
From Redhat AS5 Disk1
# mount  /dev/cdrom  /mnt
# cd  /mnt/Enterprise/Server
# rpm  -Uvh  setarch-2*
# rpm  -Uvh  make-3*
# rpm  -Uvh  glibc-2*
# rpm  -Uvh  libaio-0*
#cd  /
# eject

From Redhat AS5 Disk2
# mount  /dev/cdrom  /mnt
# cd  /mnt/Enterprise/Server
# rpm  -Uvh  compat-libstdc++-33-3*
#rpm  -Uvh compat-gcc-34-3*
# rpm  -Uvh  compat-gcc-34-c++-3*
# rpm  -Uvh  gcc-4*
# rpm  -Uvh  libXp-1*
# cd /
# eject
From Redhat AS5 Disk 3
# mount               /dev/cdrom       /mnt
# cd        /mnt/Enterprise/Server
# rpm  -Uvh openmotif-2*
# rpm  -Uvh compat-db-4*
# cd /
# eject

# groupadd oinstall
# useradd oracle –g oinstall
# passwd oracle
# mkdir                 -p            /opt/oracle/product/10.2.0/db_1
# chown               -R            oracle:oinstall    /opt
#vi  /etc/redhat-release
        redhat-4
#mkdir                  -p            /software/Disk1

Insert  10g  s/w CD to Drive
# mount  /dev/cdrom    /mnt
# cd  /mnt
# cp        -r             *             /software/Disk1
#cd  /
# eject

# chown               -R            oracle:oinstall    /software

Such user to oracle
# su  - oracle
$ pwd
        /home/oracle
$ vi.bash_profile

                 export  ORACLE_BASE=/opt/oracle
               export  ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
               export  ORACLE_SID=vanish
               export  PATH=$ORACLE_HOME/bin:$PATH
               export  LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
               export  CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

$ exit
# init  6

Login As “oracle” user
                $ cd  /software/Disk1/database/
                $ ./runInstaller

Screen 1: Select installation method
ð  Advanced Installation click  è next

Screen 2: Specify Inventory Directory and Credentials
ð  Next
Screen 3: select installation type
ð  Enterprise edition  è next
Screen 4: Specify Home details
ð  Next
Screen 5: Product-Specific Prerequisite checks
ð  Next
Screen 6: Select Configuration option
ð  Create database  è next
Screen 7: Select database configuration
ð  Genral purpose  ènext
Screen 8: Specify DB configuration options
ð  Next
Screen 9: Select management option
ð  Next
Screen 10: Specify Database storage option
ð  File system  è next
Screen 11: Specify Backup and Recovery options
ð  Next
Screen 12: Specify database Schema passwords
ð  Use same password for all the accounts è next
Screen 13: Summary
ð  Install
Screen 14:Install
Screen 15:Configuration  Assistants
Screen 16: Database Configuration Assistant
Screen 17: Database configuration Assistant password management

ð  ok

DATA MIGRATION FROM 8.1.7.0 TO 10.2.0.1

DATA MIGRATION FROM 8.1.7.0 TO 10.2.0.1



 (One server to another server to be migrate DB – Using export/import)
Pre-check and post-check:

SQL> select sum(bytes)/1024/1024/1024 from dba_data_files;

SQL> select sum(bytes)/1024/1024/1024 from dba_segments;
SQL> select tablespace_name,sum(bytes)/1024/1024 from dba_data_files group by tablespace_name;
SQL> select tablespace_name,sum(bytes)/1024/1024 from dba_segments group by tablespace_name;
SQL> select  count(*) from dba_users where username not in (‘SYS’,’SYSTEM’);
SQL> select owner, count(*) from dba_tables where owner not in (‘SYS’,’SYSTEM’) group by owner;
SQL> select  owner,count(*) from dba_indexes where owner not in (‘SYS’,’SYSTEM’) group by owner;
SQL> select owner, count(*) from dba_constraints where owner not in (‘SYS’,’SYSTEM’) group by owner;
SQL> select owner, count(*) from dba_objects  where owner not in (‘SYS’,’SYSTEM’) group by owner;
SQL> select ownwer, count(*) from dba_tables where owner not in (‘SYS’,’SYSTEM’)  and status <> ‘VAlID’ group by owner; Notes:Export è source db check pre check
Importè destination db check post check

·         10g db create with same 8i structure, what r the DF size,tbs name & size to be create in same 10g new server.
 
Target server 8.1.7.4.0
 $.oraenvORACLE_SID:prod
$ sqlplus “ / as sysdba”
SQL> shutdown immediate;
$ lsnrctl stop <Listener_name>
$ sqlplus “ / as sysdba”
SQL> startup restrict
SQL> exit;
$ exp \’/ as sysdba \’FULL=Y file=full_prod.dmp BUFFER=157286400 STATISTICS=NONE LOG=full_prod.log (Dump file only to be copy 8i to 10g)
$ scp –r full_prod.dmp oracle@192.168.1.102:/opt/oradata Destination Server 10.2.0.1.0

$.oraenvORACLE_SID:prod$ sqlplus “ / as sysdba”

SQL> select instance_name,status from v$instance; 
SQL> select tablespace_name,sum(bytes)/1024/1024 from dba_data_files group by tablespace_name; (8i what r the tbs there that tbs size must be equal or not to be check in 10g.)



$ imp \’/ as sysdba \’FULL=Y file=full_prod.dmp buffer=157286400 statistics=none log=full_prod.log