您好,匿名用户
随意问技术百科期待您的加入

linux下oracle中文显示成问号的问题

+2 投票

操作系统是CentOS5.5,oracle是10gR2。
数据中导入dmp备份文件后,中文显示为问号,如何解决呢?

用户头像 提问 2013年 1月30日 @ Assassin 列兵 (89 威望)
分享到:

1个回答

+1 投票
 
最佳答案

这个应该是oracle数据库编码的问题。

1 查看oracle的编码 

 select name,value$ from props$ where name like '%CHARACTER%';

NAME
--------------------------------------------------------------------------------
VALUE$
--------------------------------------------------------------------------------
NLS_NUMERIC_CHARACTERS
.,

NLS_CHARACTERSET
WE8ISO8859P1

NLS_NCHAR_CHARACTERSET
AL16UTF16

2 修改oralce的编码为UTF8

su - oracle 转换用户 
sqlplus /nolog  不连接任何数据库 
conn 用户名/密码 as sysdba 用sysdba 登陆 

shutdown immediate 关闭(shutdown Abort强行关闭) 
startup mount 启动 
alter system enable restricted session; 
alter system set job_queue_processes=0; 
alter system set aq_tm_processes=0; 
alter database open; 
alter database character set internal_use UTF8; 
ALTER DATABASE NATIONAL CHARACTER SET INTERNAL_USE UTF8;  
shutdown immediate 
startup 

 重新导入dmp文件,看看中文是否正常。

用户头像 回复 2013年 1月30日 @ Jax 上等兵 (324 威望)
选中 2013年 1月30日 @dongxldante
提一个问题:

相关问题

+3 投票
1 回复 50 阅读
用户头像 提问 2013年 1月29日 @ Poppy 上等兵 (395 威望)
+2 投票
1 回复 86 阅读
用户头像 提问 2012年 12月24日 @ Saber 中士 (1,234 威望)
+1 投票
1 回复 79 阅读
用户头像 提问 2012年 12月18日 @ Saber 中士 (1,234 威望)
0 投票
1 回复 48 阅读
+3 投票
1 回复 110 阅读

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...