• 【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

  • 相关阅读:
    正则入门小随
    用栈求简单算术表达式的值
    数据结构复习
    数据结构笔记(第九章)
    数据结构笔记(第八章)
    Java第三阶段学习(十四、JSP动态页面、EL表达式、JSTL标签库)
    Java第三阶段学习(十三、会话技术、Cookie技术与Session技术)
    Java第三阶段学习(十二、HttpServletRequest与HttpServletResponse)
    Java第三阶段学习(十一、Servlet基础、servlet中的方法、servlet的配置、ServletContext对象)
    Java第三阶段学习(十、XML学习)
  • 原文地址:https://www.cnblogs.com/zhunian/p/2748723.html
Copyright © 2020-2023  润新知