OS 환경 : Oracle Linux 9.6 (64bit)
DB 환경 : Oracle AI Database 23.26.2.0.0 ai
방법 : 오라클 26ai CDB, PDB에 Oracle Text 컴포넌트 설치
PDB에 Oracle Text 컴포넌트를 설치하기위해 dbca를 수행했지만 cdb에 Oracle Text가 없어서 아래 에러와 함께 pdb에도 설치가 안되었음
[DBT-12509] Option ORACLE_TEXT is enabled in the PDBs but not in the CDB.
참고로 Select AI 를 사용하기 위해선 Oracle Text 컴포넌트 설치가 필요함
본문에서는 dbca가 아닌 수동으로 Oracle Text 컴포넌트를 구성하는 방법을 설명함
cdb 접속
|
1
2
3
4
5
6
|
$ sqlplus / as sysdba
SQL> show con_name
CON_NAME
------------------------------
CDB$ROOT
|
cdb임
Oracle Text 구성 스크립트 수행
|
1
2
|
SQL> @$ORACLE_HOME/ctx/admin/catctx.sql oraclepw SYSAUX TEMP NOLOCK
(실행중)
|
oraclepw에는 text유저(CTXSYS) 패스워드를 입력하면됨
컴포넌트 확인
|
1
2
3
4
5
6
7
8
9
10
11
|
SQL>
set lines 200 pages 1000
col comp_id for a20
col comp_name for a20
col name for a20
SELECT (select name from v$containers where con_id = cr.con_id) name
, comp_id, comp_name, version, status FROM cdb_registry cr WHERE comp_id = 'CONTEXT';
NAME COMP_ID COMP_NAME VERSION STATUS
-------------------- -------------------- -------------------- ------------------------------ -----------
CDB$ROOT CONTEXT Oracle Text 23.0.0.0.0 VALID
|
정상적으로 cdb에 text 컴포넌트가 설치됨
pdb 접속
|
1
2
3
4
5
6
7
8
9
|
SQL> alter session set container=oracle26pdb1;
Session altered.
SQL> show con_name
CON_NAME
------------------------------
ORACLE26PDB1
|
pdb에 접속됨
Oracle Text 구성 스크립트 수행
|
1
2
|
SQL> @$ORACLE_HOME/ctx/admin/catctx.sql oraclepw SYSAUX TEMP NOLOCK
(실행중)
|
oraclepw에는 text유저(CTXSYS) 패스워드를 입력하면됨
컴포넌트 확인
|
1
2
3
4
5
6
7
8
9
10
11
|
SQL>
set lines 200 pages 1000
col comp_id for a20
col comp_name for a20
col name for a20
SELECT (select name from v$containers where con_id = cr.con_id) name
, comp_id, comp_name, version, status FROM cdb_registry cr WHERE comp_id = 'CONTEXT';
NAME COMP_ID COMP_NAME VERSION STATUS
-------------------- -------------------- -------------------- ------------------------------ -----------
ORACLE26PDB1 CONTEXT Oracle Text 23.0.0.0.0 VALID
|
정상적으로 pdb에도 text 컴포넌트가 설치됨
참고1. cdb, 모든 pdb에 한번에 Oracle Text 컴포넌트 설치
|
1
2
3
4
5
6
7
8
9
10
|
$ $ORACLE_HOME/perl/bin/perl $ORACLE_HOME/rdbms/admin/catcon.pl -u SYS -d $ORACLE_HOME/ctx/admin -b catctx_out catctx.sql --p'oraclepw' --p'SYSAUX' --p'TEMP' --p'NOLOCK'
catcon::set_log_file_base_path: ALL catcon-related output will be written to [/home/oracle/catctx_out_catcon_319928.lst]
catcon::set_log_file_base_path: catcon: See [/home/oracle/catctx_out*.log] files for output generated by scripts
catcon::set_log_file_base_path: catcon: See [/home/oracle/catctx_out_*.lst] files for spool files, if any
Enter Password: <<-- SYS 패스워드 입력
(대기)
catcon.pl: completed successfully
|
Enter Password에는 SYS 패스워드를 입력하고
oraclepw에는 text유저(CTXSYS) 패스워드를 입력하면됨
참고2. cdb, 모든 pdb에 한번에 Oracle Text 컴포넌트 제거
|
1
|
$ $ORACLE_HOME/perl/bin/perl $ORACLE_HOME/rdbms/admin/catcon.pl -u SYS -d $ORACLE_HOME/ctx/admin -b catnoctx_out catnoctx.sql
|
결론 :
본문 방법으로 Oracle Text를 구성할 수 있음
참고로 Select AI 를 사용하기 위해선 Oracle Text 컴포넌트 설치가 필요함
참조 :
Manual Deinstallation, Installation of Oracle Text in a Multitenant Database(KB138827)
Database option CONTEXT mismatch: PDB installed version 19.0.0.0.0. CDB installed ver PENDING version NULL(KB434407)
How To Install Oracle Text In PDB$SEED?(KB426962)
Creating A Container Database (CDB) With A Subset Of Options(KB127542)
Oracle Text Installation Steps For New 19c Installs(KB121962)
https://mikedietrichde.com/2017/03/02/install-components-in-multitenant-always-with-catcon-pl/
'ORACLE > Admin' 카테고리의 다른 글
| 오라클 19c AutoUpgrade를 이용해 패치 다운로드 방법 (0) | 2026.05.10 |
|---|---|
| 오라클 19c 시스템(Dictionary, Fixed Objects) 통계정보 수집 및 백업, 복구, 이관 방법 (0) | 2026.04.27 |
| 오라클 19c 테이블에 grant시 last_ddl_time이 변경될까? (0) | 2026.04.19 |
| 오라클 26ai CDB TWO_TASK 환경변수 (0) | 2026.04.11 |
| 오라클 19c 잘못된 dns 주소로 인한 sqlplus 연결 지연 문제 (0) | 2026.04.07 |
