修改 Oracle 数据库实例字符集
Ø 简介
在 Oracle 中创建数据库实例后,就会有对应使用的编码字符集。当我们设置的字符集与操作系统或者其他软件字符集不一致时,就会出现个字符长度存储一个汉字。
2. SIMPLIFIED CHINESE_CHINA.AL32UTF8
多字节存储,1个汉字(简体、繁体)有时采用3个字符长度存储。Oracle支持字符集的更改,但是UTF8是Oracle中最大的字符集,也就是说UTF8是ZHS16GBK的严格超集。
首先,我们查看数据库实例所使用的字符集:
sqlplus "/as sysdba"
select userenv('language') from dual;

当前(orcl)使用的是 CHINESE_CHINA.AL32UTF8 字符集,下面进行修改:
1. 运行 CMD
2. 进入指定数据库实例
set ORACLE_SID=ORCL #"ORCL"表示需要修改字符集的数据库实例名
3. 输入命令
sqlplus /nolog
4. 登录数据库
conn /as sysdba
5. 关闭数据库实例
SHUTDOWN IMMEDIATE;

6. 打开控制文件
STARTUP MOUNT;

7. 开启限制会话模式
ALTER SYSTEM ENABLE RESTRICTED SESSION;
--ALTER SYSTEM DISABLE RESTRICTED SESSION; #取消限制会话模式
8. 设定job队列可以启动的进程数
ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
说明:JOB_QUEUE_PROCESSES=0,则DBMS_JOB作业和Oracle Scheduler作业将不会在实例上运行。参考:https://blog.csdn.net/leshami/article/details/8694772
9. 禁用队列监视器协调器
ALTER SYSTEM SET AQ_TM_PROCESSES=0;
10. 修改并打开数据库
ALTER DATABASE OPEN;
11. 修改数据库字符集
ALTER DATABASE CHARACTER SET ZHS16GBK;
当提示我们:新字符集必须为旧字符集的超集合,使用以下命令:
ALTER DATABASE CHARACTER SET INTERNAL_USE ZHS16GBK;

12. 查看参数列表
select * from v$nls_parameters;

可以看到,此时已经改为了"ZHS16GBK"字符集。
13. 设置完成后,关闭数据库
SHUTDOWN IMMEDIATE;
14. 再次打开数据库
STARTUP OPEN;

15. 这时我们再使用之前的方式查看字符集
select userenv('language') from dual;

OK,ORLC 数据库的字符集就改为了"CHINESE_CHINA.ZHS16GBK"。
修改 Oracle 数据库实例字符集的更多相关文章
- 修改Oracle数据库的字符集为UTF-8
1.改客户端字符集:通过WINDOWS的运行菜单运行Regedit,修改注册表 Start -> Run -> Rededit <-| Under registry Editor - ...
- 【ORACLE】Win2008R2修改oracle数据库实例名
需求说明:要求将windows平台的数据库实例名由orcl改为haha 参考: https://www.cnblogs.com/junnor/archive/2013/03/05/2945245.ht ...
- 修改Oracle数据库的字符集
2019年6月,来到了新的环境工作,接触了新的项目. 新的项目需要用Oracle数据库,虽然以前没用过,但是边学边用呗,在安装Oracle数据库的时候完全没有注意到要选择UTF-8的字符集,直接就默认 ...
- linux服务器上修改oracle数据库的字符集
linux服务器上以dba身份进入:sqlplus / as sysdba; 依次执行以下命令:shutdown immediate; startup mount; alter system enab ...
- oracle 数据库 NLS_CHARACTERSET 字符集的修改
修改Oracle 数据库字符集总结:修改方式大约有3种:方法一: (最安全的方法)数据库创建以后,如果需要修改字符集,通常需要重建数据库,通过导入导出的方式来转换.方法二: (最常用的方法)通过 &q ...
- 修改oracle数据库的编码为utf-8
1.查看数据库字符集 ? 数据库服务器字符集select * from nls_database_parameters,其来源于props$,是表示数据库的字符集. 客户端字符集环境select * ...
- Linux修改oracle 10g的字符集
修改数据库字符集为:ZHS16GBK查看服务器端字符集SQL > select * from V$NLS_PARAMETERS修改:$sqlplus /nologSQL>conn / as ...
- CentOS Linux 新建oracle数据库实例并连接
CentOS Linux 新建oracle数据库实例 安装好oracle之后,首先想到的那就是自己建一个库来看看效果喽. 创建的过程如下文章所说,http://blog.chinaunix.net/u ...
- 详细说明手工创建oracle数据库实例
手工建库比起使用DBCA建库来说,是比较麻烦的,但是如果我们学好了手工建库的话,就可以使我们更好地理解Oracle数据库的体系结构.手工建库须要经过几个步骤,每一个步骤都非常关键.它包括:1. 创建必 ...
随机推荐
- WPF 修改Webbrowser的IE版本小程序(32位)
偶尔用Winform的Webbrowser,但是ie版本太低. 手改改注册表了太慢了. 弄个了程序,修改的代码时网上的,自己就是写了个界面. 支持IE11. XAML页面代码 <Window.R ...
- flex布局和边框阴影
"妄"眼欲穿-CSS之flex布局和边框阴影 妄:狂妄: 不会的东西只有怀着一颗狂妄的心,假装能把它看穿吧. flex布局 main axis:主轴:cross axis:交叉轴 ...
- Python爬取酷狗飙升榜前十首(100)首,写入CSV文件
酷狗飙升榜,写入CSV文件 爬取酷狗音乐飙升榜的前十首歌名.歌手.时间,是一个很好的爬取网页内容的例子,对爬虫不熟悉的读者可以根据这个例子熟悉爬虫是如何爬取网页内容的. 需要用到的库:requests ...
- WPF后台代码实现TextBlock滚动条
方法一: 常规的WPF操作: <ScrollViewer Width=" VerticalScrollBarVisibility="Auto" Horizontal ...
- ReSharper激活方法
激活方式选择License Keys. 激活码: MTW881U3Z5-eyJsaWNlbnNlSWQiOiJNVFc4ODFVM1o1IiwibGljZW5zZWVOYW1lIjoiTnNzIElt ...
- 获取给定地址中的域名,substring()截取
package seday01;/** * 获取给定地址中的域名 * @author xingsir */public class Test { public static void main(Str ...
- Java正则表达式详细解析
元字符 正则表达式使用一些特定的元字符来检索.匹配和替换符合规则的字符串 元字符:普通字符.标准字符.限定字符(量词).定位字符(边界字符) 正则表达式引擎 正则表达式是一个用正则符号写出来的公式 程 ...
- AppBoxFuture(九): 组织结构与权限体系
权限体系是用于约束用户访问或操作资源的权利,这里的"资源"可以指数据,也可以指特定的功能(如审核订单).通常的权限体系设计是基于角色的访问控制方式,用户通过角色与权限进行关联. ...
- async/await简单使用
function process(i) { var p = new Promise(function(resolve,reject){ setTimeout(function(){ console.l ...
- [20190910]关于降序索引问题5.txt
[20190910]关于降序索引问题5.txt --//测试了索引TERM使用0xfe表示,回想到以前遇到降序索引的特殊字符编码问题,现在可是忘得一干二净.--//现在想想当时自己怎么猜测出来的,^_ ...