`

修改oracle数据库的编码问题

阅读更多
SQL> select * from nls_database_parameters where parameter ='NLS_CHARACTERSET';

PARAMETER
--------------------
VALUE
--------------------
NLS_CHARACTERSET
AL32UTF8
这其来源于props$,这是表示数据库的字符集。
oracle客户端编码
SQL> select * from nls_instance_parameters where parameter='NLS_LANGUAGE';

PARAMETER
--------------------
VALUE
--------------------
NLS_LANGUAGE
SIMPLIFIED CHINESE
其来源于v$parameter,表示客户端的字符集的设置,可能是参数文件,环境变量或者是注册表会话字符集环境
select * from nls_session_parameters,其来源于v$nls_parameters,表示会话自己的设置,可能是会话的环境变量或者是alter session完成,如果会话没有特殊的设置,将与nls_instance_parameters一致。
再来说一下怎么修改oracle的字符集:
目前我的数据库环境的字符集是AL32UTF8,那么把它改成ZHS16GBK

1.首先以sysdba的身份登录上去 conn /as sysdba


2.关闭数据库shutdown immediate;

3.以mount打来数据库,startup mount

4.设置session
SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION;
SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
SQL> ALTER SYSTEM SET AQ_TM_PROCESSES=0;

5.启动数据库
alter database open;


6.修改字符集
ALTER DATABASE CHARACTER SET ZHS16GBK;
这会可能会报错,提示我们的字符集:新字符集必须为旧字符集的超集,这时我们可以跳过超集的检查做更改:
ALTER DATABASE character set INTERNAL_USE ZHS16GBK;
这条语句就可以了,TERNAL_USE提供的帮助就会使oracle绕过了子集与超集的验证,这条语句和上面的语句内部操作时完全相同的。

7.关闭,重新启动
SQL>shutdown immediate;
SQL> startup
当然字符集最好不要轻易修改,因为这会对数据库的数据有直接的影响,如果是生产环境的话,可能会造成不可估计得损失。
分享到:
评论

相关推荐

    修改oracle数据库的字符集方法(RAC)

    修改oracle数据库的字符集方法(RAC),适用RAC

    查看oracle数据库的编码及修改编码格式的方法

    本节主要介绍了如何查看oracle数据库的编码及修改编码格式,需要的朋友可以参考下

    链接服务器-SQL Server连接Oracle(乱码配置,无需修改数据库编码)

    网上基本找不到,sqlserver2012版本链接oracle乱码问题解决实测版。

    Oracle/MSSQL 数据库编码转换多功能导入工具(终板)

    Oracle/MSSQL 对称/不对称 导入 并且导入时: 可以转换编码(Big5/GBK) 可以替换字段内容 更可以不导入数据库,只导出为SQL(Insert)语句,等功能 ----------------------------------------------- 大小: 122880 ...

    数据库设计规范-编码规范.docx

    数据库编码规范 数据库设计规范-编码规范全文共25页,当前为第1页。 数据库设计规范-编码规范全文共25页,当前为第1页。 1 目的 为了统一公司软件开发的设计过程中关于数据库设计时的命名规范和具体工作时的编程规范...

    Oracle数据库服务器修改操作系统时间的注意事项详解

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

    oracle数据库相关操作

    数据库安装后一般的优化,数据库编码用户等修改

    数据库系统-招标参数---模板.doc

    可以同时管理多台服务器,在一台数" " " "据库上修改Option,能够自动发布到不同数据库服" " " "务器上。 " " " "提供数据的变化捕获(CDC)的功能,准确识别变化 " " " "数据。 " " " "提供对数据库内任务的分组CPU、...

    oracle修改字符集

    4.修改Oracle的编码和操作系统的一样。(参考别人的) 登陆用dba SQL> conn system/hundsun as sysdba; 停掉数据库 SQL>shutdown immediate; 启动数据库到mount状态下 SQL> STARTUP MOUNT; Java代码 ...

    Oracle11g 字符集 AL32UTF8 修改为ZHS16GBK

    Oracle11g 字符集 AL32UTF8 修改为ZHS16GBK .

    用过滤器解决oracle中文乱码问题

    只要按照这个上面说的,就可以解决从jsp页面从oracle数据库读取中文数据时的中文乱码问题。可以说是一劳永逸的办法。其他的修改配置之类的方法,我都试过了,没用,只用这个过滤器文件就可以了,里面详细说明了如何...

    linux 下oracle中文乱码字符集设置

    linux 下的 oracle 导入数据库时出现中文乱码,通过修改字符集格式,修改成支持中文的格式。简单易操作。

    oracle查看字符集后修改oracle服务端和客户端字符集的步骤

    将数据库启动到RESTRICTED模式下做字符集更改: 代码如下:SQL>conn /as sysdba SQL>shutdown immediate;  SQL>startup mount SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION;  SQL>ALTER SYSTEM SET JOB_...

    Oracle自学(学习)材料 (共18章 偏理论一点)

    2 Oracle 服务器入门 目标 2-2 数据库管理工具 2-3 Oracle 通用安装程序 2-4 交互式安装 2-5 使用反应文件的非交互式安装 2-6 Oracle 数据库配置助手 2-8 最优灵活体系结构(OFA) 2-9 Oracle 软件和文件位置 2-10 ...

    CentOS7.6安装oracle19c单机

    Oracle 19c for centos 7 Centos7.6安装oracle19c单机-20210624 1 一、安装oracle19C单机 1 1.Centos7.6 YUM更新 1 ...查询数据库编码 21 修改oracle环境变量 22 刷新环境变量 22 登录sqlplus查看,显示正常 22

    toad for oracle 11

    轻松浏览和管理Oracle数据库 TOAD 的 Schema Browser(模式浏览器)模块内置了方便易用的多页浏览功能,可以迅速查看和管理Oracle 数据字典。 通过点击特定对象,TOAD 可以立即展示其相关信息,避免了逐层查看的...

    ORACLE9i_优化设计与系统调整

    §1.1 Oracle数据库结构 23 §1.1.1 Oracle数据字典 23 §1.1.2 表空间与数据文件 24 §1.1.3 Oracle实例(Instance) 24 §1.2 Oracle文件 26 §1.2.1 数据文件 26 §1.2.2 控制文件 26 §1.2.3 重做日志文件 26 §...

    数据库设计规范(3).doc

    " "REAL、FLOAT、INTEGER、NUEBER "Oracle数据库必须使用NUEBER " "NUMBER(P,S)、NUMERIC (P, "Oracle数据库必须使用NUMBER " "S)、DECIMAL (P, S) " " "DATE "时间类型必须使用DATE " "BLOB(二进制数据)、CLOB...

Global site tag (gtag.js) - Google Analytics