프린트 하기

내맘대로긍정이 알려주는

Oracle 23ai 신기능
무료 세미나 발표자료

다운로드 trending_flat

OS환경 : Oracle Linux 7.6 (64bit)


DB 환경 : Oracle Database 18.1.0.0


에러 : It is not possible to determine the target ORACLE_BASE

18c 에서 19c로 AutoUpgrade 명령으로 업그레이드 작업 중 발생한 문제

AutoUpgrade deploy 명령시 발생한 에러 메세지

1
2
3
4
5
6
$ $ORACLE_HOME/jdk/bin/java -jar autoupgrade.jar -config config.txt -mode deploy
AutoUpgrade tool launched with default options
Processing config file ...
It is not possible to determine the target ORACLE_BASE value for orcl 
because the target ORACLE_HOME directory does not exist [/app/oracle/product/19.0.0/db_1] for database orcl.
It was not possible to determine the target ORACLE_BASE for entry upg1



현재 config.txt 파일(변경사항)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$ cat config.txt
global.autoupg_log_dir=/home/oracle/upg_logs
#
# Database number 1
#
upg1.dbname=orcl
upg1.start_time=NOW
upg1.source_home=/app/oracle/product/18.1.0/db_1
upg1.target_home=/app/oracle/product/19.0.0/db_1
upg1.sid=orcl
upg1.log_dir=/home/oracle/upg_logs/orcl
upg1.upgrade_node=oel7
upg1.target_version=19
#upg1.run_utlrp=yes
#upg1.timezone_upg=yes



해결 방법 : $ORACLE_HOME/install/orabasetab 파일 수정

현재 18c db의 $ORACLE_HOME 확인

1
2
$ echo $ORACLE_HOME
/app/oracle/product/18.1.0/db_1



현재 18c db의 orabasetab 파일 확인

1
2
3
$ cat $ORACLE_HOME/install/orabasetab
#orabasetab file is used to track Oracle Home associated with Oracle Base
/app/oracle/product/18.1.0/db_1:/app/oracle:OraDB18Home1:N:



업그레이드 할 19c db의 $ORACLE_HOME

1
/app/oracle/product/19.0.0/db_1



업그레이드 할 19c db의 orabasetab 파일 확인

1
2
3
$ cat /app/oracle/product/19.0.0/db_1/install/orabasetab
#orabasetab file is used to track Oracle Home associated with Oracle Base
/u01/app/oracle/product/19.0.0/dbhome_1:/u01/app/oracle:OraDB19Home1:N:

경로가 /u01/ 로 기본 경로로 잡혀있음



해당 경로 알맞게 수정

1
2
3
$ cat /app/oracle/product/19.0.0/db_1/install/orabasetab
#orabasetab file is used to track Oracle Home associated with Oracle Base
/app/oracle/product/19.0.0/db_1:/app/oracle:OraDB19Home1:N:



다시 AutoUpgrade deploy 명령 실행

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$ $ORACLE_HOME/jdk/bin/java -jar autoupgrade.jar -config config.txt -mode deploy
AutoUpgrade tool launched with default options
Processing config file ...
+--------------------------------+
| Starting AutoUpgrade execution |
+--------------------------------+
1 databases will be processed
Type 'help' to list console commands
upg> lsj -p
+----+-------+---------+---------+-------+--------------+--------+--------+---------------+
|Job#|DB_NAME|    STAGE|OPERATION| STATUS|    START_TIME|END_TIME| UPDATED|        MESSAGE|
+----+-------+---------+---------+-------+--------------+--------+--------+---------------+
| 103|   orcl|PRECHECKS|PREPARING|RUNNING|20/03/24 00:32|     N/A|00:32:34|Loading DB info|
+----+-------+---------+---------+-------+--------------+--------+--------+---------------+
Total jobs 1

정상적으로 실행됨



원인 : $ORACLE_HOME/install/orabasetab 파일에 설정된 경로 문제

ORACLE_HOME과 ORACLE_BASE가 잘못 설정되어 있어서 발생한 문제




참조 : Doc ID 2573304.1

https://blog.pythian.com/how-reliable-is-autoupgrade-jar-analyze-mode/