Linux环境解决Oracle 中文乱码

简介:

  Linux环境解决Oracle 中文乱码

1)查看数据库字符集

1
2
3
4
03:12:58 SQL> select userenv( 'language' ) from dual; 
USERENV( 'LANGUAGE' )
----------------------------------------------------
AMERICAN_AMERICA.ZHS16GBK

2)编辑linux 的NLS_LANG变量

[oracle@oraserv ~]$ pwd

/home/oracle

[oracle@oraserv ~]$ ls -a

1
2
3
4
5
6
7
8
.                      cr_dbprod.sql .gconfd            .ICEauthority .rman_history     .Xauthority
..                     cr_db.sql      .gnome             logmnr         sel.sql           .xsession-errors
.bash_history          cr_dict.sql    .gnome2            .metacity      sql. log            中国
.bash_logout           Desktop        .gnome2_private    .mozilla       sqlnet. log
.bash_profile          .dmrc          .gstreamer-0.10    .nautilus      .sqlplus_history
.bashrc                .eggcups       .gtkrc-1.2-gnome2 ora.sh         s.sh
close_bak_command.sql ftp.msg        hot_bak_cmd.sql    ora.txt        start.sh
cold_bak.sql           .gconf         hot_bak.sql        .redhat        .Trash

[oracle@oraserv ~]$ vi .bashrc

 

1
2
3
4
5
6
7
8
9
# .bashrc
# Source global definitions
if [ -f /etc/bashrc ]; then
         . /etc/bashrc
fi
# User specific aliases and functions
export NLS_LANG=AMERICAN_AMERICA.ZHS 16 GBK
  
".bashrc"  10 L,  167 C written

3)注销oracle用户,重新登录

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
[oracle@oraserv ~]$ su - oracle
[oracle@oraserv ~]$ env |grep LANG
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
LANG=en_US.UTF-8
 
[oracle@oraserv ~]$ export ORACLE_SID=prod
[oracle@oraserv ~]$ env |grep LANG
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
LANG=en_US.UTF-8
 
通过sqlplus验证:
[oracle@oraserv ~]$sqlplus  '/as sysdba' ;
SQL*Plus: Release 10.2.0.1.0 - Production on Fri Apr 8 03:15:59 2011 
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
  
03:16:02 SQL> conn scott/tiger
Connected.
03:16:08 SQL> select * from tab;
  
TNAME                          TABTYPE CLUSTERID
------------------------------ ------- ----------
DEPT                           TABLE
EMP                            TABLE
BONUS                          TABLE
SALGRADE                       TABLE
  
03:16:16 SQL> update dept set dname= '财务'  where deptno=10;
1 row updated.
  
03:16:47 SQL> select * from dept;
     DEPTNO DNAME          LOC
---------- -------------- -------------
         10 财务   NEW YORK
         20 RESEARCH       DALLAS
         30 SALES          CHICAGO
         40 OPERATIONS     BOSTON

注意:解决问题的原则,客户端的字符集和oracle 数据库的字符集保持一致。










本文转自 客居天涯 51CTO博客,原文链接:http://blog.51cto.com/tiany/730998,如需转载请自行联系原作者
目录
相关文章
|
3天前
|
运维 Oracle 容灾
Oracle dataguard 容灾技术实战(笔记),教你一种更清晰的Linux运维架构
Oracle dataguard 容灾技术实战(笔记),教你一种更清晰的Linux运维架构
|
1天前
|
编解码 Linux 5G
FFmpeg开发笔记(二十)Linux环境给FFmpeg集成AVS3解码器
AVS3,中国制定的第三代音视频标准,是首个针对8K和5G的视频编码标准,相比AVS2和HEVC性能提升约30%。uavs3d是AVS3的解码器,支持8K/60P实时解码,且在各平台有优秀表现。要为FFmpeg集成AVS3解码器libuavs3d,需从GitHub下载最新源码,解压后配置、编译和安装。之后,重新配置FFmpeg,启用libuavs3d并编译安装,通过`ffmpeg -version`确认成功集成。
11 0
FFmpeg开发笔记(二十)Linux环境给FFmpeg集成AVS3解码器
|
3天前
|
运维 Linux Docker
ChatGLM3在Docker环境部署,Linux运维免打包多渠道统计如何实现
ChatGLM3在Docker环境部署,Linux运维免打包多渠道统计如何实现
|
3天前
|
运维 Linux Docker
ChatGLM3在Docker环境部署(1),Linux运维电话面试技巧
ChatGLM3在Docker环境部署(1),Linux运维电话面试技巧
|
3天前
|
Web App开发 Ubuntu Linux
Linux无图形界面环境使用Python+Selenium实践
【5月更文挑战第1天】Linux无图形界面环境使用Python+Selenium实践
39 2
|
4天前
|
Oracle 关系型数据库 Linux
Oracle Linux: How To Disable NUMA At OS Level (Doc ID 2193586.1)
Oracle Linux: How To Disable NUMA At OS Level (Doc ID 2193586.1)
9 1
|
4天前
|
SQL Oracle 关系型数据库
实时计算 Flink版产品使用合集之在oracle cdc2.3 + flink1.7环境下只能初始化同步数据,但后续Oracle的增删改查无法同步出去,是什么导致的
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
13 1
|
4天前
|
数据可视化 Unix Linux
Linux|基础环境开发工具使用(1)
Linux|基础环境开发工具使用(1)
|
5天前
|
Oracle Java 关系型数据库
【服务器】python通过JDBC连接到位于Linux远程服务器上的Oracle数据库
【服务器】python通过JDBC连接到位于Linux远程服务器上的Oracle数据库
17 6
|
5天前
|
Oracle 关系型数据库 Linux
SuSE linux server 11通过SAP来安装oracle11g
SuSE linux server 11通过SAP来安装oracle11g
10 0