64位win 8系統裝64位oracle遇到的sqlplus和sqldeveloper亂碼解決

來源:互聯網
上載者:User

話不多說,先說下這次遇到的問題。在64位作業系統上裝64位oracle時,本來預設的編碼是SIMPLIFIED CHINESE_CHINA.ZHS16GBK,但是實際安裝的時候卻沒有這個編碼,裝完後發現在sqlplus裡面資料亂碼,網上找了好多資料 終於找到一個靠得住的解決辦法,就是在環境變數中添加一項,NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK 然後亂碼就解決了。


plsql developer因為沒有64位版本的,所以如果什麼都不配置的話在64位作業系統是用不了的,解決辦法如下:

首先下載一個oracle用戶端,解壓得到的檔案,將得到的檔案放進oracle安裝目錄下的product下,然後再由oracle用戶端解壓下的檔案夾根目錄拷貝oracle的安裝目錄下的NETWORK檔案夾,接下來在plsql developer中的工具-喜好設定-oracle-串連 下的oci庫選擇oracle用戶端中的oci.dll檔案路徑即可。

但是此時的plsql developer串連資料庫會發現亂碼問題存在,主要還是編碼問題,具體哪個編碼不對不是很清楚,解決辦法如下:

SQL> shutdown immediate;


  Database closed.


  Database dismounted.


  ORACLE instance shut down.


  SQL> startup mount ORACLE instance started.


  Total System Global Area 236000356 bytes


  Fixed Size 451684 bytes


  Variable Size 201326592 bytes


  Database Buffers 33554432 bytes


  Redo Buffers 667648 bytes


  Database mounted.


  SQL> ALTER SYSTEM ENABLE 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 ZHS16GBK;


  ALTER DATABASE CHARACTER SET ZHS16GBK ERROR at line 1:


  ORA-12712: new character set must be a superset of old character set


  提示我們的字元集:新字元集必須為舊字元集的超集,這時我們可以跳過超集的檢查做更改:


  SQL> ALTER DATABASE character set INTERNAL_USE ZHS16GBK;


  Database altered.


alter system disable restricted session;//這句是設定所有使用者都可以登入資料庫的

本文出自 “暗黑無界” 部落格,謝絕轉載!

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.