溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

CentOS Data Guard數(shù)據(jù)庫更改字符集備庫是否需要單獨操作

發(fā)布時間:2021-09-28 17:15:03 來源:億速云 閱讀:123 作者:柒染 欄目:系統(tǒng)運維

CentOS Data Guard數(shù)據(jù)庫更改字符集備庫是否需要單獨操作,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

CentOS Data Guard環(huán)境下修改數(shù)據(jù)庫字符集 環(huán)境.

VMWARE  OS:CentOS 5.3  Primary:Oracle 10.2.0.1.0  Standby:Oracle 10.2.0.1.0

CentOS Data Guard下面的操作均在Primary上,不會影響到Standby DB,備庫需要單獨操作。數(shù)據(jù)庫更改字符集:源字符集CentOS Data Guard目標字符集WE8ISO8859P1 --> AL32UTF8AL16UTF16 --> AL16UTF16

<方法一>:由于目標CentOS Data Guard字符集不是源字符集的超集,所以導致失敗

Startup nomount;  Alter database mount exclusive;  Alter system enable restricted session;  Alter system set job_queue_processes=0;**  Alter database open;  Alter database character set AL32UTF8;


在***一步報錯,內(nèi)容為目標字符集不是源字符集的超集過程:

SQL> shutdown immediate;  Database closed.  Database dismounted.  ORACLE instance shut down.  SQL> startup nomount;  ORA-32004: obsolete and/or deprecated parameter(s) specified  ORACLE instance started.
Total System Global Area  272629760 bytes  Fixed Size                  1218920 bytes  Variable Size              92276376 bytes  Database Buffers          176160768 bytes  Redo Buffers                2973696 bytes  SQL> Alter database mount exclusive;
Database altered.  SQL> Alter system enable restricted session;  System altered.  SQL> Alter system set job_queue_processes=0;  System altered.  SQL> Alter database open;  Database altered.  SQL> Alter database character set AL32UTF8;  Alter database character set AL32UTF8  ERROR at line 1:  ORA-12712: new character set must be a superset of old character set
SQL> host  [oracle@Primary ~]$ oerr ora 12712  12712, 00000, "new character set must be a superset of old character set"  // *Cause: When you ALTER DATABASE ... CHARACTER SET, the new  //         character set must be a superset of the old character set.  //         For example, WE8ISO8859P1 is not a superset of the WE8DEC.  // *Action: Specify a superset character set.

CentOS Data Guard<方法二>:成功,但此方法非常危險,可能會造成數(shù)據(jù)庫崩潰
SQL> show user;
USER is "SYS"
SQL> select status from v$instance; 
STATUS
OPEN
SQL> update props$ set value$ = 'AL32UTF8' where name = 'NLS_CHARACTERSET';

1 row updated.SQL> update props$ set value$ = 'AL16UTF16' where name = 'NLS_NCHAR_CHARACTERSET';1 row updated.SQL> commit;Commit complete.

SQL> exit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
/home/oracle>sqlplus / as sysdba;

SQL*Plus: Release 10.2.0.1.0 - Production on Wed Apr 15 17:15:47 2009
Copyright (c) 1982, 2005, Oracle.  All rights reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options

SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount;
ORA-32004: obsolete and/or deprecated parameter(s) specified
ORACLE instance started.

Total System Global Area  272629760 bytes
Fixed Size                  1218920 bytes
Variable Size              92276376 bytes
Database Buffers          176160768 bytes
Redo Buffers                2973696 bytes
Database mounted.
SQL> alter system enable restricted session;

System altered.

SQL> alter system set job_queue_processes=0;

System altered.

SQL> alter database open;

Database altered.

SQL> alter database character set AL32UTF8;

Database altered.

SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> exit
/home/oracle>sqlplus / as sysdba;

SQL*Plus: Release 10.2.0.1.0 - Production on Wed Apr 15 17:21:15 2009

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

Connected to an idle instance.

SQL> startup
ORA-32004: obsolete and/or deprecated parameter(s) specified
ORACLE instance started.

Total System Global Area  272629760 bytes
Fixed Size                  1218920 bytes
Variable Size              92276376 bytes
Database Buffers          176160768 bytes
Redo Buffers                2973696 bytes
Database mounted.
Database opened.

SQL>select * from v$nls_parameters;
1 NLS_LANGUAGE SIMPLIFIED CHINESE
2 NLS_TERRITORY CHINA
3 NLS_CURRENCY ?
4 NLS_ISO_CURRENCY CHINA
5 NLS_NUMERIC_CHARACTERS .,
6 NLS_CALENDAR GREGORIAN
7 NLS_DATE_FORMAT DD-MON-RR
8 NLS_DATE_LANGUAGE SIMPLIFIED CHINESE
9 NLS_CHARACTERSET WE8ISO8859P1
10 NLS_SORT BINARY
11 NLS_TIME_FORMAT HH.MI.SSXFF AM
12 NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM
13 NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR
14 NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR
15 NLS_DUAL_CURRENCY ?
16 NLS_NCHAR_CHARACTERSET AL16UTF16
17 NLS_COMP BINARY
18 NLS_LENGTH_SEMANTICS BYTE
19 NLS_NCHAR_CONV_EXCP FALSE

關于CentOS Data Guard數(shù)據(jù)庫更改字符集備庫是否需要單獨操作問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業(yè)資訊頻道了解更多相關知識。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI