本人之前在進行數據遷移。由於疏忽,將數據庫的字符集沒有對應,導致數據導入之後。。。存儲過程、函數中的漢字變成了亂碼;
同時 ,表當中的註釋行業變成了亂碼。。。。
然後想補救一下。。。。
修改oracle字符集。。。
首先
--查看Oracle數據庫字符集:
select userenv('language') from dual;
查詢結果:
SIMPLIFIED CHINESE_CHINA.AL32UTF8
--修改oracle數據庫字符集:(在SQL Plus中)
sql> conn / as sysdba;
shutdown 數據庫
sql> shutdown immediate;
database closed.
database dismounted.
oracle instance shut down.
啓動到mount模式
sql> startup mount;
oracle instance started.
total system global area 135337420 bytes
fixed size 452044 bytes
variable size 109051904 bytes
database buffers 25165824 bytes
redo buffers 667648 bytes
database mounted.
sql> alter system enable restricted session;
當數據庫以RESTRICT狀態啓動,或者進入到RESTRICT狀態,則Oracle禁止普通用戶連接數據庫。
而擁有DBA角色的用戶,或者擁有RESTRICTED SESSION權限的用戶可以登陸數據庫。
system altered.
sql> alter system set job_queue_processes=0;
防止有任務自動啓動執行
system altered.
sql> alter system set aq_tm_processes=0;
system altered.
sql> alter database open;
database altered.
sql> alter database character set internal_use JA16SJIS;
sql> shutdown immediate;
sql> startup;