关键字:oracle安装
昨天安装了个oracle19c,但在导入数据库时发现原来数据库的字符集设置错了,导致数据库文件无法正常导入并还原。今天又折腾了一半天查找如果修改oracle的字符集的操作。特此整理出来分享给大家,如果能用到的同学给点个赞!
本文适用oracle19c、oracle12c [root@localhost ~]# su -l oracle [oracle@localhost ~]$ sqlplus /nolog SQL> conn /as sysdba Connected. SQL> shutdown immediate; Database closed. Database dismounted. ORACLE instance shut down. SQL> startup mount ORACLE instance started. Total System Global Area 236000356 bytes Fixed Size 451684 bytes Variable Size 201326592 bytes Database Buffers 33554432 bytes Redo Buffers 667648 bytes Database mounted. SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION; System altered. SQL>ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0; System altered. SQL>ALTER SYSTEM SET AQ_TM_PROCESSES=0; System altered. SQL>alter database open; Database altered. SQL>ALTER DATABASE CHARACTER SET ZHS16GBK; ALTER DATABASE CHARACTER SET ZHS16GBK * ERROR at line 1: ORA-12712: new character set must be a superset of old character set 提示我们的字符集:新字符集必须为旧字符集的超集,这时我们可以跳过超集的检查做更 改: SQL> ALTER DATABASE character set INTERNAL_USE ZHS16GBK; Database altered. SQL> select * from v$nls_parameters; 略
在内容中找下NLS_CHARACTERSET,这个值:ZHS16GBK 19 rows selected. 重启检查是否更改完成: SQL> shutdown immediate; Database closed. Database dismounted. ORACLE instance shut down. SQL> startup ORACLE instance started. Total System Global Area 236000356 bytes Fixed Size 451684 bytes Variable Size 201326592 bytes Database Buffers 33554432 bytes Redo Buffers 667648 bytes Database mounted. Database opened. SQL> select * from v$nls_parameters; 在内容中找下NLS_CHARACTERSET,这个值:ZHS16GBK了方便下载,所分享的资源和源码已经上传到百度云盘中进行存储和下载。