Chtěl jsem udělat manuální upgrade 10.2.0.3 na 11.2.0.4, ale script catupgrd mě vrací chybu níže…
Problém
@e:\oracle\product\11.2.0.4\dbhome_1\RDBMS\ADMIN\catupgrd
SELECT TO_NUMBER(‚MUST_HAVE_RUN_PRE-UPGRADE_TOOL_FOR_TIMEZONE‘)
*
ERROR at line 1:
ORA-01722: invalid number
Řešení
C:\Windows\system32>sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Sat Jun 4 08:14:54 2016
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> col PLATFORM_NAME for a30 SQL> set lin 400 SQL> select * from sys.registry$database;
no rows selected
SQL> create table registry_backup as select * from registry$database;
Table created.
SQL> INSERT into registry$database (platform_id, platform_name, edition, tz_version) VALUES ((select platform_id from v$ database), (select platform_name from v$database),NULL,(select version from v$timezone_file));
1 row created.
SQL> select * from sys.registry$database;
PLATFORM_ID PLATFORM_NAME EDITION TZ_VERSION ----------- ------------------------------ ------------------------------ ---------- 12 Microsoft Windows x86 64-bit 14
SQL> commit;
Commit complete.
MOS catupgrd.sql fails With ORA-01722 Invalid Number after running the Pre-Upgrade Script [ID 1466464.1]