DB12c: Support for varchar2 32k

To switch a RAC database in varchar2 32k mode:

sqlplus / as sysdba <<EOF
alter system set cluster_database=false scope=spfile;
alter system set max_string_size=extended scope=spfile;
EOF

srvctl stop database -d <db> -o immediate

sqlplus / as sysdba <<EOF
startup upgrade
@?/rdbms/admin/utl32k

alter session set container=PDB$SEED;
alter system set max_string_size=extended scope=spfile;
@?/rdbms/admin/utl32k

alter session set container=xxx;
alter system set max_string_size=extended scope=spfile;
@?/rdbms/admin/utl32k

alter session set container=cdb$root;
alter system set cluster_database=true scope=spfile;
shutdown immediate;
startup mount;

 

Beware there is NO invalid materialized view present in the PDB or the upgrade may fail with a similar error as follow:

ORA-00942: table or view does not exist
ORA-06512: at "<PDB>.UTL32K_PARSEQUERY", line 15
ORA-00942: table or view does not exist
ORA-00942: table or view does not exist
ORA-00942: table or view does not exist
ORA-00942: table or view does not exist
ORA-00942: table or view does not exist

ORA-00942: table or view does not exist
ORA-00942: table or view does not exist
ORA-00942: table or view does not exist
ORA-06512: at "SYS.DBMS_SQL", line 1199
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s