【Oracle XE系列之一】Windows 7 64位安裝Oracle XE(32位)數據庫(REG_XE報錯、字符集、修改8080端口等)


一、安裝

1、去Oracle官網下載XE版的安裝包(貌似Windows只有32位的,Linux只有6位的),解壓。

2、雙擊Setup.exe,啟動安裝程序,在選在路徑那里不要點下一步,否則會報“... ...Reg_XE. 該文件似乎不存在。”的錯誤!

3、進入以下目錄“C:\Users\<your user name>\AppData\Local\Temp{60712028-B7B0-4EC3-9C28-663111EC954A}”,找到文件“OracleMTSRecoveryService.reg”,並復制一份重命名為“KEY_XE.reg”。

4、回到安裝程序,點擊下一步繼續安裝即可。

二、修改Oracle XE的字符集

1、--問題:在字符集AL32UTF8中,一個漢字占用3個字符

SQL> select lengthb('') from dual; LENGTHB('') -------------
            3

如果不修改字符集,那你就痛苦吧,不過還好,我這里有個方法還是蠻簡單的。

過程也相當簡單,首先啟動命令行(開始-》運行-》CMD)。然后執行下面的命令。

1.)命令行窗口下運行:sqlplus.exe /nolog

2.)然后再sqlplus里面執行如下命令

connect sys_name/sys_password as sysdba --根據自己的實際情況登入
shutdown immediate; startup mount alter system enable restricted session; alter system set JOB_QUEUE_PROCESSES=0; alter system set AQ_TM_PROCESSES=0; alter database open; alter database character set internal_use ZHS16GBK; shutdown immediate Startup

即可完成字符集的轉換,如下

SQL> select lengthb('') from dual; LENGTHB('') -------------
            2

當然這時你的APEX也就同時變成了亂碼,解決辦法有3個:

  • 一個是不用APEX;
  • 一個是把IE的的語言設置為英文(或者http://127.0.0.1:8080/apex/apex_admin 即可以在界面下方的“English”和“中文(簡體)”之間進行語言切換了)
  • 最后一個就是升級APEX,並安裝中文包(推薦)下面將對這種方法做介紹,仔細聽好了啊;)

2、安裝 APEX 4.0.2

1.)將 apex_4.0.2.zip 中的 apex 文件夾解包到 D/OracleXE/ 下;

2.)打開 cmd 控制台窗口,切換當前路徑到 E:/OracleXE/apex/ 下,啟動 SQL*PLUS,以 SYSDBA 角色登錄數據庫:

D:/OracleXE/apex>sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: <SYS密碼>

3.)執行安裝腳本 apexins.sql:

SQL>@apexins SYSAUX SYSAUX TEMP /i/

4.)安裝完成后,執行 apxldimg.asl 腳本安裝 APEX 中需要用到的圖片、CSS 和 JS 腳本:

SQL>@apxldimg D:/OracleXE/

這里需要注意的是:傳遞給 apxldimg.sql 腳本的參數是 APEX 主目錄的父目錄(例如:你的 APEX 安裝路徑是 e:/oraclexe/apex,那么這里路徑參數就是 e:/oraclexe),這一點可以通過查看 apxldimg.sql 腳本得到驗證,這也是網上很多人說安裝圖片時出現路徑錯誤的原因所在。

5.)下面執行 apxchpwd.sql 腳本並根據提示設定 APEX 的 Admin 密碼:

SQL>@apxchpwd

6.)安裝完成后通過 http://127.0.0.1:8080/apex/apex_admin 能進入 APEX 管理后台,即表示安裝成功。

3、安裝中文語言包
1.)打開 cmd 控制台窗口設置環境變量  NLS_LANG:

set NLS_LANG=American_America.AL32UTF8

注意:如果前面有打開過 SQL*PLUS 窗口,一定記得要先關閉它再設置環境變量 NLS_LANG。

2.)切換到 E:/apex_4.0.2/apex/builder/zh-cn 路徑下,啟動 SQL*PLUS 並以 SYSDBA 角色執行下列語句:

SQL>ALTER SESSION SET CURRENT_SCHEMA = APEX_040000; SQL>@load_zh-cn.sql

等待安裝完成后,重新進入 http://127.0.0.1:8080/apex/apex_admin 即可以在界面下方的“English”和“中文(簡體)”之間進行語言切換了。

額外補充:

解決不能通過網絡及主機名訪問 APEX 的問題:啟動 SQL*PLUS 並以 SYSDBA 角色登錄數據庫,執行下列語句:

SQL>execute dbms_xdb.setListenerLocalAccess(l_access => FALSE);

4、設置后台運行參數

alter system set JOB_QUEUE_PROCESSES=2;

注釋:JOB_QUEUE_PROCESSES=0的話,之后的Job沒有Job調度進程,是不會run的。

三、修改Oracle XE Listener 占用的1521、8080端口
安裝OracleXE時,有這么一段提示

 1.Destination Folder: D:\oraclexe\ 2.Port for 'Oracle Database Listener': 1521  
 3.Port for 'Oracle Services for Microsoft Transaction Server': 2030  
 4.Port for HTTP Listener: 8080

可以看出,默認web控制台服務端口是8080,安裝時又不能更改。安裝之后和Tomcat, Jboss等服務器沖突,所以會遇到很多問題。在XE的安裝文件中有這樣一段SQL,可以用來更改http的端口。
在D:\oraclexe\app\oracle\product\10.2.0\server\config\scripts\postDBCreation.sql文件里。有這樣一段Sql代碼:

 1.begin  
 2.   dbms_xdb.sethttpport('8080'); 3.   dbms_xdb.setftpport('0'); 4.end; 5./ 

再看看日志文件D:\oraclexe\app\oracle\product\10.2.0\server\config\log\postDBCreation.log里,有這樣一段記錄:

 1.SQL> begin  
 2.  dbms_xdb.sethttpport('8080'); 3.  dbms_xdb.setftpport('0'); 4. end; 5. /PL/SQL procedure successfully completed. 

可以看出Oracle XE就是用它來設置http端口的,打開SQL*Plus控制台。用sys或者system登陸。然后運行:http://www.uspcat.com/?fromuid=11777

 1.begin  
 2.   dbms_xdb.sethttpport('8088'); 3.   dbms_xdb.setftpport('0'); 4.end; 5./

這樣就把端口設置為8088了。

 轉載請注明出處

http://www.cnblogs.com/zhunian/archive/2012/10/31/2748723.html   

http://www.zhunian.iego.cn


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM