1. 程式人生 > >oracle 12c 字符集修改 AL32UTF8 改為 ZHS16GBK

oracle 12c 字符集修改 AL32UTF8 改為 ZHS16GBK

公司安裝個 oracle 12c 測試環境,準備把線上的庫匯出來測試效能,結果把測試庫的字符集選了 AL32UTF8 ,一看線上是 ZHS16GBK,還是保持一致吧,遂記錄 AL32UTF8 改 ZHS16GBK 字符集過程:

首先最重要的事:備份!備份資料!別忘記備份資料!


C:\Windows\system32>sqlplus /nolog

SQL*Plus: Release 12.1.0.2.0 Production on 星期二 2月 27 10:59:23 2018

Copyright (c) 1982, 2014, Oracle.  All rights reserved.

SQL> conn / as sysdba
已連線。
SQL> select userenv('language') from dual;

USERENV('LANGUAGE')
--------------------------------------------------------------------------------

SIMPLIFIED CHINESE_CHINA.AL32UTF8

SQL> shutdown immediate
資料庫已經關閉。
已經解除安裝資料庫。
ORACLE 例程已經關閉。
SQL> STARTUP MOUNT EXCLUSIVE;
ORACLE 例程已經啟動。

Total System Global Area 2533359616 bytes
Fixed Size                  3835256 bytes
Variable Size             738200200 bytes
Database Buffers         1778384896 bytes
Redo Buffers               12939264 bytes
資料庫裝載完畢。
SQL> ALTER SYSTEM ENABLE RESTRICTED SESSION;

系統已更改。

SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;

系統已更改。

SQL> ALTER SYSTEM SET AQ_TM_PROCESSES=0;

系統已更改。

SQL> ALTER DATABASE OPEN;

資料庫已更改。

SQL> ALTER DATABASE CHARACTER SET INTERNAL_USE ZHS16GBK;

資料庫已更改。

SQL> ALTER DATABASE NATIONAL CHARACTER SET INTERNAL_USE AL16UTF16;

資料庫已更改。

SQL> SHUTDOWN IMMEDIATE
資料庫已經關閉。
已經解除安裝資料庫。
ORACLE 例程已經關閉。
SQL> STARTUP
ORACLE 例程已經啟動。

Total System Global Area 2533359616 bytes
Fixed Size                  3835256 bytes
Variable Size             738200200 bytes
Database Buffers         1778384896 bytes
Redo Buffers               12939264 bytes
資料庫裝載完畢。
資料庫已經開啟。
SQL> select userenv('language') from dual;

USERENV('LANGUAGE')
----------------------------------------------------
SIMPLIFIED CHINESE_CHINA.ZHS16GBK

SQL> col parameter format a32;
SQL> col value format a32;
SQL> select * from nls_database_parameters;

PARAMETER                        VALUE
-------------------------------- --------------------------------
NLS_RDBMS_VERSION                12.1.0.2.0
NLS_NCHAR_CONV_EXCP              FALSE
NLS_LENGTH_SEMANTICS             BYTE
NLS_COMP                         BINARY
NLS_DUAL_CURRENCY                $
NLS_TIMESTAMP_TZ_FORMAT          DD-MON-RR HH.MI.SSXFF AM TZR
NLS_TIME_TZ_FORMAT               HH.MI.SSXFF AM TZR
NLS_TIMESTAMP_FORMAT             DD-MON-RR HH.MI.SSXFF AM
NLS_TIME_FORMAT                  HH.MI.SSXFF AM
NLS_SORT                         BINARY
NLS_DATE_LANGUAGE                AMERICAN

PARAMETER                        VALUE
-------------------------------- --------------------------------
NLS_DATE_FORMAT                  DD-MON-RR
NLS_CALENDAR                     GREGORIAN
NLS_NUMERIC_CHARACTERS           .,
NLS_NCHAR_CHARACTERSET           AL16UTF16
NLS_CHARACTERSET                 ZHS16GBK
NLS_ISO_CURRENCY                 AMERICA
NLS_CURRENCY                     $
NLS_TERRITORY                    AMERICA
NLS_LANGUAGE                     AMERICAN

已選擇 20 行。

SQL>

oracle 12c 將 AL32UTF8 字符集修改為 ZHS16GBK 完成。