DBUA로 12.2 Non-CDB 업그레이드
같은 12.2.0.1 non-CDB를 DBUA(GUI)로 19c로 업그레이드할 때의 환경 전환, 선택 옵션, 리스너 이전, 확인 항목
#핵심 요약
DBUA는 19c 홈의 dbua를 실행해 12.2 DB(ORCL)를 선택하고, 사전 점검, 옵션, 복구, 리스너, EM 설정을 거쳐 업그레이드함
환경 전환이 핵심임
12c 상태를 확인한 뒤 ORACLE_HOME을 19c로 바꾸고 ORACLE_SID는 기존 DB 이름(orcl)을 유지함
폰트가 깨지면 LANG=C, LC_ALL=C를 지정해 DBUA만 영어로 실행함
DBUA 뒤에는 non-CDB가 19c non-CDB로 올라가 있으므로, CDB의 PDB로 만들려면 별도 전환이 필요함
#개념과 동작 원리
실습 흐름: 12c non-CDB 사전 점검, 19c Software Only 설치, DBUA 사전 점검과 환경 전환, DBUA 업그레이드, 19c non-CDB를 CDB/PDB로 전환, 최종 검증
DBUA 화면에서 수업 자료가 선택한 값
| 화면 | 선택 |
|---|---|
| 사전 점검 결과 | 업그레이드를 차단하는 오류 없음 Dictionary Statistics와 Fixed Object Statistics는 업그레이드 후 수행 권고 |
| Upgrade Options | Parallel Upgrade 활성화, 업그레이드 후 Invalid Object 자동 재컴파일, Timezone Data 업그레이드, Custom SQL Script 미사용 |
| Recovery Option | Create a New Offline RMAN Backup 업그레이드 실패 시 복구할 사전 백업 확보 실습 VM 스냅샷과 별개로 DB 레벨 복구 절차 적용 |
| Listener | 기존 12c LISTENER(1521) 선택, Migrate = Yes로 19c Home으로 이전, 새 Listener는 만들지 않음 |
| EM Express / Cloud Control | EM Express만 활성화, Cloud Control 미연동 |
| Summary | Source DB ORCL 12.2.0.1.0, Target 19.0.0.0.0, 홈 경로 확인 |
| 결과 | DBUA Backup, Pre Upgrade, Database Migration 단계 모두 Successful (실습 기록) |
기존 Listener가 목록에 보이지 않았을 때 원인은 DBUA 실행 시 Listener가 내려가 있었던 것이고, lsnrctl start 후 DBUA를 재실행해 정상 인식했음
#필수 명령어 또는 SQL
#12c DB 상태 확인
su - oracle
export ORACLE_HOME=/u01/app/oracle/product/12.2.0/dbhome_1
export ORACLE_SID=orcl
export PATH=$ORACLE_HOME/bin:$PATHselect name, open_mode, cdb from v$database;
select banner from v$version;결과 해석: 개별 실행 출력은 기재 없음
#19c 환경으로 전환 후 DBUA 실행
export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_SID=orcl
which dbua
dbua결과 해석:
폰트가 깨질 때
export LANG=C
export LC_ALL=C
dbua결과 해석: 개별 실행 출력은 기재 없음
#리스너 시작
lsnrctl start결과 해석: 개별 실행 출력은 기재 없음
#업그레이드 후 확인
select banner from v$version;
select name, open_mode, cdb
from v$database;결과 해석:
PDB 전환 이후의 최종 검증 쿼리는 Non-CDB를 PDB로 전환에 있음
실습에서는 새 CDB를 dbca -silent -createDatabase(PDB 0개)로 만든 뒤 전환했음(AutoUpgrade 글 3번 참조)
#구문과 옵션 설명
| 항목 | 의미 | 비고 |
|---|---|---|
dbua |
19c 홈의 DB Upgrade Assistant | 19c ORACLE_HOME에서 실행 |
LANG=C, LC_ALL=C |
로캘을 영어로 | 폰트 깨짐 방지, 해당 셸 세션에만 영향 |
lsnrctl start |
리스너 시작 | DBUA가 기존 리스너를 인식하려면 떠 있어야 함 |
#사용 조건과 주의사항
실습에서는 이 업그레이드를 RHEL 8.4에서 수행했음
다른 OS와 버전에서는 같은 순서와 옵션이 그대로 적용되는지 확인하지 못했음
실습에서는 DBUA의 결과 요약 후 dba_registry로 구성 요소 상태를 최종 확인했음