1. 程式人生 > >oracle數據出現憤怒加密算法

oracle數據出現憤怒加密算法

sp2 憤怒 rest cto set alter base 更改 .com

作為一名程序員,經常會遇見一些詭異的事情,今天我就遇見一個,oracle數據通過數據泵impdp導入後出現亂碼,經過如下操作:

1.oracle server 端 字符集查詢:

select userenv(‘language‘) from dual
發現查出來的結果和我原導出數據的結果不一致;
原導出數據庫的結果為:SIMPLIFIED CHINESE_CHINA.ZHS16GBK
新數據的結果是:SIMPLIFIED CHINESE_CHINA.WE8ISO8859P1
2.server端字符集修改
更改字符集步驟方法(WE8ISO8859P1 --> ZHS16GBK)
登錄oracle所在linux服務器,通過oracle(數據庫安裝用戶)

登錄後,以管理員身份登錄sqlplus

SQL> conn /as sysdba

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 INTERNAL_USE ZHS16GBK;

Database altered.

SQL> shutdown immediate;

SQL> startup

再次查看登錄系統,結果發現:
技術分享圖片
出現了這種憤怒的方式,於是我也是醉了,後來我決定重新再次導入數據:
3.數據泵導入命令:
(1).oracle創建directory:
create directory 名稱 as ‘路徑’;
drop directory 名稱 ;
例如:create directory bbsp_tmp as ‘/home/app’;
(2).linux下執行:
directory=名稱(已經創建的),將dmp文件存放在這個路徑下;
impdp 導入數據庫用戶/導入數據庫密碼 directory=名稱(已經創建的)dumpfile=*.dmp(dmp文件) remap_schema=原導出文件用戶名:導入數據用戶名;

例:impdp bbspzhun/bbspzhun directory=bbsp_tmp dumpfile=bbsp20181121.dmp remap_schema=bbsp:bbspzhun;
結果又出現了這個問題:expdp導出數據時碰到ora-39006錯誤,錯誤提示如下所示,
ORA-39006: internal error
ORA-39213: Metadata processing is not available
4.解決ORA-39006: internal error問題:
SQL> execute dbms_metadata_util.load_stylesheets;
PL/SQL procedure successfully completed.****

oracle數據出現憤怒加密算法