oracle linux乱码 linux软件安装包
大家好,今天小编来为大家解答以下的问题,关于oracle linux乱码,linux软件安装包这个很多人还不知道,现在让我们一起来看看吧!
OEM在Linux系统中乱码怎么办
在Linux系统中遇到OEM出现乱码问题,可以通过替换字符集字体配置文件来解决。在$ORACLE_HOME/jdk/jre/lib和$ORACLE_HOME/jre/1.4.2/lib目录下,包含多种字符集字体配置文件。选择使用font.properties.zh_CN.Redhat替换缺省字体定义文件,操作如下:
1.首先,使用命令su- oracle切换至oracle用户,然后在$ORACLE_HOME/jdk/jre/lib目录下执行命令:
[root@server~]# su- oracle
[oracle@server~]$ cd$ORACLE_HOME/jdk/jre/lib
[oracle@server lib]$ ls font*zh_CN*
找到并复制font.properties.zh_CN.Redhat文件到当前目录,并重命名为font.properties:
[oracle@server lib]$ cp font.properties.zh_CN.Redhat font.properties
2.在$ORACLE_HOME/jre/1.4.2/lib目录下执行类似操作,替换缺省字体定义文件为font.properties.zh_CN.Redhat。
替换后,需要清除Cache以避免缓存问题,重启OEM。进入Cache所在目录,清除所有gif文件:
[oracle@server lib]$cd$ORACLE_HOME/oc4j/j2ee/oc4j_applications/applications/em/em/cabo/images/cache/zhs
执行清除命令并重启OEM:
[oracle@server zhs]$ rm*.*gif
[oracle@server zhs]$ emctl stop dbconsole
[oracle@server zhs]$ emctl start dbconsole
完成上述步骤后,再次登录Web页面,OEM应能正常显示中文内容。
oracle 乱码 如何解决
1、对于Oracle Enterprise Manager中的所有工具,有一个配置文件名为dbappscfg.properties,修改该文件即可解决上述问题。这个文件的位置在$ORACLE_HOME\sysman\config目录下,用任何的文本编辑器打开该文件,在这个文件里面,找到这样一项,
# SQLPLUS_NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1
2、去掉注释符#,同时将其修改为
SQLPLUS_NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
3、对于Windows操作系统,还需要修改一项,在文件中找到# SQLPLUS_SYSTEMROOT=c:\\WINNT40,去掉注释符,将其修改为你所在机器的操作系统主目录。如操作系统的主目录在D盘的Winnt下,则将其修改为
SQLPLUS_SYSTEMROOT=d:\\WINNT。
对于后面一项的修改只对Windows操作系统进行,对UNIX操作系统则不需要。如果在Windows操作系统中不修改该项,在Oracle Enterprise Manager中,连接系统时,会提示如下的错误:
ORA-12560 TNS:protocol adapter error
或者
ORA-12545 Connect failed because target host or object does not exist
4、修改完成后,保存文件,退出编辑。重新连接SQL PLUS Worksheet,字符集乱码问题得到解决,显示正确的简体中文字符集。
问题:使用Oracle Instant Client出现 ORA-12705: Cannot access NLS data files or invalid environment specified错误。
如果是Windows平台,注册表里\HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE查找键 NLS_LANG,这个键由Oracle标准客户端安装创建,值是 NA。这个导致了 ORA-12705错误。解决方法就是改名 NLS_LANG。
Linux下如果环境变量 NLS_LANG值是NA会引起 ORA-12705错误,解决方法是删除这个变量
unset NLS_LANG
解决oracle中文注释乱码问题
Oracle字符集问题解析
Oracle数据库涉及的字符集配置主要包括客户端字符集、数据库实例字符集以及语言和地区设置。其中数据库本身并无固定字符集,但客户端与实例之间存在字符集差异。
可通过执行SQL查询来获取数据库的语言和地区设置:
sql
SELECT* FROM NLS_DATABASE_PARAMETERS WHERE PARAMETER IN('NLS_LANGUAGE','NLS_TERRITORY','NLS_ISO_CURRENCY');
此操作可显示数据库的详细设置信息。
获取实例的语言和地区设置:
sql
SELECT* FROM NLS_INSTANCE_PARAMETERS WHERE PARAMETER IN('NLS_LANGUAGE','NLS_TERRITORY','NLS_ISO_CURRENCY');
通过`SQL语句`查询出的字符集信息为实例特定。
客户端字符集可通过`NLS_LANG`环境变量进行调整。在遇到中文注释乱码问题时,应将导入客户端字符集设置为与数据库实例字符集相匹配的`ZHS16GBK`。例如:
bash
SET LANG=cn_ZH.UTF8
SET NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export LANG=cn_ZH.UTF8
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
nohup imp bobplms/bobplms@RDPUBLIC file=/home/oracle/ploan225.dmp rows=N ignore=y fromuser=ploan3 touser=bobplms show=y log=/home/oracle/imp_20090608.log&
问题解决后,确保字符集设置一致。
附加知识点:
在Linux系统下,可通过命令`cat`与`od`分析DMP文件字符集。在Windows系统中,使用`UltraEdit`打开文件第二和第三字节(共四位16进制数字)以查看字符集类型。将查得的数字带入SQL查询,可进一步识别字符集。
对于`CHAR`和`VARCHAR2`类型的数据库字符集设置,应查阅`NLS_CHARACTERSET`;对于`NCHAR`和`NVARCHAR2`类型的国家字符集,查阅`NLS_NCHAR_CHARACTERSET`。