Oracle 19c 소프트웨어 설치
Oracle 19c의 이미지 기반 설치에서 ZIP을 ORACLE_HOME에 풀고 runInstaller를 GUI 또는 사일런트로 실행하는 방법, root 스크립트와 설치 결과 확인
#핵심 요약
19c는 이미지 기반 설치임
설치 ZIP을 임의의 임시 디렉터리에 풀어 복사하지 않고, 최종 ORACLE_HOME 디렉터리에서 직접 압축을 풀고 그 위치의 runInstaller를 실행함
설치 유형은 Set Up Software Only(소프트웨어만 설치)임
설치가 끝난 시점에 DB 인스턴스와 리스너가 없고 PMON 프로세스가 보이지 않으며 1521 포트가 열려 있지 않아도 정상임
설치 중 orainstRoot.sh와 root.sh를 root로 실행해야 함
수업 자료에는 GUI 방식과 사일런트 방식이 모두 있음
#개념과 동작 원리
설치 순서는 다음과 같음
사전 준비는 Oracle 19c 설치 사전 준비에서 끝낸 것으로 봄
- 설치 ZIP(
LINUX.X64_193000_db_home.zip)을 서버로 전송하고 크기와 해시를 확인함 ORACLE_HOME에서 직접 압축을 풂runInstaller를 실행해 Software Only, Single instance 등을 선택한다(GUI) 또는 응답 매개변수를 지정해 사일런트로 실행함- root로
orainstRoot.sh,root.sh를 실행함 sqlplus -v,opatch version,opatch lsinventory, oraInventory 로그로 결과를 확인함
#GUI 선택값
| 화면 | 선택값 |
|---|---|
| Configuration Option | Set Up Software Only |
| Database Installation Option | Single instance database installation |
| Database Edition | Enterprise Edition(수업 환경 기준) 실제 회사 설치는 구매 계약과 라이선스 정책에 맞는 Edition |
| Oracle Base | /u01/app/oracle |
| Inventory Directory | /u01/app/oraInventory |
| Inventory Group | oinstall |
| OSDBA Group | dba |
| OSOPER Group | oper 또는 설치 정책에 맞는 그룹 |
| Backup, DG, KM, RAC Groups | 역할 분리 그룹을 만들었다면 각각 지정 단순 실습은 dba로 통합 가능 |
| Root Script Execution | 수동 실행 권장 자동 실행을 쓰면 승인된 root 또는 sudo 자격 증명 사용 |
사전 점검 결과는 Passed이면 진행하고, Warning은 원인과 영향을 확인한 뒤 판단하며, Failed는 필수 패키지, 커널값, 권한, 디스크 공간, DISPLAY 등을 고친 뒤 Check Again을 함Ignore All로 일괄 무시하지 않음
#주요 용어와 구성 요소
| 용어 | 설명 |
|---|---|
| Software Only | 바이너리만 설치하고 데이터베이스는 만들지 않는 옵션 |
| 이미지 기반 설치 | 설치 ZIP이 곧 ORACLE_HOME 내용이며, 그 위치에서 runInstaller를 실행하는 방식 |
orainstRoot.sh |
oraInventory 권한과 설정을 적용하는 root 스크립트 |
root.sh |
Oracle Home의 권한, 링크, 환경 설정을 적용하는 root 스크립트 |
INS-13014 |
수업 자료에서 사전 점검 경고(누락 패키지)로 나온 오류 코드 |
#필수 명령어 또는 SQL
#설치 파일 전송과 확인
scp LINUX.X64_193000_db_home.zip <USERNAME>@<IP>:/home/oracle/ls -lh ~/LINUX.X64_193000_db_home.zip
sha256sum ~/LINUX.X64_193000_db_home.zip결과 해석:
해시값은 다운로드 실습의 공식 체크섬 또는 전송 전 파일의 해시와 비교함
#ORACLE_HOME에서 직접 압축 해제
cd /u01/app/oracle/product/19.3.0/dbhome_1
unzip -q ~/LINUX.X64_193000_db_home.zippwd
ls -l runInstaller
ls -ld bin OPatch oui rdbms network결과 해석: 개별 실행 출력은 기재 없음
#GUI 설치
cd /u01/app/oracle/product/19.3.0/dbhome_1
./runInstaller결과 해석: 개별 실행 출력은 기재 없음
#사일런트 설치 (12.2에서 19c 업그레이드 실습)
export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
export CV_ASSUME_DISTID=OL7
cd $ORACLE_HOME
./runInstaller -silent -noconfig -waitforcompletion \
oracle.install.option=INSTALL_DB_SWONLY \
UNIX_GROUP_NAME=oinstall \
ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1 \
ORACLE_BASE=/u01/app/oracle \
oracle.install.db.InstallEdition=EE \
oracle.install.db.OSDBA_GROUP=dba \
oracle.install.db.OSOPER_GROUP=dba \
oracle.install.db.OSBACKUPDBA_GROUP=dba \
oracle.install.db.OSDGDBA_GROUP=dba \
oracle.install.db.OSKMDBA_GROUP=dba \
oracle.install.db.OSRACDBA_GROUP=dba \
DECLINE_SECURITY_UPDATES=true결과 해석: 개별 실행 출력은 기재 없음
#root 스크립트
/u01/app/oraInventory/orainstRoot.sh
/u01/app/oracle/product/19.3.0/dbhome_1/root.sh결과 해석:
설치 화면에서 root 스크립트 자동 실행을 승인하지 못했다면 설치 마무리 단계에서 위 두 스크립트를 순서대로 직접 실행하고 설치 화면에서 재시도(Retry/Continue)를 누름
OUI가 안내하는 정확한 경로를 확인하고 경로를 추측하지 않음
#설치 결과 확인
echo $ORACLE_HOME
$ORACLE_HOME/bin/sqlplus -v
$ORACLE_HOME/OPatch/opatch version
$ORACLE_HOME/OPatch/opatch lsinventory
cat /etc/oraInst.loc
ls -ltr /u01/app/oraInventory/logs
grep -RiE 'success|failed|error' /u01/app/oraInventory/logs | tail -50결과 해석:
성공 판단: sqlplus -v에 Oracle 19c 버전이 출력되고, opatch lsinventory가 설치한 Oracle Home과 제품 정보를 보여주며, oraInventory 로그에 치명적인 실패가 없고, OUI Finish 화면에서 성공을 확인함/etc/oraInst.loc의 일반적인 내용은 inventory_loc=/u01/app/oraInventory와 inst_group=oinstall임
#구문과 옵션 설명
| 옵션 | 의미 | 비고 |
|---|---|---|
-silent |
GUI 없이 실행 | |
-noconfig |
설치 후 구성 도구를 실행하지 않음 | 실습에서는 의미를 따로 설명하지 않음 옵션 정의는 공식 문서 대조를 하지 않았음 |
-waitforcompletion |
설치가 끝날 때까지 대기 | 설명 기재 없음, 공식 문서 대조 하지 않음 |
oracle.install.option=INSTALL_DB_SWONLY |
Software Only 설치 | |
UNIX_GROUP_NAME=oinstall |
인벤토리 그룹 | |
oracle.install.db.InstallEdition=EE |
Enterprise Edition | |
oracle.install.db.OS*_GROUP |
OSDBA, OSOPER, OSBACKUPDBA, OSDGDBA, OSKMDBA, OSRACDBA 그룹 | 실습에서는 모두 dba로 지정 |
DECLINE_SECURITY_UPDATES=true |
보안 업데이트 구성 생략 | 설명 기재 없음 |
CV_ASSUME_DISTID=OL7 |
설치 프로그램이 배포판을 OL7로 간주 | RHEL 8.4에서 쓴 환경변수 이 값의 효과와 적용 조건은 공식 문서와 대조하지 않았음 |
#사용 조건과 주의사항
공식 지원 구성은 RU 적용까지 요구한다는 설명이 수업 자료에 있고(RU 파일이 없어 해당 실습에서는 생략), OL9에서 19c를 설치할 때 RU 조건은 설치 사전 준비의 보충 설명을 참조함
root.sh는 OUI가 요청한 시점에만 실행함