jazznuno

Install Oracle 10g On Centos 5.5

leave a comment »

Udah lama pengen belajar database oracle 10g, coba install database oracle 10g walaupun sudah ada 11g, banyak yang mengatakan ini database canggih saya sendiri belum pernah coba emang ga bisa alias masih belajar, khusus di Linux tahapan installasi lebih rumit, tapi cukup menantang, ya coba aja kalo ga di coba ga bakalan tau.

Sedikit tentang oracle, oracle adalah perusahaan besar yang di belakangnya banyak mengeluarkan produk database dan software ERP kelas Enterprise dan sekarang perusahaan ini udah jadi rasaksa setelah membeli Sun Microsystem yang di dalamnya ada Sun Sparc jajaran server kelas atas, Solaris, Java, PHP dan MySql. Kenapa oracle ngotot mau membeli Sun Microsystem satu di antaranya adalah Java yang ada di sun, siapa yang ga kenal dengan java bahasa pemograman ini sudah masuk ke berbagai device dari handphone sampai software kelas enterprise menggunakan java, dan oracle 10g sendiri di tulis dengan bahasa pemograman java, hampir bisa di bilang oracle merajai segment kelas enterprise dan baru-baru ini lagi ribut ama google gara-gara android.

Kembali ke Installasi saya gunakan CentOs 5.5 didapat dari majalah linux dan tutorial instalasi oracle juga bertebaran cukup masukan kalimat “install oracle 10g on Centos” pada om google maka akan muncul tutorialnya

Instalasi CentOS 5.5 tidak terlalu sulit sebagai referensi saya gunakan VirtualBox dan saya buat

  1. Memory 512 MB (kalo bisa lebih dari itu)
  2. Hardisk 40GB saya bagi menjadi 2 partisi dengan rincian
    1. root 36 GB
    2. swap 4 GB

Untuk paket software yang diinstall adalah sebagai berikut:

Applications – Editors, Graphical Internet

Development – Development Libraries, Development Tools, Legacy Software Development, X Software Development

Base System – Administration Tools, Base, Legacy Software Support, System Tools, X Window System.

nonaktifkan selinux dan firewall


Setelah selesai instalasi, masih harus diinstal paket libXp-*. Paket-paket tersebut (libXp dan libXp-devel) terdapat pada DVD installer dari CentOS 5.5

# rpm -Uvh libXp-1.0.0-8.1.el5 libXp-devel-1.0.0-8.1.el5

Saya juga edit hosts tapi ini tidak harus karena dengan host default juga ga masalah

# vi /etc/hosts

127.0.0.1

192.168.0.107

localhost.localdomain localhost

oraserv.infopratama.com oraserv

tambahkan pada bagian bawah profile

# vi /etc/profile

if [ $USER = “oracle” ]; then

if [ $SHELL = “/bin/ksh” ]; then

ulimit -p 16384

ulimit -n 65536

else

ulimit -u 16384 -n 65536

fi

fi

tambahkan juga pada sysctl.conf

# vi /etc/sysctl.conf

fs.file-max=65536

kernel.shmmni=4096

kernel.sem=250 32000 100 128

net.core.rmem_default=262144

net.core.rmem_max=262144

net.core.wmem_default=262144

net.core.wmem_max=262144

net.ipv4.ip_local_port_range=1024 65000

Jalan perintah

# sysctl -p

untuk load setting

Edit limits.conf. Tambahkan baris-baris berikut:

# vi /etc/security/limits.conf

*    soft nproc 2047

*    hard nproc 16384

*    soft nofile 1024

*    hard nofile 65536

Tambahkan juga pada login

# vi /etc/pam.d/login file

session required /lib/security/pam_limits.so

session required pam_limits.so

Ganti CentOS release 5.5 (Final) pada redhat-release dengan isi sebagai berikut:

# vi /etc/redhat-realease

redhat-4

Group yang diperlukan adalah dba dan oinstall. User yang akan memiliki instalasi ini adalah oracle dan merupakan anggota group oinstall (group utama) dan dba (group tambahan).

# groupadd dba

# groupadd oinstall

# useradd -g oinstall -d /home/oracle -G dba oracle

# passwd oracle

Buatlah direktory install

# mkdir -p /u01/app/oracle/product/10.2.0/db_1

# chown -R oracle:oinstall /u01

# chmod -R 775 /u01

Kemudian login sebagai user oracle dan tambahkan pada bagian bawah .bash_prifile

# vi /home/oracle/.bash_profile

TMP=/tmp; export TMP

TMPDIR=$TMP; export TMPDIR

ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE

ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1; export ORACLE_HOME

ORACLE_SID=orcl; export ORACLE_SID

ORACLE_TERM=xterm; export ORACLE_TERM

PATH=/usr/sbin:$PATH; export PATH

PATH=$HOME/bin:$ORACLE_HOME/bin:$PATH; export PATH

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH

CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export

lakukan restart system untuk menerapkan setting environment

Hebatnya lagi walaupun property Database oracle 10g bisa didapat secara gratis tetapi jika untuk keperluan bisnis harus bayar, download oracle 10g di http://download.oracle.com/otn/linux/oracle10g/10201/10201_database_linux32.zip

saya letakan 10201_database_linux32.zip di /u01/

ubah kepemilikannya

# chown oracle 10201_database_linux32.zip

Kemudian extrac

# unzip 10201_database_linux32.zip

Lakukan install sebagai user oracle

$ cd /u01/database

$ ./runInstaller

Starting Oracle Universal Installer…

Checking installer requirements…

Checking operating system version: must be redhat-3, SuSE-9, redhat-4, UnitedLinux-1.0, asianux-1 or asianux-2

Passed

All installer requirements met.

Preparing to launch Oracle Universal Installer from /tmp/OraInstall2010-08-19_11-11-53PM. Please wait …[oracle@oraserv oracle]$

Pilih Basic Installation, kemudian isikan:

Oracle Home Location: “/u01/app/oracle/product/10.2.0/db_1″

Installation Type: “Enterprise Edition 1.3 GB”

UNIX DBA Group: “dba”

Centang pada “Create Starter Database”, isikan Global Database Name (“orcl” — sesuai dengan environment variable ORACLE_SID pada .bash_profile). Isikan juga passwordnya

Selanjutnya hanya mengikuti saja sampai proses selesai, proses installnya cukup lama mungin karena memory terbatas

di akhir proses install kita mendapatkan konfirmasi

setelah next kita haruskan mengeksekusi dua srcrip

/u01/app/oracle/oraInventory/orainstRoot.sh

/u01/app/oracle/product/10.2.0/db_1/root.sh


# cd /u01/app/oracle/oraInventory/

# ./orainstRoot.sh

Changing permissions of /u01/app/oracle/oraInventory to 770.

Changing groupname of /u01/app/oracle/oraInventory to oinstall.

The execution of the script is complete

# cd oracle/product/10.2.0/db_1/

# ./root.sh

Running Oracle10 root.sh script…

The following environment variables are set as:

ORACLE_OWNER= oracle

ORACLE_HOME= /u01/app/oracle/product/10.2.0/db_1

Enter the full pathname of the local bin directory: [/usr/local/bin]:

Copying dbhome to /usr/local/bin …

Copying oraenv to /usr/local/bin …

Copying coraenv to /usr/local/bin …

Creating /etc/oratab file…

Entries will be added to the /etc/oratab file as needed by

Database Configuration Assistant when a database is created

Finished running generic part of root.sh script.

Now product-specific root actions will be performed.

The following J2EE Applications have been deployed and are accessible at the URLs listed below.

iSQL*Plus URL:

http://servdbora.infopratama.com:5560/isqlplus

iSQL*Plus DBA URL:

http://servdbora.infopratama.com:5560/isqlplus/dba

Enterprise Manager 10g Database Control URL:

http://servdbora.infopratama.com:1158/em


Tahapan istallasi sudah selesai kemudian coba untuk menjalankan database, login sebagai user oracle

$ oraenv

ORACLE_SID = [orcl] ?

$ dbstart

Failed to auto-start Oracle Net Listene using /ade/vikrkuma_new/oracle/bin/tnslsnr

Wah ternyata failed, karena ini adalah database yang sudah cukup lama jadi saya yakin banyak yang sudah fix dengan masalah ini lagi-lagi saya gunakan jasa om google saya copas errornya di google dan ketemu di http://www.riccardoriva.com/archives/168 yang mengatakan anda harus edit scrip dbstart. pertanyaannya ada dimana dbstart ?

agar pencarian lebih cepat kita cari dengan

# find / -name dbstart

akhirnya muncul juga tuh /u01/app/oracle/product/10.2.0/db_1/bin/dbstart

langsung aja ke TKP gan edit dbstart

# vi /u01/app/oracle/product/10.2.0/db_1/bin/dbstart

…….

## Set this to bring up Oracle Net Listener

ORACLE_HOME_LISTNER=/ade/vikrkuma_new/oracle

ini dia masalahnya langsung aja ganti dengan oracle home directori kita menjadi

## Set this to bring up Oracle Net Listener

ORACLE_HOME_LISTNER=/u01/app/oracle/product/10.2.0/db_1/

Kemudian coba restart system

$ dbstart

Processing Database instance “orcl”: log file /u01/app/oracle/product/10.2.0/db_1/startup.log

$ lsnrctl start

LSNRCTL for Linux: Version 10.2.0.1.0 – Production on 19-AUG-2010 22:05:53

Copyright (c) 1991, 2005, Oracle. All rights reserved.

TNS-01106: Listener using listener name LISTENER has already been started

$ emctl start dbconsole

TZ set to Asia/Jakarta

Oracle Enterprise Manager 10g Database Control Release 10.2.0.1.0

Copyright (c) 1996, 2005 Oracle Corporation. All rights reserved.

http://localhost:1158/em/console/aboutApplication

Starting Oracle Enterprise Manager 10g Database Control …… started.

——————————————————————

Logs are generated in directory /u01/app/oracle/product/10.2.0/db_1/oraserv_orcl/sysman/log

Kemudian buka browser isi http://localhost:1158/em/

User Name : sys

Password : xxxxxx

Connect As : SYSDBA

ternyata masih ada error

ORA-12541 & ORA-12505: TNS:listener does not currently know of SID given in connect descriptor

Edit file

# vi /u01/app/oracle/product/10.2.0/db_1/network/admin/tnsnames.ora

# vi /u01/app/oracle/product/10.2.0/db_1/network/admin/listener.ora

ganti hostname anda dengan ip

$ tnsping 192.168.0.107

TNS Ping Utility for Linux: Version 10.2.0.1.0 – Production on 20-AUG-2010 05:13:48

Copyright (c) 1997, 2005, Oracle. All rights reserved.

Used parameter files:

/u01/app/oracle/product/10.2.0/db_1/network/admin/sqlnet.ora

Used EZCONNECT adapter to resolve the alias

Attempting to contact (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=192.168.0.107))(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.0.107)(PORT=1521)))

OK (0 msec)

Selamat Mencoba

Advertisements

Written by jazznuno

August 23, 2010 at 23:02

Posted in Oracle

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: