Oracle character set modification and related error handling

  1. Under normal circumstances, use SQL> alter database CHARACTER SET ZHS16GBK; directly modify;
  2. When the above command executes an error:
    ORA-12712: The new character set must be a superset of the old character set.

  3. 1) Open sqlplus
    and log in as sysdba; conn sys/sys@orcl as sysdba;
    2) SHUTDOWN abort;
    3) STARTUP MOUNT;
    – ORA-12514: TNS: The listener currently does not recognize the connection description service requested in character
    - ORA-24324: uninitialized service handle
      - ORA-01041: internal error, hostdef extension does not exist
      When a refill error occurs:
      sql>quit;
      SQL> conn /as sysdba
    connected to idle routine .
    Then execute startup mount;
    4) SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION;
    5) SQL>ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
    6) SQL>ALTER SYSTEM SET AQ_TM_PROCESSES=0;
    7) SQL>ALTER DATABASE OPEN;
    8) SQL>ALTER DATABASE CHARACTER SET INTERNAL_USE ZHS16GBK; //Skip supersubset detection
    9) SQL>SHUTDOWN IMMEDIATE;
    SQL>STARTUP

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325781830&siteId=291194637