본문 바로가기
서버구축 (WEB,DB)

리눅스 환경 Oracle 설치 버그

by 날으는물고기 2009. 6. 14.

리눅스 환경 Oracle 설치 버그

please find the installation given below

===========================================================

Download the following software:

Enterprise Manager Downloads
For convenience you may want to download the agent distribution separately. If you are monitoring servers on different platforms the relevant agents must be downloaded.

Unpack Files
First unzip the grid control installation files:

unzip Linux_Grid_Control_full_102010_disk1.zip
unzip Linux_Grid_Control_full_102010_disk2.zip
unzip Linux_Grid_Control_full_102010_disk3.zip
Hosts File
The /etc/hosts file must contain a fully qualified name for the server:

<IP-address> <fully-qualified-machine-name> <machine-name>
Set Kernel Parameters
Modify the /etc/sysctl.conf file to include the lines appropriate to your operating system:

# Red Hat Enterprise Linux 3.0 and CentOS 3.x
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.shmall = 2097152
kernel.shmmin = 1
kernel.shmseg = 10
# semaphores: semmsl, semmns, semopm, semmni
kernel.sem = 250 32000 100 128
fs.file-max = 65536

# Red Hat Enterprise Linux 4.0 and CentOS 4.x
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.shmall = 2097152
# semaphores: semmsl, semmns, semopm, semmni
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
Run the following command to change the current kernel parameters:

/sbin/sysctl -p
Disable secure linux by editing the /etc/selinux/config file, making sure the SELINUX flag is set as follows:

SELINUX=disabled
Alternatively, this alteration can be done using the GUI tool (Applications > System Settings > Security Level). Click on the SELinux tab and disable the feature.

Setup
The documentation states that the following packages are required by the relevant operating systems:

# Red Hat Enterprise Linux 3.0 and CentOS 3.x
glibc-2.2.4-31.7
make-3.79
binutils-2.11.90.0.8-12
gcc-2.96
openmotif21-2.1.30-11

# Red Hat Enterprise Linux 4.0 and CentOS 4.x
glibc-2.3.4-2.9
make-3.79
binutils-2.15.92.0.2-13
gcc-3.4.3-22.1
libaio-0.3.96
glibc-common-2.3.4-2.9
setarch-1.6-1
pdksh-5.2.14-30
openmotif21-2.1.30-11
sysstat-5.0.5-1
gnome-libs-1.4.1.2.90-44.1
libstdc++-3.4.3-22.1
libstdc++devel-3.4.3-22.1
compat-libstdc++-296-2.96-132.7.2
compat-db-4.1.25-9
control-center-2.8.0-12
xscreensaver-4.18-5.rhel4.2
Depending on the update/respin version of Red Hat or CentOS, the exact package versions and locations may vary. The installation of the required packages is shown below, with the versions and locations relevant for CentOS 4.1. The commented packages represent those that are already loaded.

# From CentOS 4.1 Disk 1
cd /media/cdrom/CentOS/RPMS
#rpm -Uvh glibc-2.3.4-2.9.i386.rpm
#rpm -Uvh glibc-common-2.3.4-2.9.i386.rpm
#rpm -Uvh make-3.80-5.i386.rpm
#rpm -Uvh binutils-2.15.92.0.2-13.i386.rpm
#rpm -Uvh setarch-1.6-1.i386.rpm
#rpm -Uvh pdksh-5.2.14-30.i386.rpm
#rpm -Uvh libstdc++-3.4.3-22.1.i386.rpm
rpm -Uvh compat-libstdc++-33-3.2.3-47.3.i386.rpm

# From CentOS 4.1 Disk 2
cd /media/cdrom/CentOS/RPMS
#rpm -Uvh gcc-3.4.3-22.1.i386.rpm
#rpm -Uvh gnome-libs-1.4.1.2.90-44.1.i386.rpm
#rpm -Uvh libstdc++-devel-3.4.3-22.1.i386.rpm
#rpm -Uvh compat-db-4.1.25-9.i386.rpm
#rpm -Uvh control-center-2.8.0-12.i386.rpm
#rpm -Uvh xscreensaver-4.18-5.rhel4.2.i386.rpm

# From CentOS 4.1 Disk 3
cd /media/cdrom/CentOS/RPMS
rpm -Uvh libaio-0.3.103-3.i386.rpm
rpm -Uvh openmotif21-2.1.30-11.RHEL4.4.i386.rpm
rpm -Uvh sysstat-5.0.5-1.i386.rpm
rpm -Uvh compat-libstdc++-296-2.96-132.7.2.i386.rpm
Create the new groups and users:

groupadd oinstall
groupadd dba
groupadd oper

useradd -g oinstall -G dba -s /bin/ksh oracle
passwd oracle
Create the directories in which the Oracle software will be installed:

mkdir -p /u01/app/oracle/product/10.2.0/oms10g
mkdir -p /u01/app/oracle/product/10.2.0/db10g
mkdir -p /u01/app/oracle/product/10.2.0/agent10g
chown -R oracle:oinstall /u01
Login as root and issue the following command:

xhost +<machine-name>
Login as the oracle user and add the following lines at the end of the .profile file:

# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR

ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db10g; export ORACLE_HOME
ORACLE_SID=emrep; export ORACLE_SID
PATH=.:/usr/sbin:#$ORACLE_HOME/bin:$PATH; export PATH
PATH=$PATH:$ORACLE_HOME/dcm/bin:$ORACLE_HOME/opmn/bin; export PATH
PATH=$PATH:$ORACLE_HOME/Apache/Apache/bin; export PATH

PS1="`hostname`> "
set -o emacs
set filec
Grid Control Installation
Log into the oracle user. If you are using X emulation then set the DISPLAY environmental variable:

DISPLAY=<machine-name>:0.0; export DISPLAY
Start the Oracle Universal Installer (OUI) by issuing the following command in the installation software directory:

./runInstaller
During the installation select the appropriate ORACLE_HOME for the grid control (oms) and select the new database option. The installation will automatically install an agent in the agent home

 

## Ubuntu ##

I've read this post but there are specified a lot of package:
binutils
libdb2
libdb3
libdb4.1
libdb1-compat
cpp-3.3
gcc-3.3
libstdc++5-3.3-dev
libstdc++2.10-glibc2.2
base-files
netbase
libc6
libc6-dev
make
build-essentials

use synaptic
System->Administration->Synaptic Package Manager
to install these.

You can also use apt-get
In a terminal
Applications->Accesories->Terminal
type:
sudo apt-get install gcc make binutils lesstif2 libc6 libc6-dev rpm build-essentials

#"hsodbc agent" (nnfyboot) link bug solution

ln -s /usr/bin/basename /bin/basename
ln -s /usr/bin/awk /bin/awk
ln -s /bin/lib/libgcc_s.so.1 /lib/libgcc_s.so
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
ln -s $ORACLE_HOME/lib/libclient10.a $ORACLE_HOME/lib/libagtsh.a
$ORACLE_HOME/bin/genagtsh $ORACLE_HOME/lib/libagtsh.so 1.0

#done


/etc/oratab 파일을 다음과 같이 수정한다.
  ORCL:/u01/app/oracle/product/10.2.0/db_1:Y
루트 계정으로 /etc/init.d/dbora 파일을 다음과 같이 생성한다.
#!/bin/sh
# chkconfig: 345 99 10
# description: Oracle auto start-stop script.
#
# Set ORA_HOME to be equivalent to the $ORACLE_HOME
# from which you wish to execute dbstart and dbshut;
#
# Set ORA_OWNER to the user id of the owner of the
# Oracle database in ORA_HOME.

ORA_HOME=/u01/app/oracle/product/10.2.0/db_1
#ORA_HOME=/u01/app/oracle/product/11.1.0/db_1
ORA_OWNER=oracle

if [ ! -f $ORA_HOME/bin/dbstart ]
then
    echo &quot;Oracle startup: cannot start&quot;
    exit
fi

case &quot;$1&quot; in
    'start')
        # Start the Oracle databases:
        # The following command assumes that the oracle login
        # will not prompt the user for any values
        su - $ORA_OWNER -c &quot;$ORA_HOME/bin/dbstart $ORA_HOME&quot;
        ;;
    'stop')
        # Stop the Oracle databases:
        # The following command assumes that the oracle login
        # will not prompt the user for any values
        su - $ORA_OWNER -c &quot;$ORA_HOME/bin/dbshut $ORA_HOME&quot;
        ;;
esac
권한을 750으로 설정한다.
  chmod 750 /etc/init.d/dbora
부팅 시 자동으로 시작되도록 다음 명령어를 실행한다.
  chkconfig --level 345 dbora on


알려진 문제

10g R2에서 dbstart를 호출하면 다음과 같은 에러 메시지가 발생한다.
Failed to auto-start Oracle Net Listener using /ade/vikrkuma_new/oracle/bin/tnslsnr
이는 스크립트를 하드코딩해서 발생한 문제이다.
$ORACLE_HOME/bin/dbstart 스크립트에서
  ORACLE_HOME_LISTNER=/ade/vikrkuma_new/oracle
위 코드를 다음과 같이 수정한다. (78 라인 근처)
  ORACLE_HOME_LISTNER=$ORACLE_HOME
10g의 GUI 프로그램은 한글이 깨져 나오는데 오라클에 내장된 JRE의 폰트 설정이 제대로 되지 않아서 발생하는 문제이다. JRE의 lib 폴더에 페도라 8용 설정파일을 추가하면 해결할 수 있다.
  cd /u01/app/oracle/product/10.2.0/db_1/jdk/jre/lib
  gedit font.properties.ko.Redhat8
아래 내용을 붙여넣기 한다. 제일 밑의 두 줄에서 실제 폰트가 설치된 파일의 풀 패스를 설정하도록 수정한다. 꼭 백묵체가 아니어도 된다.
# @(#)font.properties.ko.Redhat2.1.linux 1.2 04/07/26
# Copyright 2002 Sun Microsystems, Inc. All rights reserved.
#

# Component Font Mappings For RedhatLinux 2.1/ko
#
serif.0=-b&amp;h-lucidux serif-medium-r-normal--*-%d-*-*-p-*-iso8859-1
serif.1=-baekmuk-batang-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

serif.italic.0=-b&amp;h-lucidux serif-medium-i-normal--*-%d-*-*-p-*-iso8859-1
serif.italic.1=-baekmuk-batang-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

serif.bold.0=-b&amp;h-lucidux serif-bold-r-normal--*-%d-*-*-p-*-iso8859-1
serif.bold.1=-baekmuk-batang-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

serif.bolditalic.0=-b&amp;h-lucidux serif-bold-i-normal--*-%d-*-*-p-*-iso8859-1
serif.bolditalic.1=-baekmuk-batang-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

sansserif.0=-b&amp;h-lucidux sans-medium-r-normal--*-%d-*-*-p-*-iso8859-1
sansserif.1=-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

sansserif.italic.0=-b&amp;h-lucidux sans-medium-i-normal--*-%d-*-*-p-*-iso8859-1
sansserif.italic.1=-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

sansserif.bold.0=-b&amp;h-lucidux sans-bold-r-normal--*-%d-*-*-p-*-iso8859-1
sansserif.bold.1=-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

sansserif.bolditalic.0=-b&amp;h-lucidux sans-bold-i-normal--*-%d-*-*-p-*-iso8859-1
sansserif.bolditalic.1=-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

monospaced.0=-b&amp;h-lucidux mono-medium-r-normal--*-%d-*-*-m-*-iso8859-1
monospaced.1=-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

monospaced.italic.0=-b&amp;h-lucidux mono-medium-r-normal--*-%d-*-*-m-*-iso8859-1
monospaced.italic.1=-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

monospaced.bold.0=-b&amp;h-lucidux mono-bold-r-normal--*-%d-*-*-m-*-iso8859-1
monospaced.bold.1=-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

monospaced.bolditalic.0=-b&amp;h-lucidux mono-bold-r-normal--*-%d-*-*-m-*-iso8859-1
monospaced.bolditalic.1=-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

dialog.0=-b&amp;h-lucidux sans-medium-r-normal--*-%d-*-*-p-*-iso8859-1
dialog.1=-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

dialog.italic.0=-b&amp;h-lucidux sans-medium-i-normal--*-%d-*-*-p-*-iso8859-1
dialog.italic.1=-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

dialog.bold.0=-b&amp;h-lucidux sans-bold-r-normal--*-%d-*-*-p-*-iso8859-1
dialog.bold.1=-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

dialog.bolditalic.0=-b&amp;h-lucidux sans-bold-i-normal--*-%d-*-*-p-*-iso8859-1
dialog.bolditalic.1=-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

dialoginput.0=-b&amp;h-lucidux mono-medium-r-normal--*-%d-*-*-m-*-iso8859-1
dialoginput.1=-baekmuk-batang-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

dialoginput.italic.0=-b&amp;h-lucidux mono-medium-r-normal--*-%d-*-*-m-*-iso8859-1
dialoginput.italic.1=-baekmuk-batang-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

dialoginput.bold.0=-b&amp;h-lucidux mono-bold-r-normal--*-%d-*-*-m-*-iso8859-1
dialoginput.bold.1=-baekmuk-batang-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

dialoginput.bolditalic.0=-b&amp;h-lucidux mono-bold-r-normal--*-%d-*-*-m-*-iso8859-1
dialoginput.bolditalic.1=-baekmuk-batang-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

# Missing Glyph Character
#
default.char=274f

# Component Font Character Encodings
#
fontcharset.serif.0=sun.io.CharToByteISO8859_1
fontcharset.serif.1=sun.awt.motif.CharToByteX11KSC5601

fontcharset.sansserif.0=sun.io.CharToByteISO8859_1
fontcharset.sansserif.1=sun.awt.motif.CharToByteX11KSC5601

fontcharset.monospaced.0=sun.io.CharToByteISO8859_1
fontcharset.monospaced.1=sun.awt.motif.CharToByteX11KSC5601

fontcharset.dialog.0=sun.io.CharToByteISO8859_1
fontcharset.dialog.1=sun.awt.motif.CharToByteX11KSC5601

fontcharset.dialoginput.0=sun.io.CharToByteISO8859_1
fontcharset.dialoginput.1=sun.awt.motif.CharToByteX11KSC5601

# Exclusion Ranges
#

# XFontSet Information
#
fontset.serif.plain=\
-b&amp;h-lucidux serif-medium-r-normal--*-%d-*-*-p-*-iso8859-1,\
-baekmuk-batang-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

fontset.serif.italic=\
-b&amp;h-lucidux serif-medium-i-normal--*-%d-*-*-p-*-iso8859-1,\
-baekmuk-batang-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

fontset.serif.bold=\
-b&amp;h-lucidux serif-bold-r-normal--*-%d-*-*-p-*-iso8859-1,\
-baekmuk-batang-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

fontset.serif.bolditalic=\
-b&amp;h-lucidux serif-bold-i-normal--*-%d-*-*-p-*-iso8859-1,\
-baekmuk-batang-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

fontset.sansserif.plain=\
-b&amp;h-lucidux sans-medium-i-normal--*-%d-*-*-p-*-iso8859-1,\
-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

fontset.sansserif.italic=\
-b&amp;h-lucidux sans-medium-i-normal--*-%d-*-*-p-*-iso8859-1,\
-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

fontset.sansserif.bold=\
-b&amp;h-lucidux sans-bold-r-normal--*-%d-*-*-p-*-iso8859-1,\
-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

fontset.sansserif.bolditalic=\
-b&amp;h-lucidux sans-bold-i-normal--*-%d-*-*-p-*-iso8859-1,\
-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

fontset.monospaced.plain=\
-b&amp;h-lucidux mono-medium-r-normal--*-%d-*-*-m-*-iso8859-1,\
-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

fontset.monospaced.italic=\
-b&amp;h-lucidux mono-medium-r-normal--*-%d-*-*-m-*-iso8859-1,\
-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

fontset.monospaced.bold=\
-b&amp;h-lucidux mono-bold-r-normal--*-%d-*-*-m-*-iso8859-1,\
-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

fontset.monospaced.bolditalic=\
-b&amp;h-lucidux mono-bold-r-normal--*-%d-*-*-m-*-iso8859-1,\
-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

fontset.dialog.italic=\
-b&amp;h-lucidux sans-medium-i-normal--*-%d-*-*-p-*-iso8859-1,\
-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

fontset.dialog.bold=\
-b&amp;h-lucidux sans-bold-r-normal--*-%d-*-*-p-*-iso8859-1,\
-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

fontset.dialog.bolditalic=\
-b&amp;h-lucidux sans-bold-i-normal--*-%d-*-*-p-*-iso8859-1,\
-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

fontset.dialog.plain=\
-b&amp;h-lucidux sans-medium-r-normal--*-%d-*-*-p-*-iso8859-1,\
-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

fontset.dialoginput.italic=\
-b&amp;h-lucidux mono-medium-r-normal--*-%d-*-*-m-*-iso8859-1,\
-baekmuk-batang-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

fontset.dialoginput.bold=\
-b&amp;h-lucidux mono-bold-r-normal--*-%d-*-*-m-*-iso8859-1,\
-baekmuk-batang-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

fontset.dialoginput.bolditalic=\
-b&amp;h-lucidux mono-bold-r-normal--*-%d-*-*-m-*-iso8859-1,\
-baekmuk-batang-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

fontset.dialoginput.plain=\
-b&amp;h-lucidux mono-medium-r-normal--*-%d-*-*-m-*-iso8859-1,\
-baekmuk-batang-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

fontset.default=\
-b&amp;h-lucidux sans-medium-r-normal--*-%d-*-*-p-*-iso8859-1,\
-baekmuk-batang-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0

filename.-baekmuk-batang-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0=/usr/share/fonts/trueType/batang.ttc
filename.-baekmuk-gulim-medium-r-normal--*-%d-*-*-c-*-ksc5601.1987-0=/usr/share/fonts/trueType/gulim.ttc
JDK에 포함된 JRE에도 동일한 방식으로 설정 파일을 추가한다.
# cd /u01/app/oracle/product/10.2.0/db_1/jre/lib
# gedit font.properties.ko.Redhat8


내 작업환경은 IDC에 오라클 서버가 있고 (linux), 내 컴퓨터는 공유기에 연결되어 내부 아이피를 사용하는 windows XP에 cygwin을 깔린 상태이다.

내부아이피를 사용하므로, 공유기에서 내 컴퓨터의 Xserver 포트(6000)로 포드포워딩을 해줘야 한다.

cygwin X server를 뛰우고, X term을 열여서 외부에서 cygwin X server로 들어오는 접속이 가능 하도록 설정 해준다.

이제 원격 오라클 서버에 oracle 계정으로 접속해서 (위 cygwin 터미널 또는 다른 프로그램(putty 등)

# export DISPLAY=내공유기IP:0.0

# (오라클 설치 파일이 있는 디렉토리 에서) ./runinstaller -addLangs $*

위와 같이 실행하면 원격 오라클 서버에 설치되는 과정을 내 컴퓨터에서 확인할 수 있다.


Next 버튼을 클릭하다보면 아래와 같은 화면이 뜨는데, 여기서 "Korean"을 선택해서 추가하면된다.



이게 끝이 아니다.

오라클을 custom으로 설치하는 과정에서 Korean을 추가해주면 ALBANWTK.TTF 파일이 생성되는데,

이미 설치된 오라클에서는 파일이 생성되지 않는다.

ALBAMWTK.TTF 파일을 /u01/app/oracle/product/11.1.0/db_1/jdk/jre/lib/fonts/ 디렉토리에 넣어주고,

/oracle/product/11.1.0/db_1/oc4j/j2ee/oc4j_applications/applications/em/em/cabo/images/cache/ko/ 에 있는 파일들을 모두 지운다. (깨진 버튼 이미지들)

em을 종료시킨후에 (# emctl stop dbconsole)
재시작하고 (# emctl start dbconsole)

em주소를 치고 들어가면, 정상적인 한글 버튼을 볼 수 있다.

728x90

댓글