Oracle APEX系列(一) 安装

来源:互联网 发布:迈腾轮毂尺寸数据 编辑:程序博客网 时间:2024/05/18 07:37

Oracle APEX系列(一) 安装

在网上粗略的搜索了一下,已经有很多关于Oracle Application ExpressAPEX)的文章了,真的很高兴看到已经有这么多国内的朋友使用起这个工具了。要知道,在Oracle公司的很多团队都有用APEX开发的应用程序,这其中就包括广大Oracle爱好者熟悉的AskTOM网站。
APEX最新的版本是2.2,在此之前的名字是HTMLDB。我很喜欢这个老名字,因为它一语道破了这个产品的本质:

a hosted declarative development environment for developing and deploying database-centric Web applications. 

看到这个定义,有的人会有这样的疑问:以数据库为中心进行web应用程序的开发,那它的性能如何呢?Oracle官方给出的解释是:

Oracle Application Express provides application developers and application users with an extremely high level of performance.  Because Oracle Application Express resides in the Oracle database, it has minimal impact on network traffic.  Plus, Application Builder includes a large number of monitoring reports to enable you to identify and tune application performance.

我本人对这个解释不是十分满意,我做过很长时间的性能测试,影响性能的因素当然不只是这里提到的network traffic,而一些辅助工具也不是医病的灵丹妙药,最怕的是用工具看到有病,却不知道如何医治甚至得到无药可治的答案。不过这不意味Apex的性能不好,Apex提供了很多可以调整的地方,其中最主要的一项就是数据库的调整了。试想一下,即使是现在最普遍的J2EE应用程序,性能调整也是一项最艰巨的任务。
 
好了,下面先开始安装吧。
APEX安装
简单的说,共分四步:
1、 安装Oracle DB
APEX2.2要求Oracle DB版本为9.2.0.3或更高。注意APEX2.2不支持Oracle DB XE,如果你的数据库是Oracle DB XE,就要选用APEX2.1。我这里选用的数据库是Oracle 10.2.0.1,虽然不是目前最高的版本(最高的版本是10.2.0.1patchset),但是已经包含了很多令人振奋的新特性了。
建议CSDN的朋友们也多使用一些Oracle产品的新版本,时刻保持对新技术的敏感度。
 
Oracle DB的免费下载网址为:
http://www.oracle.com/technology/software/products/database/oracle10g/index.html
注意:不要用下载的软件从事有任何商业目的的活动。
 
下载之后开始安装,步骤非常简单。你可以选择在安装的同时创建一个数据库,或者在安装结束后用DBCA创建一个数据库,最好将数据库的字符集设为AL32UTF8(如果你想让你的数据库支持多种语言,请选用AL32UTF8;否则可以考虑使用一种native本地的字符集,比如ZHS16GBK)。这里我创建了一个service nametina03.cn.oracle.comSIDtina03)的数据库。
安装结束后,打开services(服务)窗口,你可以看到里面多了数个oracle的服务,其中包括我们需要的OracleServiceTINA03OracleOraDb10gTNSListener,其他的服务都可以停掉且设为手动启动。
 
2、 安装Oracle Http Server
APEX2.2是需要部署到Oracle Http Server上的,它所以能运行主要是依赖于mod_plsql这个模块。下面这三个系列的产品可以满足需要:

Oracle 9i Database release 2 (9.2) or higher

Oracle 9i Application Server release 1 (1.0.2.2) or higher

Oracle 10Database CompanionCD(CCD) release 1 or 2

我们选用Oracle DB 10.2.0.1.0 CCD。安装过程也十分简单,需要注意的是:

(a)选择与DB不同的安装目录,即另一个Oracle Home

(b)在选择安装Http Server后的下一个页面,会询问是否安装Oracle Workflow,这与APEX没有任何直接的关系,当然如果你想在你的应用程序中使用Oracle Workflow,也可以安装。当然,即使现在不安装,以后仍然可以再次运行起这个安装程序进行安装。

安装结束后,在service(服务)程序,你会看到里面多了两个服务,名字类似于:OracleHttpServerProcessManagerOracleHttpServerASControl。其中:
(a)OracleHttpServerASControlenterprise managementEM)管理服务,功能类似于Db中的EM(刚才创建数据库时生成的OracleDBConsoletina03服务),建议将OracleHttpServerASControl停止且改为手动启动。

(b)OracleHttpServerProcessManager是我们真正需要的服务,只有它启动了,APEX才能正常访问。如果不通过services(服务)窗口来启动也可以在DOS创建下运行:%http server oracle home%/opmn/bin/opmnctl startall

 
3、 安装APEX2.2
“严重”注意,如果你按(2)中的步骤装Http Server,会发现里面有一个HTMLDB10.2.0.1的安装选项,这个不是APEX2.2APEX是一个单独的zip包,请从以下网址单独下载:
http://download.oracle.com/otn/java/appexpress/apex_2.2.zip
下载后解压缩到本地目录,例如c:/apex。打开一个dos窗口。这里有两点注意事项:

(a)       APEX的框架数据库部分,即用到的数据库的各种对象,要导入到Oracle DB中;APEX的前台页面部分,即用到的图片、javascriptcss文件等,到拷贝到Http Server中。我们在这一步完成的是向数据库导入APEX,而拷贝工作放在下一步配置中完成。

(b)       在本地安装有两个Oracle Home,安装程序会自动在系统环境变量和注册表中进行一些设置。由于我们先安装的DB后安装的Http ServerHttp Server的路径就会出现在Db的路径前。这样在运行sqlplus时就有可能发生问题,推荐的做法是创建一个设置DB运行环境的shell脚本,例如tina03.cmd 
set ORACLE_HOME=C:/oracle/OraDb
set J2EE_HOME=%ORACLE_HOME%/j2ee/home
set ORACLE_SID=tina03
set PATH=%ORACLE_HOME%/jdk/bin;%ORACLE_HOME%/bin;%PATH%

set LD_LIBRARY_PATH=%ORACLE_HOME%/lib;%ORACLE_HOME%/ctx/lib

call c:
cd c:/
 
下面依次执行以下命令:

(a)       c:/tina03.cmd

(b)       cd c:/apex

(c)       sqlplus /nolog

(d)       conn sys/sys_passwd as sysdba

(e)       @apexins password SYSAUX SYSAUX TEMP /i/ none

其中,apexinsc:/apex目录下一个sql脚本的名字;passwordAPEX管理员(administrator)帐号的口令;前后两个SYSAUX分别代表tablespace_apextablespace_files两个表空间,它们分别是为apex应用程序用户和apex文件用户准备的。TMP代表APEX使用的临时表空间; /i/指定APEX图片的虚拟路径;none指定数据库的连接串,因为这里是本地数据库所有为none,否则应为TNS中定义的SID
 
 
到这里,APEX的主体安装就已经结束了,但是现在还无法使用,要完成下面这些配置工作。
 
4、 安装后的配置
 

(1)          重新编译无效的PL/SQL Package

这里要说的是一个常识:很多情况下,在我们以批处理的方式运行了一系列sql命令,创建了一系列object时,这些object的状态可能是无效的。需要重新编译一下。连接到数据库,运行数据库目录下的rdbms/admin子目录下的utlrp.sql
(a)启动一个DOS窗口
(b)运行c:/tina03.cmd

(c)sqlplus /nolog

(d)conn sys/sys_passwd as sysdba

(e)@ C:/oracle/OraDb/rdbms/admin/utlrp.sql

 

(2)          拷贝image子目录到Http ServerOracle Home

前面我们把APEX2.2解压缩到c:/apex,这个目录下有一个images子目录,把这个image目录拷贝到Http ServerOracle Home下的Apache/Apache子目录下,例如你的Http ServerOracle Homec:/oracle/HttpServer, 那么就把images子目录拷贝到c:/oracle/HttpServer/Apache/Apache下。
 

(3)          配置DAD

这一步骤是让mod_plsql可以识别APEX请求,也就是说把APEX注册到mod_plsql中。我们要修改的是Http ServerOracle Home下的Apache/modplsql/conf子目录中的dads.conf文件,修改后的文件如下:

# ============================================================================

#                     mod_plsql DAD Configuration File                        

# ============================================================================

# 1. Please refer to dads.README for a description of this file               

# ============================================================================

 

# Note: This file should typically be included in your plsql.conf file with

# the "include" directive.
 

# Hint: You can look at some sample DADs in the dads.README file

 

# ============================================================================

AddType text/xml xbl
AddType text/x-component htc
 
Alias /i/ "D:/oracle/HttpServer/Apache/Apache/images/"
 
<Location /pls/apex>
Order deny,allow
PlsqlDocumentPath docs
AllowOverride None

PlsqlDocumentProcedure wwv_flow_file_manager.process_download

PlsqlDatabaseConnectString localhost:1521:tina03.cn.oracle.com ServiceNameFormat

PlsqlNLSLanguage "SIMPLIFIED CHINESE_CHINA.AL32UTF8"
PlsqlAuthenticationMode Basic
SetHandler pls_handler

PlsqlDocumentTablename wwv_flow_file_objects$

PlsqlDatabaseUsername APEX_PUBLIC_USER
PlsqlDefaultPage apex
PlsqlDatabasePassword welcome0
Allow from all
</Location>
 
我用红色加重的部分是需要修改的:
a/i/是我们在安装是指定的image的虚拟路径,这里我们要把虚拟路径和真实路径做一个映射,真实路径就是我们拷贝到Http ServerOracle Home下的Apache/Apache子目录下的images子目录。

blocalhost:1521:tina03.cn.oracle.com host:port:service_name格式的数据库连接串。

cSIMPLIFIED CHINESE_CHINA.AL32UTF8指定的NLS_LANG
dwelcome0是安装APEX时提供的口令
 

(4)          安装语言包

Oracle的大多数产品一样,APEX的全球化做的很出色,除缺省安装的英语外,还支持包括简体中文、日文和法文等9种语言。例如,当你安装了中文前,不论浏览器的语言是因为还是简体中文,APEX的开发界面都是英文的,而安装了简体中文包后,将浏览器的语言设为中文(zh_CN)后,APEX的开发界面就是中文的了。
我建议安装简体中文语言包,但是在开发的过程中还是使用英文,虽然看英文慢一些,但是更有助于准确的掌握APEX
注意,这时数据库字符集的重要性就体现出来了,如果你的数据库字符集不支持要安装的语言,通俗的说不是要安装的语言的超集,导入语言包可能会失败(即使成功结束,你看到的也可能是?号)。例如,你要导入日文,数据库的字符集就不能是ZHS16GBK,当然AL32UTF8支持所有的9种语言。下面来导入中文包:
(a)       打开一个DOS窗口,运行tina03.cmd

(b)       cd c:/apex/builder/zh-cn

(c)       set NLS_LANG=”SIMPLIFIED CHINESE_CHINA.AL32UTF8”
提示:因为安装文件都是UTF8编码的,所以不论你的数据库字符集是什么,NLS_LANG都要设成AL32UTF8
(d)       sqlplus /nolog
(e)       conn sys/welcome0 as sysdba

(f)        alter session set current_schema=FLOWS_020200;

(g)       @ load_zh-cn.sql
 

(5)          修改JOB_QUEUE_PROCESSES参数

job_queue_processes参数定义job的最发并发数,在APEX中,交易(transaction)和SQL脚本的处理都需要这个参数。要启动这个参数并设一个合理的值:
(a)       打开DOS窗口,执行tina03.cmd
(b)       sqlplus /nolog
(c)       conn sys/welcome0 as sysdba

(d)       ALTER SYSTEM SET JOB_QUEUE_PROCESSES = 20 set scope=spfile

(e)       Shutdown immediate

(f)        startup

 
 
5、 第一次登陆APEX
 
APEX是通过浏览器访问的,包括IEfirefox在内的主流浏览器都支持,具体要求如下:

·IE 6.0 or higher( Windows only)

·Netscape 7.2 or higher

·Mozilla 1.2 or higher

·Firefox 1.0 or higher

当然你也可以使用MyIE
 
APEX的有两个URL

(1)          admin站点

http://hostname:port/pls/database_access_descriptor/database_access_descriptor _admin

其中:
(a)       hostname就是APEX安装的机器的名字,可以是localhost
(b)       port是从Http ServerOracle Home下的install/portlist.ini文件中获得的,取参数Oracle HTTP Server port的值
(c)       database_access_descriptor就是我们在(3)中的dads.conf文件中定义的
在我的例子中urlhttp://localhost:7777/pls/apex/apex_admin

(2)          开发站点

http://hostname:port/pls/database_access_descriptor
解释同上,在我的例子中urlhttp://localhost:7777/pls/apex
 
下面先简要的介绍介绍一下使用APEX开发的过程:
(1)admin用户在admin站点创建一个workspace(工作区),同时指定一个该工作区的administrator
或者使用一个现有的工作区
(2)以工作区的administrator用户登陆开发站点,创建应用程序(application
也就是说workspaceapplication是一对多的关系,一个workspace可以包含多个application,一个application只能属于一个workspace
(3)然后administrator可以添加一些用户,赋予不同的权限。
用户是相对于workspace而言的,也就是说用户可以访问workspace所有applications,只是它们的权限可能不同。
(4)以后这些新添加的用户就可以登陆开发站点进行开发和维护了。
注意:只有缺省的admin用户和被赋予admin权限的人才可以访问admin站点,象workspaceadministrator和其他用户只能访问开发站点。
 
那么,赶快行动吧。
1)登陆admin站点,用户为admin,口令为安装APEX时指定的口令

2)创建workspace

指定workspace的名字,可以为中文。

选择是否使用已有的数据库schema(方案)。意思是,你应用程序所用到的数据库对象(object)和数据(data)保存在哪个schema中。
如果你忘记了都有哪些schema,可以点击“Schema Name”后面的图标打开查询窗口进行选择。

指定工作区administrator的名字和口令,再次提醒的是这个administrator只是该工作区的administrator,不同于缺省的admin用户。

点击create创建工作区。

3)登陆到开发站点

注意的是:当你先在一个firefox中登陆了admin站点,后又在这个firefox中新打开一个tab或干脆新打开一个firefox,都有可能发生一访问开发站点就转到admin登陆界面的情况,这是最好的办法就是关闭所有的firefox,然后重新启动一个。
 

下面点击“Application Builder”的大图标,也可以打开下拉菜单:


里面已经有一个demo的应用程序了:

你可以试着运行它。在下一个单元,我会教你如何在几个钟头内搞定这个应用程序。

链接:http://blog.csdn.net/tinawang11/article/details/1136548

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 美国大学gpa非常低怎么办 大学手机作弊通报教务处怎么办 崩坏3邮箱验证码过期怎么办 快递员被顾客恶意投诉怎么办 5岁幼儿逻辑思维差怎么办 脸一边胖一边瘦怎么办 夏天穿鞋子脚痒怎么办 脚痒怎么办但不是脚气 脚气脚趾缝烂了怎么办 凉鞋穿久了臭怎么办 运动鞋穿久了臭怎么办 体恤穿久了发臭怎么办 十七八岁青少年逆反心理怎么办 挨刚煮好的粥烫伤改怎么办? 5e的demo有水印怎么办 宝宝湿疹激素一停药复发怎么办 木工家装没事做怎么办 取票之后票丢了怎么办 补牙咬合低了点怎么办 留学生上美国网课上不了网怎么办 大四绩点不够2.0怎么办 ucas申请成绩下来后怎么办 在本校读研毕业东西怎么办 美国硕士gpa低于3.0怎么办 英国t4签证拒签怎么办 abc洗液过敏了怎么办 护士电子化注册忘记用户名怎么办 手机重力感应坏了怎么办 电脑所有驱动都删除了怎么办 毕业生没有签工作档案怎么办 澳洲两年工作签怎么办 上班一年没签劳动合同怎么办 公司拖欠工资怎么办没签劳动合同 brp丢了怎么办回国补 被怀疑假结婚该怎么办 中考作弊被捉了怎么办 露娜注册错了怎么办 去泰国开民宿怎么办工作签证 绩点2.7想出国怎么办 香港过境想去澳门怎么办 加拿大博士资格考试没通过怎么办