글
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/
RECENT COMMENT