Load To Technical Architect

[Linux] Oracle DB 12C 설치 본문

DB/oracle

[Linux] Oracle DB 12C 설치

고지식한청춘 2020. 6. 15. 15:32
728x90

- Server Spec -

CPU - 2 Core

MEMORY - 4GB

HDD - 40G

OS - CentOS 7 minimal

+ Putty SSH로 접속, X11 사용 설정

 

 

 

 

 

1. Oracle 12c 설치에 GUI 환경 이용, OS를 minimal로 설치했다면 Server with GUI 설치

$ sudo yum -y groupinstall "Server with GUI"

 

2. Oracle 12c 설치를 위한 패키지 설치

$ sudo yum -y install binutils compat-libstdc++-33 compat-libstdc++-33.i686 ksh elfutils-libelf elfutils-libelf-devel glibc glibc-common glibc-devel gcc gcc-c++ libaio libaio.i686 libaio-devel libaio-devel.i686 libgcc libstdc++ libstdc++.i686 libstdc++-devel libstdc++-devel.i686 make sysstat unixODBC unixODBC-devel xclock xterm compat-libcap1

 

3. Kernel parameter를 아래와 같이 수정 후 적용

$ sudo vi /usr/lib/sysctl.d/00-system.conf

 

# Disable netfilter on bridges.

# net.bridge.bridge-nf-call-ip6tables = 0

# net.bridge.bridge-nf-call-iptables = 0

# net.bridge.bridge-nf-call-arptables = 0

 

 

$ sudo vi /etc/sysctl.conf

 

net.ipv4.ip_local_port_range = 9000 65500

fs.file-max = 6815744

fs.aio-max-nr = 1048576

kernel.shmall = 2147483648

kernel.shmmax = 2147483648‬

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

net.core.rmem_default=262144

net.core.wmem_default=262144

net.core.rmem_max=4194304

net.core.wmem_max=1048576

 

$ sysctl -p

 

4. 설치 계정 그룹 생성

$ sudo groupadd oinstall

$ sudo groupadd dba

$ sudo useradd -g oinstall -G dba oracle

$ sudo passwd oracle

 

5. 리소스 제한 설정, 아래의 내용 추가

$ sudo vi /etc/security/limits.conf

 

oracle  soft    nproc   16384 
oracle  hard    nproc   16384 
oracle  soft    nofile  1024 
oracle  hard    nofile  65536 
oracle  soft    stack   10240 
oracle  hard    stack   32768

 

$ sudo 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

 

6. SELinux 끄기

$ setenforce 0

$ sudo vi /etc/selinux/config

 

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of three two values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected.
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

 

7. Oracle 환경 설정 폴더 권한 변경 및 유저 추가

$ sudo mkdir -p /usr/oracle/app

$ sudo mkdir /usr/oracle/oradata

$ sudo chmod -R 755 /usr/oracle

$ sudo chown -R oracle:oinstall /usr/oracle

 

8. Oracle 계정에 환경변수 추가

$ vi /home/oracle/.bash_profile

 

.
.
.

umask 022

export ORACLE_BASE=/usr/oracle/app

 

9. Oracle 설치파일 다운로드 후 압축 해제

 

Oracle 로그인

https://www.oracle.com/database/technologies/oracle-database-software-downloads.html#12c 에서 Linux x86-64 다운로드

 

$ sudo unzip linuxx64_12201_database.zip

 

 

10. xhost 연결 확인

 

접속한 OS에서 Xming 설치 후

 

$ sudo xhost +

 

unable ~ 에러 출력시

 

$ export DISPLAY=localhost:0.0

혹은 Putty의 X11 설정 하였는지 확인

$ xclock

접속된 OS에서 xclock 출력 확인

 

 

11. Oracle 설치 진행

$ su oracle

$ cd database

$ ./runInstaller

 

 

이메일 : 보안 이슈나 설치 정보 제공, 선택 사항

 

 

 

 

 

Create and configure a database : database software를 설치한 후 database를 구성

 

install databsae software only : 오직 database software만 설치

 

Upgrade an existing database :기존 database 업데이트

 

 

 

 

 

Single instance database installation : 하나의 인스턴스를 갖는 데이터베이스 설치

 

Oracle Real Application Clusters database installation : RAC 데이터베이스 설치

 

Oracle RAC One Node database installation : RAC를 구성하기 위해서는 여러 노드가 필요하나, 노드 하나만 구성하고 나중에 추가적으로 데이터베이스를 더 구성할 쓰는 옵션

 

 

 

 

 

 

Software 설치 유형 선택

 

 

 

 

 

오라클 베이스 설치 위치 선택

 

 

 

 

 

오라클 인벤토리 설치 위치 선택

 

 

 

 

 

 

OS Group 선택

 

dba를 Database Administrator (OSDBA) Group으로 oinstall을 Database Operator (OSOPER) Group으로 지정

 

 

 

 

 

구성요소 검사

 

checks에 주로 나오는 요소

 

- swap space 설정 (이 글은 4GB, 설치 화면 하단에 swap memory가 얼마나 필요한지 적혀있음)

 

$ cd /
$ sudo mkdir /swap_mem
$ sudo dd if=/dev/zero of=/swap_mem/swap_file bs=1k count=4150000
4150000+0 records in
4150000+0 records out
4249600000 bytes (4.2 GB) copied, 36.0079 seconds, 118 MB/s
$ sudo chmod 600 /swap_mem/swap_file
$ sudo mkswap /swap_mem/swap_file
Setting up swapspace version 1, size = 4249595 kB

 

/swap_mem 디렉토리에 4GB swap_file을 생성 (count=용량M*1024)

재부팅 시에도 swap space를 가동하기 위해 fstab에 파일 정보를 입력하고 적용

 

$ sudo vi /etc/fstab


# Created by anaconda on Tue Feb 23 01:47:41 2016
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root /                       xfs     defaults        0 0
UUID=527f2e60-d040-4c90-9ec1-f18511f8e51f /boot                   xfs     defaults        0 0
/dev/mapper/centos-swap swap                    swap    defaults        0 0
#스왑메모리추가
/swap_mem/swap_file swap                        swap    auto            0 0
~  

 

$ sudo swapon -a

$ sudo swapon -s
Filename    Type  Size Used Priority
/dev/dm-1                               partition 2097148 17884 -1
/swap_mem/swap_file                     file 4149996 0 -2


출처: https://band.tistory.com/18 [스페이스]

 

Packages에 나오는 요소들은 대부분 패키지를 설치하면 문제는 해결되나, 패키지의 버전이 높을 경우 이미 설치되어있어도 화면에 남아있는데 우측 상단의 Ignore All을 체크하고 넘어가면 됨 

 

 

 

 

 

설치 진행중

 

 

 

 

 

Root 권한으로 실행

$ sudo /usr/oracle/oraInventory/orainstRoot.sh

$ sudo /usr/oracle/app/product/12.2.0/dbhome_1/root.sh

 

 

 

12. ORACLE 계정에 환경 변수 추가

 

$ vi ~/.bash_profile

 

다음 내용을 추가합니다.

 

export ORACLE_HOME=$ORACLE_BASE/product/12.2.0/dbhome_1

export PATH=$PATH:$ORACLE_HOME/bin

export ORACLE_SID=orcl

 

$ source ~/.bash_profile

 

DB Software 설치 완료..

 

 

13. 리스너 설정

$ netca

 

리스너 구성 선택

 

 

 

 

 

추가 선택

 

 

 

 

 

리스너 이름 입력

 

 

 

 

 

프로토콜 선택

 

 

 

 

 

Listener Port 지정

 

 

 

 

 

다른 리스너를 추가 할지 결정

 

 

 

 

 

완료

 

 

 

 

18. 데이터베이스 설정

$ dbca

 

 

DB Instance가 없으므로 생성만 가능, 이미 Insctance가 있다면 생성, 수정, 삭제 가능

 

 

 

 

Typical Configuration : 간편 설정

Advanved Configuration : 세부 설정

 

 

 

 

Database Type : Single instance 선택

Genral Purpose or Transaction Processing 선택

 

Global Database Name, SID 입력

 

Create as Container Database - 체크 하면 CDB, PDB 이용 가능, 체크 하지 않으면 11g 이전 버전과 같게 사용 가능

 

cdb를 비우고 설치 진행할지, cdb에 demo pdb 생성 할지 결정

 

 

 

 

 

Use template file for database storage attributes 선택

 

 

 

 

 

복구 설정 ( TEST 환경이므로 Disk 크기를 작게 잡음 )

 

 

 

 

 

이전에 만든 리스너 사용

 

 

 

 

 

세부 설정단계

 

Instance가 사용할 Memory 지정, 위에서 Kernel Parameter 설정 할 때 지정한 메모리 공유 최댓값을 넘어선 안됨

 

 

 

 

 

문자셋 지정

 

 

 

 

Enterprise Manager 사용 여부 지정

 

 

 

 

 

관리자, 최고 권한 계정 password 지정

 

 

 

 

 

이전의 설정들을 바탕으로 어떤 작업을 할지 선택

 

 

 

 

 

요약 정보

 

 

 

 

 

 

생성 진행중

 

 

 

 

 

 

완료

728x90
Comments