Oracle DB설치 고려 사항
디스크 설계
대분류 | 구분 | 중분류 | 소구분 | 장치명 | LUN 크기(GB) | 총크기 | 비고 |
---|---|---|---|---|---|---|---|
파일시스템 | 파일시스템 | 엔진 | Oracle 엔진 Home | /oraengn01 | 100 | 100 | |
로그 | Oracle Trace Log | /oralogs01 | 50 | 50 | |||
데이터 | Oracle Data File | /oradata01 | 400 | 400 | |||
아카이브 | Oracle Archive Log | /oraarch01 | 400 | 400 |
계정
구분 | Hostname | 업무 | 파일시스템 | User | GROUP | Home Directory | Shell | 생성스크립트 | |||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
오라클엔진 | User Name | UID | Description | 그룹명 | GID | BASE | DB_HOME | 그룹 | 사용자 | ||||
프로젝트 | HostName | 솔루션 명이나 업무 명 | /oraengn01 | orasvc01 | DBA GID 계정에서 부터 1 추가(ex. 2001) | Oracle 19c Owner 버전명 | dba | ex. 2000 | /oraengn01/orasvc01 | /oraengn01/orasvc01/product/19.0.0 | /bin/bash | groupadd -g 2000 dba | useradd -m -u 2001 -g 2000 -s /bin/bash -c "Oracle 19c Owner' -d /oraengn01/orasvc01 orasvc01 |
DB네이밍
구분 | 타입 | DB Name | 비고 | 비고 #2 |
---|---|---|---|---|
오라클 | 운영/개발 | PJOST1 | 프로젝트 약어(PJ) + DB종류 약어(O) + 업무 약어(ex. 저장 -> ST) + 순번(1) | DB를 사용할 주체 설명 |
DB 환경 (Oracle)
구분 | 공통항목 | DB 사용 솔루션 명 | 비고 |
---|---|---|---|
OS계정 | OS_USER | ex. orasvc01 | |
OS_UID | ex. 2001 | ||
OS GROUP | ex. dba | ||
OS GID | ex. 2000 | ||
DB 엔진 | Version | Oracle database 19c Enterprise Edition | |
RU/PSU 패치 | ex. 최신 RU | ||
ORACLE_BASE | ex. /oraengn01/orasvc01 | ||
ORACLE_HOME | ex. $ORACLE_BASE/product/19.3.0 | ||
DB 정보 | NLS_LANGUAGE | AMERICAN_AMERICA.UTF8 | |
NLS_CHARACTERSET | AL32UTF8 | ||
NLS_NCHAR_CHARACTERSET | AL16UTF16 | ||
DIAGNOSTIC DEST | /oralogs01/orasvc01 | ||
BLOCK SIZE | ex. 8192(8KB) | ||
DB NAME | ... | ||
DB INSTANCE | db name | ||
MEMORY TARGET | 0 | ||
MEMORY_MAX_TARGET | 0 | ||
SGA_MAX_SIZE | ex 20G | SGA 지정값을 고려하여 크기 조정하면 되고, 전체 크기의 90% 수준으로 할당 | |
SGA_TARGET | ex 20G | ||
SHARED_POOL_SIZE | ex 7G | ||
SHARED_POOL_RESERVED_SIZE | ex 1G | ||
DB_CACHE_SIZE | ex 8G | ||
LARGE_POOL | ex 500M | ||
PGA_AGGRIEGATE_LIMIT | ex 8G | ||
PGA_AGGRIEGATE_TARGET | ex 4G | ||
DB_FILES | ex 3000 | ||
PROCESSES | ex 3000 | 연결세션 수 설정으로 최대 접속수를 고려하여 지정 필요 | |
SESSION | ex 3000 | 연결세션 수 설정으로 최대 접속수를 고려하여 지정 필요 | |
OPEN_CURSOR | ex 1000 | ||
UNDO_RETETION | ex 3600 | ||
AUDIT_TRAIL | ex DB | ||
아카이브 | MODE | 구성 이후 아카이브 전환필요 | |
FORMAT | ex "%t_%s_%r.arc" | ||
LOG_ARCHIVE_DEST_1 | ex /oraarch01/orasvc01 | 파일시스템의 경우 | |
CONTROL | CONTROL_FILES | 이중화 | |
REDO | 그룹 (노드별5그룹) | 노드별 그룹 5개 | |
그룹(크기) | ex. 500MB | ||
맴버 (그룹당 2맴버) | ex. 2 | ||
리스너정보 | 리스너명 | ex. LI_ + DB NAME | |
PORT | ex. 1521 | ||
ADMIN_RESTRICTIONS_LISTENER | ON | ||
데이터파일 | 경로 | /oradata01~04 | |
구분 | 파일시스템 |
NTP 설정
$ /etc/ntp.conf 파일에 추가함
NTP서버 등록
THP 중지
Transparent HugePages 중지 ( 오라클 권고값 )
Oracle requirement Patches/Packages // Oracle Linux 7 / RHEL 7
OS Version
Oracle Linux 7 with the Unbreakable Enterprise kernel: 3.8.13-33.el7uek.x86_64 or later
Oracle Linux 7 with the Red Hat Compatible kernel: 3.10.0-54.0.1.el7.x86_64 or later
Red Hat Enterprise Linux 7: 3.10.0-54.0.1.el7.x86_64 or later
Reference : Note 1961997.1
$ rpm -qa | grep
binutils-2.23.52.0.1-12.el7.x86_64
compat-libcap1-1.10-3.el7.x86_64
gcc-4.8.2-3.el7.x86_64
gcc-c++-4.8.2-3.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
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
make-3.82-19.el7.x86_64
sysstat-10.1.5-1.el7.x86_64
Oracle requirement Kernel settings // Oracle Linux 7 / RHEL 7 ( 문서 ID 1961997.1 )
$ sysctl.conf 파일 수정
kernel.panic_on_oops = 1
kernel.shmmni = 4096
kernel.shmall=35232154 –> 4294967296
kernle.shmmax=144310901146 –> (Minimum) - Refer Note 567506.1 for more information
kernel.sem = 250 32000 100 128 # kernel.sem = SEMMSL SEMMNS SEMOPM SEMMNI
fs.file-max = 6815744
fs.aio-max-nr = 3145728
net.ipv4.ip_local_port_range=9000 65535
net.core.rmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=2097152 # 1048576
Virtual Memory Tuning
vm.swappiness = 10
vm.dirty_ratio = 15
vm.dirty_background_ratio = 3
vm.min_free_kbytes = 3145728
vm.drop_caches = 3
/etc/security/limits.conf
orasvc01 soft nproc 65536 # 16384
orasvc01 hard nproc 65536 # 16384
orasvc01 soft nofile 65536
orasvc01 hard nofile 65536
orasvc01 soft stack 32768
orasvc01 hard stack 32768
orasvc01 hard memlock 134217728
orasvc01 soft memlock 134217728
memlock
Soft: at least 90 percent of the current RAM when HugePages memory is enabled and at least 3145728 KB (3 GB) when HugePages memory is disabled
hard: at least 90 percent of the current RAM when HugePages memory is enabled and at least 3145728 KB (3 GB) when HugePages memory is disabled