설치환경
laptop asus f6ve
CPU : Intel  Mobile Core 2 Duo T8300 Penryn @2.4GHz
RAM : 2GB
GPU : ATI Mibilty Radeon HD 4570
HDD : 250GB

ubuntu 10.04
http://www.ubuntu.com/download/ubuntu/download
Orcacle 11g
 

1. update manager를 통한 기본 업데이트를 한다

2. 오라클을 설치에 앞서 환경을 먼저 확인해 본다.

- 물리 메모리는 최소 1GB이상 일것

$ grep MemTotal /proc/meminfo


- 물리 메모리의 1.5배정도 가지는 swap 확인한다 (대략 2GB정도)

$ grep SwapTotal /proc/meminfo


- shared 메모리도 중요하다 확인할것

$ df -kh /dev/shm/


- 리마운트를 하고 다시한번 확인해본다.

$ mount -o remount /dev/shm

$ df -kh /dev/shm/


3. 네트워크 연결을 설정한다.

- /etc/hostname를 확인한다.

- /etc/hosts 그리고 반드시 다음과 같은 line이 들어갈것.

127.0.0.1 localhost.localdomain localhost


4. 우분투 패키지 설치

$ sudo apt-get install gcc make binutils gawk x11-utils rpm alien ksh lsb-rpm unzip build-essential libaio1 lesstif2 libmotif3


5. 유저와 그룹 생성하기

$ sudo grep oinstall /etc/group

$ sudo grep dba /etc/group

$ sudo grep nobody /etc/group


$ sudo addgroup --system oinstall

$ sudo addgroup --system dba

$ sudo useradd -r -g oinstall -G dba -m -s /bin/bash -d  /home/oracle oracle


$ sudo id oracle

$ sudo id nobody


6. 오라클은 공식적으로 우분투를 지원하지 않기 때분에 fake해줄 필요가 있다.
이것은 좀더 레드햇과 가까운 레이아웃을 만들어 준다.

$ sudo ln -s /usr/bin/awk /bin/awk

$ sudo ln -s /usr/bin/rpm /bin/rpm

$ sudo ln -s /usr/bin/basename /bin/basename

$ sudo mkdir /etc/rc.d

$ for i in 0 1 2 3 4 5 6 S ; do sudo ln -s /etc/rc$i.d /etc/rc.d/rc$i.d ; done


$ sudo echo 'Red Hat Linux release 4' > /etc/redhat-release


$ cd /bin

$ ls -l /bin/sh

lrwxrwxrwx 1 root root 4 2008-11-02 21:33 /bin/sh -> dash

$ sudo ln -sf /bin/bash /bin/sh

$ ls -l /bin/sh

lrwxrwxrwx 1 root root 4 2008-11-02 22:34 /bin/sh -> bash


7. 커널 파라메터 설정하기

-existing setup을 확인한다.

$ sysctl -a | grep sem

$ sysctl -a | grep shm

$ sysctl -a | grep file-max

$ sysctl -a | grep ip_local_port_range


- /etc/sysctl.conf 의 마지막 부분에 추가한다.

fs.file-max = 6815744

fs.aio-max-nr = 1048576

kernel.shmall = 2097152

kernel.shmmax = 2147483648

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

net.core.rmem_default = 4194304

net.core.rmem_max = 4194304

net.core.wmem_default = 1048576

net.core.wmem_max = 1048576

net.ipv4.ip_local_port_range = 9000 65500


- 다음과 같은 커맨드를 실행한다.

$ sudo sysctl -p


- /etc/security/limits.conf 의 마지막 부분에 추가한다.

oracle          soft    nproc           2047

oracle          hard    nproc           16384

oracle          soft    nofile          1024

oracle          hard    nofile          65536


- /etc/pam.d/login 의 마지막 부분에 추가한다.

session    required     /lib/security/pam_limits.so


- /etc/pam.d/su 의 마지막 부분에 추가한다.

session    required   pam_limits.so


8. 디렉토리 생성하기

$ sudo mkdir -p /opt/ora/app/oracle

$ sudo mkdir -p /opt/ora/oradata

$ sudo chown -R oracle:oinstall /opt/ora/

$ sudo chmod -R 775 /opt/ora/


9. 오라클 유저 환경 설정하기

- ~oracle/.profile 의 마지막 부분에 추가한다.

umask 022

export ORACLE_BASE=/opt/ora/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1

export ORACLE_SID=orcl

export NLS_LANG=.AL32UTF8

unset TNS_ADMIN

if [ -d "$ORACLE_HOME/bin" ]; then

    export PATH="$ORACLE_HOME/bin:$PATH"


fi

if [ -d "$ORACLE_HOME/lib" ]; then

    export LD_LIBRARY_PATH="$ORACLE_HOME/lib"

fi


10. 오라클 설치 전 마지막 준비

$ xhost +

$ sudo su - oracle


- 준비한 oracle 11g를 다음과 같은 디렉토리에 복사 후 압축을 푼다.

$ cp linux_11gR2_database_*.zip ~oracle

$ unzip linux_11gR2_database_1of2.zip

$ unzip linux_11gR2_database_2of2.zip


- 재부팅을 하고 x윈도우의 유저는 생성한 oracle 유저로 로그인한다.

- 오라클 설치 시 글씨 깨짐을 방지하기 위해 언어설정을 해준다.

$ export LANG=c


11. 오라클 11g 설치

- oracle 계정으로 설치할것

$ cd database

$ ./runInstaller




- 설치 환경을 마치게 되면 패키지 ignored가 나타나게 되는 all ignore를 체크한다.
- 설치 과정중 60%정도에 에러가 나면 continue버튼을 클릭한다.

12. 자동 오라클 부팅 시스템 설정

- /etc/oratab 의 마지막 부분에 다음을 추가한다.

orcl:/opt/ora/app/oracle/product/11.2.0/dbhome_1:Y


- /etc/init.d/oracle 의 마지막 부분에 다음을 추가한다.

#!/bin/bash

#

# Run-level Startup script for the Oracle Instance and Listener

#

# chkconfig: 345 91 19

# description: Startup/Shutdown Oracle listener and instance


export ORACLE_BASE=/opt/ora/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1

export PATH=$ORACLE_HOME/bin:$PATH

export LD_LIBRARY_PATH=$ORACLE_HOME/lib

export ORA_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1

export ORA_OWNR=oracle


# if the executables do not exist -- display error


if [ ! -f $ORA_HOME/bin/dbstart -o ! -d $ORA_HOME ]

then

        echo "Oracle startup: cannot start"


        exit 1

fi


# depending on parameter -- startup, shutdown, restart

# of the instance and listener or usage display


case "$1" in

    start)

        # Oracle listener and instance startup

        echo -n "Starting Oracle: "

        su - $ORA_OWNR -c "$ORA_HOME/bin/dbstart $ORA_HOME"

        su - $ORA_OWNR -c "$ORA_HOME/bin/lsnrctl start"


        #Optional : for Enterprise Manager software only

        su - $ORA_OWNR -c "$ORA_HOME/bin/emctl start dbconsole"


        touch /var/lock/oracle

        echo "OK"

        ;;

    stop)

        # Oracle listener and instance shutdown

        echo -n "Shutdown Oracle: "


        #Optional : for Enterprise Manager software only

        su - $ORA_OWNR -c "$ORA_HOME/bin/emctl stop dbconsole"


        su - $ORA_OWNR -c "$ORA_HOME/bin/lsnrctl stop"

        su - $ORA_OWNR -c "$ORA_HOME/bin/dbshut $ORA_HOME"


        rm -f /var/lock/oracle

        echo "OK"

        ;;

    reload|restart)

        $0 stop

        $0 start

        ;;

    *)

        echo "Usage: $0 start|stop|restart|reload"

        exit 1

esac

exit 0


- 퍼미션도 중요하다

chmod 755 /etc/init.d/oracle


- 다음 스크립트를 설치하게 되면 시스템 부팅하는 동안 오라클이 시작하게 된다.

update-rc.d oracle defaults 99 01





* 기초적인 리눅스 명령어

- 유저 변경

$ su - username


- 루트 유저

$ sudo -s


- 유저 패스워드 변경

$ passwd username



 * 오라클 startup

$ su - oracle
$ lsnrctl start
$ sqlplus /nolog 


# connect / as sysdba
# startup


* 오라클 shutdown

# shutdown immediate
# exit 


* scott과 hr 계정 unlock

# alter user scott identified by tiger account unlock;
# alter user hr identified by hr account unlock;




참고 사이트
http://csdiforge.wordpress.com/2010/09/16/how-to-install-oracle-database-11g-r2-on-ubuntu-10-04/ 
by ARuKe 2011. 12. 10. 17:09