Linux 下修改Oracle 的字符集
来源:互联网 发布:linux批量重命名 编辑:程序博客网 时间:2024/06/05 21:55
参考:
Linux 下修改Oracle 的字符集:WE8ISO8859P1 修改为 ZHS16GBK
问题描述:在Linux下静默安装的Oracle,默认的字符集没有修改,使用的是WE8ISO8859P1,imp导入后的数据中文全显示为???。问题出在oracle服务端的字符集不支持中文导致。
可以通过:
select userenv(‘language’) from dual; 命令可以查看服务端的使用的字符集。
或者select * from V
网上很多人说,oracle服务端安装好了之后字符集是不可以更改的,实践证明是可以修改的,至少oracle8以上的版本都是可以修改的。
我的解决步骤:
1、ssh登录,切换到oracle用户
切换用户命令:su -oracle
之后用sqlplus登录oracle,命令:
:sqlplus /nolog
:connect /as sysdba
这样就登录了。
2、更改字符集
首先 sqlplus登录后,关闭oracle数据库
1.shutdown immediate ;
2.startup mount ;
3.alter system enable restricted session ;
4.alter system set JOB_QUEUE_PROCESSES=0;
5.alter system set AQ_TM_PROCESSES=0;
6.alter database open ;
7. alter database character set INTERNAL_USE ZHS16GBK;
8.shutdown immediate ;
9.startup ;
注:一开始我按照上面的步骤没有解决,因为在第7步的时候有的资料提示使用alter database character set ZHS16GBK;我试过,这个命令不行,我使用的是alter database character set INTERNAL_USE ZHS16GBK; 提示修改成功。同样,如果在startup mount 下命令提示error的话,可以尝试在startup restrict下运行第七步的命令。
以下是我的调试命令记录,大家可以参考一下,那些提示错误的命令都是执行失败的,可以不必管。
SQL> shutdown immediate;Database closed.Database dismounted.ORACLE instance shut down.SQL> startup mount;ORACLE instance started.Total System Global Area 6680915968 bytesFixed Size 2213936 bytesVariable Size 3892316112 bytesDatabase Buffers 2751463424 bytesRedo Buffers 34922496 bytesDatabase 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 INTERNAL_USE ZHS16GBK;Database altered.SQL> shutdown immediate;Database closed.Database dismounted.ORACLE instance shut down.SQL> SQL> startupORACLE instance started.Total System Global Area 6680915968 bytesFixed Size 2213936 bytesVariable Size 3892316112 bytesDatabase Buffers 2751463424 bytesRedo Buffers 34922496 bytesDatabase mounted.Database opened.SQL> quitDisconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit ProductionWith the Partitioning, OLAP, Data Mining and Real Application Testing options[oracle@itzc-pms3 ~]$
补充:
(1).数据库服务器字符集
select * from nls_database_parameters
来源于props$,是表示数据库的字符集。
(2).客户端字符集环境
select * from nls_instance_parameters
其来源于v$parameter,表示客户端的字符集的设置,可能是参数文件,环境变量或者是注册表
(3).会话字符集环境
select * from nls_session_parameters
来源于v$nls_parameters,表示会话自己的设置,可能是会话的环境变量或者是alter session完成,如果会话没有特殊的设置,将与nls_instance_parameters一致。
- 在Linux下修改oracle的字符集
- linux下修改oracle数据库的字符集
- Linux 下修改Oracle 的字符集
- linux下oracle修改字符集
- Linux下oracle修改字符集
- Linux 下修改oracle 的字符集:WE8ISO8859P1 修改为 ZHS16GBK
- Linux 下修改Oracle 的字符集:WE8ISO8859P1 修改为 ZHS16GBK
- Linux 下修改Oracle 的字符集:WE8ISO8859P1 修改为 ZHS16GBK
- 在Linux下修改oracle的字符集(2)
- linux下修改oracle 10G 字符集
- 在linux下修改oracle字符集
- Linux下修改Oracle数据库字符集命令
- linux oracle 修改字符集
- Oracle 字符集的查看和修改【下】
- Linux下修改字符集
- Linux下修改字符集
- Linux下修改字符集
- Linux下修改字符集
- redis 主从,基于sentinel 自动切换
- 设计模式--单例模式(二)双重校验锁模式
- python-面向对象高级编程
- Java-第四天
- 文章标题
- Linux 下修改Oracle 的字符集
- Effect(十三)—— flyEffect
- 007-题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
- kali下nessus安装(附下载地址)
- IC射频笔记之——choke要求和原理
- 报数(约瑟夫环问题)
- Spring和SpirngMVC的注解详情
- 图像处理、计算机视觉与模式识别“SCI期刊和顶级会议”总结
- ContentProvider内容提供者