zoukankan      html  css  js  c++  java
  • Linux修改oracle 10g的字符集

    修改数据库字符集为:ZHS16GBK
    查看服务器端字符集
    SQL > select * from V$NLS_PARAMETERS
    修改:
    $sqlplus /nolog
    SQL>conn / as sysdba~
    若此时数据库服务器已启动,则先执行 SHUTDOWN IMMEDIATE 命
    令关闭数据库服务器,然后执行以下命令:
    SQL>shutdown immediate~
    SQL>STARTUP MOUNT~
    SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION~
    SQL>ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0~
    SQL>ALTER SYSTEM SET AQ_TM_PROCESSES=0~
    SQL>ALTER DATABASE OPEN~
    SQL>ALTER DATABASE CHARACTER SET ZHS16GBK~
    *
    ERROR at line 1:
    ORA-12721: operation cannot execute when other sessions are active
    若出现上面的错误,使用下面的办法进行修改,使用INTERNAL_USE可以跳过超集的检查:
    SQL>ALTER DATABASE CHARACTER SET INTERNAL_USE ZHS16GBK~
    SQL>SHUTDOWN IMMEDIATE~
    SQL>STARTUP

    Oracle gb2312 字符集 转 utf-8

    最近因为一些特殊的需求,考虑到以后系统的开发,
    就把现有Oracle数据库的字符集gb2312改为了UTF-8
    步骤:
    1.在SQL*PLUS 中,以DBA登录
    conn 用户名 as sysdba
    2.执行转换语句:
    SHUTDOWN IMMEDIATE;
    STARTUP MOUNT EXCLUSIVE;
    ALTER SYSTEM ENABLE RESTRICTED SESSION;
    ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
    ALTER SYSTEM SET AQ_TM_PROCESSES=0;
    ALTER DATABASE OPEN;
    ALTER DATABASE NATIONAL CHARACTER SET UTF8;
    SHUTDOWN immediate;
    startup;

    注意:如果没有大对象,在使用过程中进行语言转换没有什么影响,(切记设定的字符集必须是ORACLE支持,不然不能start)

    按上面的做法就可以,但是可能会出现‘ORA-12717: Cannot ALTER DATABASE NATIONAL CHARACTER SET when
    NCLOB data exists’ 这样的提示信息

    要解决这个问题有两种方法

    一个是,利用INTERNAL_USE 关键字修改区域设置,
    还有一个是利用re-create,但是re-create有点复杂,所以请用internal_use,

    SHUTDOWN IMMEDIATE;
    STARTUP MOUNT EXCLUSIVE;
    ALTER SYSTEM ENABLE RESTRICTED SESSION;
    ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
    ALTER SYSTEM SET AQ_TM_PROCESSES=0;
    ALTER DATABASE OPEN;
    ALTER DATABASE NATIONAL CHARACTER SET INTERNAL_USE UTF8;
    SHUTDOWN immediate;
    startup;

    如果按上面的做法做,National charset的区域设置就没有问题

  • 相关阅读:
    记一次file_get_contents报failed to open stream: HTTP request failed! HTTP/1.1 400 Bad Request的错
    记一次centos7下配置服务器的过程
    locate: 无法执行 stat () `/var/lib/mlocate/mlocate.db': 没有那个文件或目录
    VM12虚拟机Centos7配置动态IP的网络设置
    记录下防御SSH爆破攻击的经验(CentOS7.3)
    第6次实践作业 17组
    第5次实践作业
    第3次实践作业
    第2次实践作业
    第1次实践作业
  • 原文地址:https://www.cnblogs.com/zhangkaimin/p/3976722.html
Copyright © 2011-2022 走看看