Difference between revisions of "Oracle 10g VE"

From OpenVZ Virtuozzo Containers Wiki
Jump to: navigation, search
(No difference)

Revision as of 23:59, 10 January 2007

This is just a listing of steps taken to create a fully functionaly Oracle VE.

Create the VE on the Hardware Node (HN)

vzctl create 1001 --ostemplate centos-4-i386-default vzctl set 1001 --userpasswd root:password --save vzctl set 1001 --hostname ve-oracle.example.com --save vzctl set 1001 --ipadd 192.168.0.62 --save

Reset resource limits

I decided to have max limits to avoid porblems during installation. Once the installation is done and the system left running for some time, these limits can be adjusted.

vzctl set 1001 --kmemsize 2147483647:2147483647 --save vzctl set 1001 --lockedpages 2147483647:2147483647 --save vzctl set 1001 --privvmpages 2147483647:2147483647 --save vzctl set 1001 --shmpages 2147483647:2147483647 --save vzctl set 1001 --dummy 2147483647:2147483647 --save vzctl set 1001 --numproc 2147483647:2147483647 --save vzctl set 1001 --physpages 2147483647:2147483647 --save vzctl set 1001 --vmguarpages 2147483647:2147483647 --save vzctl set 1001 --oomguarpages 2147483647:2147483647 --save vzctl set 1001 --numtcpsock 2147483647:2147483647 --save vzctl set 1001 --numflock 2147483647:2147483647 --save vzctl set 1001 --numpty 2147483647:2147483647 --save vzctl set 1001 --numsiginfo 2147483647:2147483647 --save vzctl set 1001 --tcpsndbuf 2147483647:2147483647 --save vzctl set 1001 --tcprcvbuf 2147483647:2147483647 --save vzctl set 1001 --othersockbuf 2147483647:2147483647 --save vzctl set 1001 --dgramrcvbuf 2147483647:2147483647 --save vzctl set 1001 --numothersock 2147483647:2147483647 --save vzctl set 1001 --dcachesize 2147483647:2147483647 --save vzctl set 1001 --numfile 2147483647:2147483647 --save vzctl set 1001 --numiptent 2147483647:2147483647 --save

Start the VE

vzctl start 1001


Update /etc/resolv.conf on the VE

search example.com nameserver <ip address of your name server>


Install Required Packages

vzyum 1001 install binutils compat-db gcc gcc-c++ glibc glibc-common libstdc++ libstdc++-devel gnome-libs make pdksh sysstat libaio xscreensaver openmotif21 vzyum 1001 install xorg-x11-xfs usbutils urw-fonts shared-mime-info perl-libwww-perl perl-XML-Parser perl-URI perl-HTML-Tagset perl-HTML-Parser patch vzyum 1001 install lvm2 intltool libIDL libart_lgpl libbonobo xterm libcap libcroco libgnomecanvas libexif libgnomecups libgnomeprint22 libsoup libwnck libxklavier


Check the following rpms are installed on the VE

vzctl exec 1001 rpm -q binutils gcc gcc-c++ glibc gnome-libs libstdc++ libstdc++-devel make pdksh sysstat xscreensaver libaio


Add Oracle User/Group

vzctl exec 1001 /usr/sbin/groupadd oinstall vzctl exec 1001 /usr/sbin/groupadd dba vzctl exec 1001 /usr/sbin/useradd -m -g oinstall -G dba oracle vzctl exec 1001 id oracle

Set Password for the Oracle user

vzctl exec 1001 passwd oracle

Create Directories for Oracle Home/Data and the download directory

vzctl exec 1001 mkdir /home/oracle/10gR2_db vzctl exec 1001 mkdir -p /u01/app/oracle/product/10.2.0/db_1 vzctl exec 1001 mkdir /u01/app/oracle/oradata vzctl exec 1001 chown -R oracle:oinstall /u01/app/oracle /home/oracle/10gR2_db vzctl exec 1001 chmod -R 775 /u01/app/oracle /home/oracle/10gR2_db vzctl exec 1001 ln -s /usr/lib/libstdc++.so.6.0.3 /usr/lib/libstdc++.so.5

Put these values in /etc/sysctl.conf on the HN

kernel.shmall = 2097152 kernel.shmmax = 536870912 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.wmem_default=262144 net.core.rmem_max=262144 net.core.wmem_max=262144

Execute on the HN

/sbin/sysctl -p


At this point the VE is ready for Oracle installation. We take a backup of the VE at this point in case we need to rebuild the system or do a clean Oracle install

Shutdown the VE and take a backup

vzctl stop 1001 cd /u01/backups tar czpvf ve-1001-preOracle.tar.gz /vz/private/1001/ /etc/vz/conf/1001.conf

Start VE again

vzctl start 1001

Copy the downloaded Oracle zip file to the VE and change its ownership to oracle on the VE

cp /u01/software/10201_database_linux32.zip /vz/private/1001/home/oracle/10gR2_db/ vzctl exec 1001 chown oracle:oinstall /home/oracle/10gR2_db/10201_database_linux32.zip

Now login as oracle on the ve-1001

cd /home/oracle/10gR2_db unzip 10201_database_linux32.zip cd database/ export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1 export DISPLAY=192.168.0.149:0

Make sure u can run xterm

./runInstaller

When prompted to run scripts as root. Login as root and execute

export DISPLAY=192.168.0.149:0 /u01/app/oracle/oraInventory/orainstRoot.sh /u01/app/oracle/product/10.2.0/db_1/root.sh

Update oracle's profile with the following

cd vi /home/oracle/.bashrc export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1 export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH export PATH=$ORACLE_HOME/bin:$PATH export ORACLE_SID=orcl


Delete installation files (optional)

cd /home/oracle/10gR2_db rm -rf database

Time to take another backup of the VE on the HN node.

This backup will allow you to restore the VE to the point where no database has yet been created.

vzctl stop 1001 cd /u01/backups tar czpvf ve-1001-postOracleSoftware.tar.gz /vz/private/1001/ /etc/vz/conf/1001.conf


Start VE vzctl start 1001

Login as oracle and create the database

export DISPLAY=192.168.0.149:0 dbca


Create listener

netca

Now take another backup on the HN node

vzctl stop 1001 cd /u01/backups tar czpvf ve-1001-postOracleDatabase.tar.gz /vz/private/1001/ /etc/vz/conf/1001.conf