본문 바로가기
IT/리눅스 이론

오라클 설치 전 리눅스 서버 요구사항 설정 방법(oracle 12c)

by 꾸꾸웍스 2022. 12. 1.
반응형

오라클 설치 전 리눅스 서버 요구사항
오라클 설치 전 리눅스 서버 요구사항

 

리눅스 서버의 오라클 12c를 설치하기 전 오라클 설치에 요구되는 리눅스 커널 파라미터, 리눅스 오라클 계정, 리눅스 필요 패키지 등에 대한 설정 방법과 설정 적용방법에 대해 소개해드리겠습니다. 데이터베이스 서버를 구축하기 전 단계라면 GUI 환경과 파티션을 나누어 데이터베이스 서버를 구축하는 것을 권장드립니다.

 

※ 목차 구성
1) 오라클 12c 설치 전 요구사항
2) 리눅스 커널 파라미터 변경
3) 계정 및 파일 수정
4) 오라클 12c 설치 전 필요 패키지

 

 

 

오라클 12c 설치 전 요구사항

오라클 12c r1 설치 전 파티션을 나누어 공간을 확보하는 것을 권장드리며 GUI 환경 및 Xmanager이 사용 가능하도록 OS GUI 환경 구현을 하는 것을 필요로 합니다. 

 

root@server # df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs         24G     0   24G   0% /dev
tmpfs            24G     0   24G   0% /dev/shm
tmpfs            24G   19M   24G   1% /run
tmpfs            24G     0   24G   0% /sys/fs/cgroup
/dev/sda2       100G  4.9G   96G   5% /
/dev/sda8       732G   33M  732G   1% /oradata
/dev/sda6        20G   33M   20G   1% /oracle
/dev/sda3        50G   38M   50G   1% /home
/dev/sda7       5.0G   33M  5.0G   1% /tmp
/dev/sda1      1014M  217M  798M  22% /boot
tmpfs           4.7G   36K  4.7G   1% /run/user/1000

 

 

반응형

 

 

리눅스 커널 파라미터 변경

ipcs -l 명령어 결과 사진
ipcs -l

세마포어 및 메모리 설정

DB(데이터베이스) 서버에 오라클 설치를 하기 위해 세마포어의 다음과 같은 설정이 필요합니다. 공유 메모리와 같은 리소스 사용 과정에 프로세스 간의 동기화를 위한 설정입니다.

root@server # sysctl -w kernel.sem="250 32000 100 128"
또는
root@server # vim /etc/sysctl.conf
                        kernel.sem=250 32000 100 128

 

Shared Memory Limits 설정은 SHMMNI, SHMMAX, SHMALL의 3가지 설정을 변경합니다.

  • SHMMNI
    - 4096으로 설정
  • SHMMAX
    - 물리적 메모리 크기의 절반 정도 하는 것을 권장하며 단위는 바이트 단위로 작성합니다. 실제 46G인 DB서버의 약 20G(=21,474,836,480)를 할당하였습니다.
  • SHMALL
    - 기본적으로 8G로 설정되어 있지만 데이터베이스 시스템이 사용되는 경우 실제 메모리가 약 90%까지 증가할 수 있습니다. 실제 적용한 사례는 40%로 설정하였습니다
    - (총메모리의 40%) / 페이지 메모리(4KB)
SHMMNI kernel.shmmni=4096
SHMMAX kernel.shmmax=21474836480
SHMALL kernel.shmall=4823449

 

 

리눅스 커널 설정

커널 설정은 /proc/sys 하위에 위치하며 설정 변경 전 파라미터 실제 경로의 파일을 열어서 기존 값을 확인 후 적절한 값을 정해 적용 변수를 활용하여 적용합니다.

파라미터 실제 경로 적용변수
/proc/sys/kernel/panic_on_oops 1 kernel.panic_on_oops=1
/proc/sys/fs/file-max 6815744 fs.file-max=6815744
/proc/sys/fs/aio-max-nr 1048576 fs.aio-max-nr=1048576
/proc/sys/net/core/rmem_default 262144 net.core.rmem_default=262144
/proc/sys/net/core/rmem_max 4194304 net.core.rmem_max=4194304
/proc/sys/net/core/wmem_default 262144 net.core.wmem_default=262144
/proc/sys/net/core/wmem_max 1048576 net.core.wmem_max=1048576

 

  • panic_on_oops = 커널 패닉 시 자동 리부팅 설정
  • file-max = 세션당 가질 수 있는 최대 파일 수
  • aio-max-nr = 모든 I/O 콘텍스트에 허용되는 최대 이벤트 수
  • rmem_default = TCP 소켓이 사용하는 수신 버퍼의 기본값(rmem_max의 값을 넘으면 안 됨)
  • rmem_max = TCP 소켓이 사용하는 수신 버퍼의 최댓값
  • wmem_default = TCP 소켓이 사용하는 전송 버퍼의 기본값(wmem_max의 값을 넘으면 안 됨)
  • wmem_max = TCP 소켓이 사용하는 전송 버퍼의 최댓값

 

설정 적용

오라클 설치를 위하여 리눅스 커널 파라미터, 세마포어 등 설정을 변경할 부분들이 있습니다. 이에 대한 설정 변경 방법은 2가지 중 편한 방법을 사용하여 변경합니다. 변경할 개수가 몇 개 안 된다면 명령어를 사용하여 변경할 수 있고 설정 변경 부분이 많다면 sysctl.conf 파일에 한 번에 작성하여 변경하는 것을 권장드립니다.

명령어 사용) sysctl -w [파라미터]="[파라미터값]"
예시) sysctl -w net.core.rmem_default=262144

 

파일 수정) vim /etc/sysctl.conf
                  ...
                  net.core.rmem_default=262144
                  ...
파일 수정 후 적용) sysctl -p

 

 

 

 

계정 및 파일 수정

oracle 계정 생성

DB(데이터베이스)를 운영하는 서버의 oracle을 사용할 계정을 생성합니다. 특정 이름을 사용하지 않는다면 oracle 그대로 계정을 생성하며 홈디렉토리와 계정 UID는 1000 이상 생성하는 것을 권장합니다.

root@server # useradd -d /home/oracle -u 1001 oracle

 

오라클 계정을 생성 후 패스워드를 생성합니다.

root@server # passwd oracle

 

limits.conf 파일 수정

DB(데이터베이스) 서버를 운영하며 용량이 차거나 많은 파일이 한 번에 열리고 프로세스가 많이 생성되거나 여러 가지 이유로 운영에 치명적인 영향이 있을 수 있습니다. 이러한 이유를 방지하기 위해 limits.conf 파일을 수정하여 특정 사용자에 대해 리소스를 점유할 수 있습니다. DB서버 사용자는 oracle로 사용하고 있기 때문에 oracle의 리소스를 수정한 예시입니다.

 

limits.conf 파일의 맨 하단에 아래 예시처럼 내용을 추가합니다. 리소스가 설정된 의미는 아래와 같습니다.

 

  • soft - soft로 설정된 용량을 넘어가면 경고 메시지를 남김
  • hard - hard로 설정된 값을 넘을 수 없음
  • nproc - 최대 프로세스 개수를 의미하며 단위는 KB
  • nofile - 한 번에 열 수 있는 최대 파일 수를 의미
  • stack - 최대 스택 사이즈를 의미하며 단위는 KB

 

root@server # vim /etc/security/limits.conf

 

root@server # vim /etc/security/limits.conf
...
# End of file
oracle soft nproc 16384
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
oracle hard stack 32768

 

selinux 파일 수정

selinux 파일의 기본 설정은 enforcing로 되어있으며 selinux 정책을 로드하지 않기 위해 selinux의 값을 disabled로 변경하여 저장합니다.

root@server # vim /etc/selinux/config
SELINUX=disabled

 

root@server # vim /etc/selinux/config
...
#SELINUX=enforcing
SELINUX=disabled
...
SELINUXTYPE=targeted

 

 

 

 

오라클 12c 설치 전 필요 패키지

DB(데이터베이스) 서버의 오라클 12c를 설치하기 전 요구되는 패키지를 설치합니다. 요구되는 패키지를 설치하기 전에 설치되었는지 rpm 명령어로 확인하며 설치가 되어있지 않은 경우 설치합니다. 아래에 나와있는 패키지 버전의 상위 버전을 설치하는 것을 권장드립니다.

root@server # rpm -qa | grep {패키지명}   ### 설치 확인
root@server # yum install -y {패키지명}   ### 설치 

 

오라클 설치 전 패키지 요구사항

  • bc
  • binutils-2.23.52.0.1-12.el7(x86_64)
  • compat-libcap1-1.10-3.el7(x86_64)
  • compat-libstdc++-33-3.2.3-71.el7(i686)
  • compat-libstdc++-33-3.2 .3-71.el7(x86_64)
  • glibc-2.17-36.el7(i686)
  • glibc-2.17-36.el7(x86_64)
  • glibc-devel-2.17-36.el7(i686)
  • glibc-devel-2.17-36.el7 (x86_64)
  • ksh
  • libaio-0.3.109-9.el7(i686)
  • libaio-0.3.109-9.el7(x86_64)
  • libaio-devel-0.3.109-9.el7(i686)
  • libaio-devel-0.3.109 9 .el7(x86_64)
  • libgcc-4.8.2-3.el7(i686)
  • libgcc-4.8.2-3.el7(x86_64)
  • libstdc++-4.8.2-3.el7(i686)
  • libstdc++-4.8.2-3.el7 (x86_64)
  • libstdc++-devel-4.8.2-3.el7(i686)
  • libstdc++-devel-4.8.2-3.el7(x86_64)
  • libxcb-1.9-5.el7(i686)
  • libxcb-1.9-5.el7(x86_64)
  • libX11-1.6.0-2.1.el7(i686)
  • libX11-1.6.0-2.1.el7(x86_64)
  • libXau-1.0.8 2.1 .el7(i686)
  • libXau-1.0.8-2.1.el7(x86_64)
  • libXi-1.7.2-1.el7(i686)
  • libXi-1.7.2-1.el7(x86_64)
  • libXtst-1.2.2-1.el7 (i686)
  • libXtst-1.2.2-1.el7(x86_64)
  • libXrender(i686)
  • libXrender(x86_64)
  • libXrender-devel(i686)
  • libXrender-devel(x86_64)
  • make-3.82-19.el7(x86_64)
  • net-tools-2.0 -0.17.20131004git.el7(x86_64)
    - Oracle RAC 및 Oracle Clusterware용
  • nfs-utils-1.3.0-0.21.el7.x86_64
    - Oracle ACFS용
  • smartmontools-6.2-4.el7(x86_64)
  • sysstat- 10.1.5 -1.el7(x86_64)
  • glibc-devel-2.12-1.7.el6(x86_64)
  • glibc-devel-2.12-1.7.el6(i686)

 

 

반응형
그리드형

댓글