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数据库的字符集的更多相关文章

  1. 修改Oracle数据库的字符集为UTF-8

    1.改客户端字符集:通过WINDOWS的运行菜单运行Regedit,修改注册表 Start -> Run -> Rededit <-| Under registry Editor - ...

  2. 修改 Oracle 数据库实例字符集

    Ø  简介 在 Oracle 中创建数据库实例后,就会有对应使用的编码字符集.当我们设置的字符集与操作系统或者其他软件字符集不一致时,就会出现个字符长度存储一个汉字. 2.   SIMPLIFIED ...

  3. linux服务器上修改oracle数据库的字符集

    linux服务器上以dba身份进入:sqlplus / as sysdba; 依次执行以下命令:shutdown immediate; startup mount; alter system enab ...

  4. oracle 数据库 NLS_CHARACTERSET 字符集的修改

    修改Oracle 数据库字符集总结:修改方式大约有3种:方法一: (最安全的方法)数据库创建以后,如果需要修改字符集,通常需要重建数据库,通过导入导出的方式来转换.方法二: (最常用的方法)通过 &q ...

  5. Linux修改oracle 10g的字符集

    修改数据库字符集为:ZHS16GBK查看服务器端字符集SQL > select * from V$NLS_PARAMETERS修改:$sqlplus /nologSQL>conn / as ...

  6. 修改oracle数据库的编码为utf-8

    1.查看数据库字符集 ? 数据库服务器字符集select * from nls_database_parameters,其来源于props$,是表示数据库的字符集. 客户端字符集环境select * ...

  7. 修改Oracle Client的字符集

    修改Oracle Client的字符集 找到注册表 HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraDb10g_home1下的 NLS_LANG,修改键值为SIMP ...

  8. 如何设置Oracle数据库客户端字符集以及系统中的NLS_LANG环境变量

    概述: 本地化是系统或软件运行的语言和文化环境.设置NLS_LANG环境参数是规定Oracle数据库软件本地化行为最简单的方式. NLS_LANG参数不但指定了客户端应用程序和Oracle数据库所使用 ...

  9. 修改oracle数据库内存报错

    今天修改oracle数据库内存时, alter system set memory_max_target=10240M scope=spfile;语句正确修改:但重启时却报错 : SQL> al ...

随机推荐

  1. js数据类型 判断

    1. js数据类型(两种数据类型) 基本数据类型:null undefined number boolean symbol string 引用数据类型: array object null: 空对象 ...

  2. Linux学习《第四章shell脚本练习一》随堂练习(重要)

  3. UVA - 10129 Play on Words(欧拉回路)

    题意:将n个单词排成一个序列,保证相邻单词相邻处字母相同. 分析:每个单词看做一条有向边,字母为点,并查集看图是否连通,因为是有向图,所以最多只能有两个点入度不等于出度,且这两个点一个入度比出度大1, ...

  4. 采用idea创建springboot mybatis web工程

    idea是一款强大的利器,最近公司换成采用springboot在eclipse上开发,因为idea的强大,故而,学习一下该利器,搭建springboot的web工程,在下面练习使用. 一.创建spri ...

  5. 117-PHP在外部无法调用private类成员函数

    <?php class ren{ //定义人类 public function walk(){ //定义public成员方法 echo '我会走路.'; } private function d ...

  6. 115-PHP实例化和不实例化输出类常量

    <?php class boy{ //定义男孩类 const sex='男'; public $age=15; } echo '不实例化对象输出类常量:'.boy::sex; $boy=new ...

  7. NumPy 数组切片

    章节 Numpy 介绍 Numpy 安装 NumPy ndarray NumPy 数据类型 NumPy 数组创建 NumPy 基于已有数据创建数组 NumPy 基于数值区间创建数组 NumPy 数组切 ...

  8. DRF教程10-关系字段

    https://www.django-rest-framework.org/api-guide/relations/ 在编程中核心的就是数据结构. 关系字段用来表示model之间的关系,比如外键,m2 ...

  9. QThread创建多线程程序

    最近在阅读Qt 5.9 C++开发指南,为了加深对书本上内容的理解,参照书上的讲解尝试写了一些demo,用于以后工作中查阅,如果涉及侵权请告知,实例程序samp13_1 mythread.h #ifn ...

  10. UVA - 12716 GCD XOR(GCD等于XOR)(数论)

    题意:输入整数n(1<=n<=30000000),有多少对整数(a, b)满足:1<=b<=a<=n,且gcd(a,b)=a XOR b. 分析:因为c是a的约数,所以枚 ...