ITKeyword,专注技术干货聚合推荐

注册 | 登录

使用internal_convert修改oracle 10g 数据库字符集

xiaoping8411 分享于 2011-09-20

推荐:查看oracle 数据库 字符集 sql语句

SQL> select userenv('language') from dual; USERENV('LANGUAGE') ---------------------------------------------------- AMERICAN_AMERICA.UTF8 SQL>

2018阿里云全部产品优惠券(新购或升级都可以使用,强烈推荐)
领取地址https://promotion.aliyun.com/ntms/yunparter/invite.html

SQL> startup mount                                                                                                             
ORACLE instance started.                                                                                                       
                                                                                                                               
Total System Global Area  117440512 bytes                                                                                      
Fixed Size                   787728 bytes                                                                                      
Variable Size              91224816 bytes                                                                                      
Database Buffers           25165824 bytes                                                                                      
Redo Buffers                 262144 bytes                                                                                      
Database mounted.                                                                                                              
SQL> show parameter processes                                                                                                  
                                                                                                                               
NAME                                 TYPE        VALUE                                                                         
------------------------------------ ----------- --------------------------                                                    
aq_tm_processes                      integer     10                                                                            
db_writer_processes                  integer     1                                                                             
gcs_server_processes                 integer     0                                                                             
job_queue_processes                  integer     10                                                                            
log_archive_max_processes            integer     2                                                                             
processes                            integer     150                                                                           
                                                                                                                               
                                                                                                                               
打开数据库到restricted状态                                                                                                     
                                                                                                                               
SQL> alter system enable restricted session;                                                                                   
                                                                                                                               
System altered.                                                                                                                
                                                                                                                               
SQL> alter database open;                                                                                                      
                                                                                                                               
Database altered.                                                                                                              
                                                                                                                               
查看当前数据库字符集:                                                                                                          
SQL> col name for a30                                                                                                          
SQL> col value$ for a30                                                                                                        
SQL> select name,value$ from props$ where name like '%NLS%';                                                                   
                                                                                                                               
NAME                           VALUE$                                                                                          
------------------------------ ------------------------------                                                                  
NLS_LANGUAGE                   AMERICAN                                                                                        
NLS_TERRITORY                  AMERICA                                                                                         
NLS_CURRENCY                   $                                                                                               
NLS_ISO_CURRENCY               AMERICA                                                                                         
NLS_NUMERIC_CHARACTERS         .,                                                                                              
NLS_CHARACTERSET               US7ASCII                                                                                        
......                                                                                                                         
                                                                                                                               
20 rows selected.                                                                                                              
                                                                                                                               
这里为了方便区分trace文件名,把trace文件加上标识                                                                               
                                                                                                                               
SQL> alter session set tracefile_identifier='cs';                                                                              
                                                                                                                               
Session altered.                                                                                                               
                                                                                                                               
SQL> alter session set sql_trace=true;                                                                                         
                                                                                                                               
Session altered.                                                                                                               
                                                                                                                               
SQL> alter database character set internal_convert zhs16gbk;                                                                   
                                                                                                                               
Database altered.                                                                                                              
                                                                                                                               
alert信息:                                                                                                                     
~~~~~~~~~~~~~~~~~~~~~                                                                                                          
Wed Jan 16 14:49:47 2008                                                                                                       
alter database character set internal_convert zhs16gbk                                                                         
Wed Jan 16 14:49:50 2008                                                                                                       
Private_strands 7 at log switch                                                                                                
Thread 1 advanced to log sequence 38                                                                                           
  Current log# 2 seq# 38 mem# 0: D:\ORACLE\ORADATA\ORCL\REDO02.LOG                                                             
Wed Jan 16 14:49:52 2008                                                                                                       
Updating character set in controlfile to ZHS16GBK                                                                              
Synchronizing connection with database character set information                                                               
Wed Jan 16 14:49:52 2008                                                                                                       
Published database character set on system events channel                                                                      
 SYS.WRI$_DBU_HWM_METADATA (LOGIC) - CLOB representation altered                                                               
 SYS.WRI$_DBU_FEATURE_METADATA (INST_CHK_LOGIC) - CLOB representation altered                                                  
 SYS.WRI$_DBU_FEATURE_METADATA (USG_DET_LOGIC) - CLOB representation altered                                                   
 SYS.WRI$_DBU_FEATURE_USAGE (FEATURE_INFO) - CLOB representation altered                                                       
 SYS.SCHEDULER$_EVENT_LOG (ADDITIONAL_INFO) - CLOB representation altered                                                      
 SYS.RULE$ (CONDITION) - CLOB representation altered                                                                           
 SYS.METASTYLESHEET (STYLESHEET) - CLOB representation altered                                                                 
Refreshing type attributes with new character set information                                                                  
                                                                                                                               
alert中的信息与上面的相同,

推荐:Oracle 设置数据库字符集以及修改服务端字符集

1. 设置数据库字符集 选择高级安装,默认是基本安装 2. 修改数据库服务端字符集 首先查看服务端字符集 select * from v$nls_parameters where parameter = 'NLS_

ORACLE在内部转换CLOB字段相关的表为新字符集,这个在trace文件中可以很清楚得看到。                     
这里就不贴trace信息了。有兴趣自己trace一下。                                                                                   
                                                                                                                               
查看修改后的字符集:                                                                                                           
SQL> select name,value$ from props$ where name like '%NLS%';                                                                   
                                                                                                                               
NAME                           VALUE$                                                                                          
------------------------------ ------------------------------                                                                  
NLS_LANGUAGE                   AMERICAN                                                                                        
NLS_TERRITORY                  AMERICA                                                                                         
NLS_CURRENCY                   $                                                                                               
NLS_ISO_CURRENCY               AMERICA                                                                                         
NLS_NUMERIC_CHARACTERS         .,                                                                                              
NLS_CHARACTERSET               ZHS16GBK                                                                                        
......                                                                                                                         
                                                                                                                               
SQL> alter system disable restricted session;                                                                                  
                                                                                                                               
System altered.                                                                                                                
                                                                                              
到此,字符集修改完成。                                                  

推荐:安装oracle10G注意事项以及修改数据库字符集编码

安装oracle10g时候注意事项: 1. 关闭网络连接 2.…… 修改oracle数据库字符集编码: 先用system和密码登陆SQLPLUS,然后: 1.用sys登录到oracle中 connect sys/

SQL> startup mount                                                                                                              ORACLE instance started.                            

相关阅读排行


用户评论

游客

相关内容推荐

最新文章

×

×

请激活账号

为了能正常使用评论、编辑功能及以后陆续为用户提供的其他产品,请激活账号。

您的注册邮箱: 修改

重新发送激活邮件 进入我的邮箱

如果您没有收到激活邮件,请注意检查垃圾箱。