oracle修改字符集编码
oracle修改字符集编码
·
查询数据库字符集编码
SELECT * FROM NLS_DATABASE_PARAMETERS p where p.PARAMETER='NLS_CHARACTERSET';
1.以sysdba的身份登录
sqlplus / as sysdba
2.关闭数据库
shutdown immediate
3.以mount(挂载方式)打开数据库
startup mount
4.设置session
ALTER SYSTEM ENABLE RESTRICTED SESSION;
ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
ALTER SYSTEM SET AQ_TM_PROCESSES=0;
5.启动数据库
alter database open;
6.修改字符集(改成你需要的字符集)
ALTER DATABASE CHARACTERSET ZHS16GBK;
这里可能会出错,提示ORA-12712: 新字符集必须为旧字符集的超集
跳过超集检查做更改:
ALTER DATABASE character set INTERNAL_USE ZHS16GBK;
7.关闭数据库,重新启动
shutdown immediate
startup
8.再次查询,新数据库字符集已经变成ZHS16GBK,你以为这样就完了么?这个时候可能数据泵无法使用,我就碰到了。所以继续执行下边代码
execute sys.dbms_metadata_util.load_stylesheets;
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐

所有评论(0)