修改Oracle数据库的字符集
2019年6月,来到了新的环境工作,接触了新的项目。
新的项目需要用Oracle数据库,虽然以前没用过,但是边学边用呗,在安装Oracle数据库的时候完全没有注意到要选择UTF-8的字符集,直接就默认安装了。
刚开始用,没毛病,该查查,该删删。
过了2个月过后,需要更换另一个项目的时候,导入数据库还是老样子没啥毛病。
但是一切配置都搞定,项目启动过后,登录成功进入首页,一顿乱码!什么鬼!懵圈的一逼!之前的项目都没有毛病呀,怎么回事?
检查了一遍Eclipse的项目配置,没毛病呀。
最后检查了半天,发现是导入数据的时候,.dmp数据文件里的字符集与数据库软件的字符集不一样。
哎,要让我重新安装数据库软件,小弟做不到呀啊!~ ~! 里面那么多其他项目的数据,也不想备份。看来直接修改数据库软件的字符集要合适一点咯。
百度了半天,跟着操作,最终强行修改了数据库软件的字符集。下面贴一下当时的操作指令:
1、打开cmd
2、输入:SQLplus
3、输入:Connected as sys@ORCL AS SYSDBA(密码盲输)
4、输入:SHUTDOWN IMMEDIATE;
5、输入:STARTUP MOUNT;
6、输入:ALTER SYSTEM ENABLE RESTRICTED SESSION;
7、输入:ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
8、输入:ALTER SYSTEM SET AQ_TM_PROCESSES=0;
9、输入:ALTER SYSTEM SET AQ_TM_PROCESSES=0;
10、输入:ALTER DATABASE CHARACTER SET AL32UTF8;
若提示:提示新字符集必须是老字符集的超集。
则输入:ALTER DATABASE CHARACTER SET INTERNAL_USE AL32UTF8;(强制转换)
11、输入:SHUTDOWN IMMEDIATE;
12、输入:STARTUP;
中间第10步可能会遇到提示新字符集必须是老字符集超集的情况,只能通过强制转换了。
我当时是遇到了这个情况,好在强制转换成功,数据库重新启动后,程序又回到了正规。ˉ-ˉ
最后附上Oracle的导入数据的指令,以便日后忘记的时候有地方能快速查询到,哈哈!
导入 Oracle数据库账户用户名/密码 buffer 需要导入的数据库文件路径 导出用户 导入用户
IMP user1/pwd1 BUFFER=64000 FILE=C:\Users\getwind\Desktop\dmp190519.DMP FROMUSER=user2 TOUSER=user1
这只是命令导入数据方式4种中的其中一种,只是我最比较习惯的一种方式。
修改Oracle数据库的字符集的更多相关文章
- 修改Oracle数据库的字符集为UTF-8
1.改客户端字符集:通过WINDOWS的运行菜单运行Regedit,修改注册表 Start -> Run -> Rededit <-| Under registry Editor - ...
- 修改 Oracle 数据库实例字符集
Ø 简介 在 Oracle 中创建数据库实例后,就会有对应使用的编码字符集.当我们设置的字符集与操作系统或者其他软件字符集不一致时,就会出现个字符长度存储一个汉字. 2. SIMPLIFIED ...
- linux服务器上修改oracle数据库的字符集
linux服务器上以dba身份进入:sqlplus / as sysdba; 依次执行以下命令:shutdown immediate; startup mount; alter system enab ...
- oracle 数据库 NLS_CHARACTERSET 字符集的修改
修改Oracle 数据库字符集总结:修改方式大约有3种:方法一: (最安全的方法)数据库创建以后,如果需要修改字符集,通常需要重建数据库,通过导入导出的方式来转换.方法二: (最常用的方法)通过 &q ...
- Linux修改oracle 10g的字符集
修改数据库字符集为:ZHS16GBK查看服务器端字符集SQL > select * from V$NLS_PARAMETERS修改:$sqlplus /nologSQL>conn / as ...
- 修改oracle数据库的编码为utf-8
1.查看数据库字符集 ? 数据库服务器字符集select * from nls_database_parameters,其来源于props$,是表示数据库的字符集. 客户端字符集环境select * ...
- 修改Oracle Client的字符集
修改Oracle Client的字符集 找到注册表 HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraDb10g_home1下的 NLS_LANG,修改键值为SIMP ...
- 如何设置Oracle数据库客户端字符集以及系统中的NLS_LANG环境变量
概述: 本地化是系统或软件运行的语言和文化环境.设置NLS_LANG环境参数是规定Oracle数据库软件本地化行为最简单的方式. NLS_LANG参数不但指定了客户端应用程序和Oracle数据库所使用 ...
- 修改oracle数据库内存报错
今天修改oracle数据库内存时, alter system set memory_max_target=10240M scope=spfile;语句正确修改:但重启时却报错 : SQL> al ...
随机推荐
- 剑指offer自学系列(三)
题目描述: 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变,例如{5,1,4,2 ...
- Adapter之ArrayAdapter以及监听器设置
前言: ArrayAdapter:支持泛型操作,最简单的一个Adapter,只能展现一行文字~,我的学习就是通过这个最简单的适配器开始 正文: 完成这个ArrayAdapter需要三步:1.初始化数据 ...
- 内存寻址能力与CPU的位宽有关系吗?
答案是:没有关系.CPU的寻址能力与它的地址总线位宽有关,而我们通常说的CPU位宽指的是数据总线位宽,它和地址总线位宽半毛钱关系也没有,自然也与寻址能力无关. 简单的说,CPU位宽指的是一个时钟周期内 ...
- 洛谷 P2426 删数
题目传送门 解题思路: 区间DP,f[i][j]表示区间i~j可获得的最大值,因为本题的所有区间是可以直接一次性把自己全删掉的,所以所有区间初始化为被一次性删除的值,然后枚举断点,跑区间DP. AC代 ...
- 099-PHP二维数组的元素输出二
<?php $stu=array(array(76,87,68), array(65,89,95), array(90,80,66), array(90,95,65)); //定义一个二维数组 ...
- CF1209A Paint the Numbers
You are given a sequence of integers a1,a2,…,an. You need to paint elements in colors, so that: If w ...
- C# Stream篇(五) -- MemoryStream
MemoryStream 目录: 1 简单介绍一下MemoryStream 2 MemoryStream和FileStream的区别 3 通过部分源码深入了解下MemoryStream 4 分析Mem ...
- Vue 获取时间戳返回自定义时间格式
直接在Vue全局函数定义: Vue.prototype.padLeftZero = function(str) { return ('00' + str).substr(str.length); }; ...
- 【LeetCode】跳跃游戏II
[问题]给定一个非负整数数组,你最初位于数组的第一个位置.数组中的每个元素代表你在该位置可以跳跃的最大长度.你的目标是使用最少的跳跃次数到达数组的最后一个位置. 示例: 输入: [,,,,] 输出: ...
- SQL中将某个字段根据分隔符分割成两个字段
假设有表如下: 商品名称 耐克/DS001 安踏/AT002 阿迪达斯/AD009 使用SQL将[商品名称]字段按照分隔符‘/’进行分割后实现以下效果: 品牌 商品代码 耐克 DS001 安踏 AT0 ...