oracle ora-22288,Oracle APEX 3.2 安装

前几时帮朋友安装了一个APEX 3.2环境,参照网上的文档和官方文档进行安装,顺利完成。

APEX安装前的准备

登录系统:sqlplus system/0621

1.从数据字典v$instance中获取数据库的实例名和版本号:

SQL> conn system/oracle

Connected.

SQL> show user;

USER is "SYSTEM"

SQL> select instance_name,version from v$instance;

INSTANCE_NAMEVERSION

---------------- -----------------

ORCL11.1.0.6.0

2.从数据字典v$version中获取版本的详细信息:

SQL> select * from v$version;

BANNER

--------------------------------------------------------------------------------

Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production

PL/SQL Release 11.1.0.6.0 - Production

CORE11.1.0.6.0Production

TNS for Linux: Version 11.1.0.6.0 - Production

NLSRTL Version 11.1.0.6.0 – Production

3.确认oracle所使用的参数文件是否为二进制的参数文件(spfile表明为二进制文件):

SQL> show parameter pfile

NAMETYPE VALUE

------------------------------------ ----------- ------------------------------

spfilestring/u01/oracle/dbs/spfileORCL.ora

4.确认oracle是否使用的是自动内存管理:

SQL> show parameter memory_target

NAMETYPEVALUE

------------------------------------ ----------- ------------------------------

memory_targetbig integer 396M

5.查看表空间是否为自动扩展:

SQL> select tablespace_name, autoextensible from dba_data_files;

TABLESPACE_NAMEAUT

------------------------------ ---

USERSYES

UNDOTBS1YES

SYSAUXYES

SYSTEMYES

EXAMPLEYES

PEIHUNO

PEIHUYES

7 rows selected.

嵌入式PL/SQL网关配置

使用嵌入式PL/SQL网关(也称连接器,Gateway)安装和配置Oracle Application Express的具体步骤如下:1.安装Oracle Application Express.

1.1先进入到APEX的解压根目录

我的目录是/u01/apex(这个一定要做,否则等下无法正确安装)

[oracle@oracle11g ~]$ cd /u01/apex

[oracle@oracle11g apex]$ ls

apex_epg_config_core.sqlapxe111.sqlcore

apex_epg_config.sqlapxldimg.sqlcoreins.sql

apexins.sqlapxpatch.sqldevins.sql

apexvalidate.sqlapxrelod.sqldoc

apxchpwd.sqlapxremov.sqlendins.sql

apxconf.sqlapxrtins.sqlimages

apxdbmig.sqlapxsqler.sqlinstall2011-03-14_01-45-58.log

apxdevrm.sqlapxxemig.sqlload_trans.sql

apxdvins.sqlapxxepwd.sqlowa

apxe101.sqlbuilderutilities

apxe102.sqlcatapx.sql

1.2然后用SYS身份登陆

SQL> conn / as sysdba

Connected.

SQL> show user

USER is "SYS"

1.3安装脚本

SQL> @apexins SYSAUX SYSAUX TEMP /i/

其中:apexins为安装脚本文件名称

SYSAUX SYSAUX第一个SYSAUX为数据存放的表空间,第二个为用户信息存放表空间

TEMP为排序所用的表空间

/i/表示EXPRESS中存放的虚拟目录

1.4检查是否安装完毕

SQL> select username,created from dba_users

2where username like 'APEX%';

USERNAMECREATED

------------------------------ ---------

APEX_03020014-MAR-11

APEX_PUBLIC_USER03-AUG-07

SQL> select username,created from dba_userswhere username like 'FLOW%';

USERNAMECREATED

------------------------------ ---------

FLOWS_FILES03-AUG-07

FLOWS_03000003-AUG-07

2.修改Admin帐户密码

SQL> @apxchpwd

Enter a value below for the password for the Application Express ADMIN user.

Enter a password for the ADMIN user[]

输入你的密码:oracle

Session altered.

...changing password for ADMIN

PL/SQL procedure successfully completed.

Commit complete.

3.配置嵌入式PL/SQL网关。

SQL> @apex_epg_config/u01/apex

PL/SQL procedure successfully completed.

PL/SQL procedure successfully completed.

Directory created.

declare

*

ERROR at line 1:

ORA-22288: file or LOB operation FILEOPEN failed

No such file or directory

ORA-06512: at "SYS.XMLTYPE", line 296

ORA-06512: at line 18

Commit complete.

PL/SQL procedure successfully completed.

PL/SQL procedure successfully completed.

timing for: Load Images

Elapsed: 00:00:03.68

Session altered.

PL/SQL procedure successfully completed.

Commit complete.

Session altered.

Directory dropped.

错误原因是目录不对。解决办法:改/tmp为你解压apex后所在的目录,例如我的是:/u01/apex,那么/tmp为/u01

文档做了注释,但地方不对,在@apxldimg.sql是有如下说明:

引用

Tip:

The above examples assume that you unzipped Oracle Application Express in a directory called TEMP on Windows and tmp on UNIX or Linux.

纠正后如下:

SQL> @apex_epg_config/u01

PL/SQL procedure successfully completed.

PL/SQL procedure successfully completed.

Directory created.

PL/SQL procedure successfully completed.

Commit complete.

PL/SQL procedure successfully completed.

PL/SQL procedure successfully completed.

timing for: Load Images

Elapsed: 00:01:45.40

Session altered.

PL/SQL procedure successfully completed.

Commit complete.

Session altered.

Directory dropped.

4.核实和开启Oracle XML DB HTTP服务器的端口。

4.1查看端口是否开启,为0未开启,大于0表示开启

SQL> select DBMS_XDB.GETHTTPPORT FROM DUAL;

GETHTTPPORT

-----------

0

4.2开启制定端口

SQL> exec DBMS_XDB.SETHTTPPORT(8080);

PL/SQL procedure successfully completed.

4.3再次查询

SQL>select DBMS_XDB.GETHTTPPORT FROM DUAL;

GETHTTPPORT

-----------

8080

5.开启Oracle 11g数据库中的网络服务

在SQL中运行开启网络服务语句如下:

SQL>

DECLARE

ACL_PATHVARCHAR2(4000);

ACL_IDRAW(16);

BEGIN

-- Look for the ACL currently assigned to '*' and give APEX_030200

-- the "connect" privilege if APEX_030200 does not have the privilege yet.

SELECT ACL INTO ACL_PATH FROM DBA_NETWORK_ACLS

WHERE HOST = '*' AND LOWER_PORT IS NULL AND UPPER_PORT IS NULL;

-- Before checking the privilege, ensure that the ACL is valid

-- (for example, does not contain stale references to dropped users).

-- If it does, the following exception will be raised:

--

-- ORA-44416: Invalid ACL: Unresolved principal 'APEX_030200'

-- ORA-06512: at "XDB.DBMS_XDBZ", line ...

--

SELECT SYS_OP_R2O(extractValue(P.RES, '/Resource/XMLRef')) INTO ACL_ID

FROM XDB.XDB$ACL A, PATH_VIEW P

WHERE extractValue(P.RES, '/Resource/XMLRef') = REF(A) AND

EQUALS_PATH(P.RES, ACL_PATH) = 1;

DBMS_XDBZ.ValidateACL(ACL_ID);

IF DBMS_NETWORK_ACL_ADMIN.CHECK_PRIVILEGE(ACL_PATH, 'APEX_030200',

'connect') IS NULL THEN

DBMS_NETWORK_ACL_ADMIN.ADD_PRIVILEGE(ACL_PATH,

'APEX_030200', TRUE, 'connect');

END IF;

EXCEPTION

-- When no ACL has been assigned to '*'.

WHEN NO_DATA_FOUND THEN

DBMS_NETWORK_ACL_ADMIN.CREATE_ACL('power_users.xml',

'ACL that lets power users to connect to everywhere',

'APEX_030200', TRUE, 'connect');

DBMS_NETWORK_ACL_ADMIN.ASSIGN_ACL('power_users.xml','*');

END;

/

PL/SQL procedure successfully completed.

6.将用户解锁

SQL> ALTER USER ANONYMOUS ACCOUNT UNLOCK;

User altered.

7.安装中文语言。

[oracle@oracle11g ~]$ set NLS_LANG=American_America.AL32UTF8

[oracle@oracle11g ~]$ sqlplus / as sysdba

SQL> ALTER SESSION SET CURRENT_SCHEMA = APEX_030200;

Session altered

SQL> @/u01/oracle/apex/builder/zh-cn/load_zh-cn.sql

8.设置JOB_QUERY_PROCESS参数。

查看参数值:

SQL> SELECT VALUE FROM v$parameter WHERE NAME ='job_queue_processes';

VALUE

---------------------------------------------------

1000

得到的值如果为20以上,则无需更改,否则更改命令如下

SQL>ALTER SYSTEM SET JOB_QUEUE_PROCESSES = 100

9.配置SHARED_SERVER参数。

SQL> ALTER SYSTEM SET SHARED_SERVERS = 5 SCOPE=BOTH;

SQL> show parameter shared_servers;

NAMETYPEVALUE

------------------------------------ ----------- ------------------------------

max_shared_serversinteger

shared_serversinteger5

开启数据库监听和数据库EM

[oracle@oracle11g ~]$ lsnrctl start

LSNRCTL for Linux: Version 11.1.0.6.0 - Production on 14-MAR-2011 05:04:28

Copyright (c) 1991, 2007, Oracle.All rights reserved.

Starting /u01/oracle/bin/tnslsnr: please wait...

TNSLSNR for Linux: Version 11.1.0.6.0 - Production

System parameter file is /u01/oracle/network/admin/listener.ora

Log messages written to /u01/diag/tnslsnr/oracle11g/listener/alert/log.xml

Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle11g)(PORT=1521)))

Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle11g)(PORT=1521)))

STATUS of the LISTENER

------------------------

AliasLISTENER

VersionTNSLSNR for Linux: Version 11.1.0.6.0 - Production

Listener Parameter File/u01/oracle/network/admin/listener.ora

Listener Log File/u01/diag/tnslsnr/oracle11g/listener/alert/log.xml

Listening Endpoints Summary...

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle11g)(PORT=1521)))

(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))

The listener supports no services

The command completed successfully

[oracle@oracle11g ~]$ emctl start dbconsole

Oracle Enterprise Manager 11g Database Control Release 11.1.0.6.0

Copyright (c) 1996, 2007 Oracle Corporation.All rights reserved.

https://oracle11g:1158/em/console/aboutApplication

Starting Oracle Enterprise Manager 11g Database Control ............. started.

------------------------------------------------------------------

Logs are generated in directory /u01/oracle/oracle11g_ORCL/sysman/log

设置本地环境

1.登陆APEX管理服务

输入网址登陆

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值