本节列出了安装 Sun Java System Application Server Platform Edition 9 产品之前必须满足的要求。
下表列出了 Sun Java System Application Server Platform Edition 9 所兼容的操作系统。
表 2–1 支持的操作系统
操作系统 |
最小内存 |
建议的内存 |
最小磁盘空间 |
建议的磁盘空间 |
JVM |
---|---|---|---|---|---|
Sun Solaris 9, 10 (SPARC) Solaris 9, 10 (x86) |
512 MB |
512 MB |
250 MB 可用空间 |
500 MB 可用空间 |
J2SE 5.0 Java SE 6(可用时) |
64 位 Sun Solaris 10(SPARC、x86) |
512 MB |
512 MB |
250 MB 可用空间 |
500 MB 可用空间 |
J2SE 5.0 Java SE 6(可用时) |
Redhat Enterprise Linux 3.0 U1, 4.0 |
512 MB |
1 GB |
250 MB 可用空间 |
500 MB 可用空间 |
J2SE 5.0 Java SE 6(可用时) |
Windows Server 2000 SP4+ Windows 2000 Advanced Server SP4+ Windows Server 2003 Windows XP Pro SP1+ |
1 GB |
2 GB |
500 MB 可用空间 |
1 GB 可用空间 |
J2SE 5.0 Java SE 6(可用时) |
在 UNIXTM 上,可以使用 uname 命令查看操作系统版本。可以使用 df 命令查看磁盘空间。
在任一 Microsoft Windows 平台上运行 Application Server 时,必须使用 NTFS 文件系统,而不是 FAT 或 FAT32。
系统虚拟化是一项允许多个操作系统 (Operating System, OS) 实例在共享硬件上独立执行的技术。在功能方面,部署到在虚拟化环境中托管的 OS 的软件通常不知道基础平台已被虚拟化。Sun 在所选择的系统虚拟化和 OS 组合上执行其 Sun Java System 产品的测试,以帮助验证 Sun Java System 产品是否能够继续在正确调整大小及配置的虚拟化环境中如在非虚拟化环境中一样运行。有关 Sun 对虚拟化环境中 Sun Java System 产品的支持,请参见System Virtualization Support in Sun Java System Products。
有关 Sun Java System Application Server Platform Edition 9 所需修补程序的当前列表,请访问 http://sunsolve.sun.com 并选择修补程序和更新。单击 Sun Java System Application Server Platform Edition 9 链接。操作系统修补程序的要求更改并且 Java Enterprise System 组件的修补程序变得可用后,这些更新可在 SunSolve 上获得,最初的形式为建议的修补程序群集。
建议 Solaris 9、10(x86、SPARC)用户安装“Sun 推荐的修补程序簇”。此修补程序簇在 SunSolve Web 站点上的 "Recommended and Security Patches" 下提供。
表 2–2 列出了满足 Java EE 兼容性要求的数据库和驱动程序。所有受支持的 Sun Java System Application Server Platform Edition 配置必须至少包含一个来自此表的数据库/驱动程序组合,例如捆绑的 Java DB 数据库和驱动程序。此外,Application Server 支持使用相应的 JDBC 驱动程序与任何其他 DBMS 进行 JDBC 连接。
表 2–2 兼容 Java EE 的 JDBC 驱动程序
JDBC 驱动程序供应商 |
JDBC 驱动程序类型 |
支持的数据库服务器 |
---|---|---|
Java DB Network Client |
类型 4 |
Apache Derby 10.1 |
DataDirect 3.5 |
类型 4 |
Oracle 9i, 10g |
表 2–3 列出了经过 Sun 内部测试的所有其他数据库和驱动程序。
表 2–3 其他受支持的 JDBC 驱动程序和数据库
JDBC 驱动程序供应商 |
JDBC 驱动程序类型 |
支持的数据库服务器 |
---|---|---|
DataDirect 3.5 |
类型 4 |
Sybase ASE 12.5, 15 Microsoft SQL Server 2000, 2005 IBM DB2 8.1, 8.2 |
IBM |
类型 2 |
IBM DB2 8.1, 8.2 |
Microsoft MS SQL |
类型 4 |
SQLServer 2000, 2005 |
MySQL Connector/J Driver 3.1 |
类型 4 |
MySQL 5 |
Oracle |
类型 4 |
Oracle 9i, 10g |
Postgres |
类型 4 |
Postgres 8.1 |
Sybase |
类型 4 |
ASE 12.5, 15 |
一般情况下,Application Server Platform Edition 9 支持符合 Java EE 规范的所有 JDBC 驱动程序。
本节介绍了有关使用 Application Server 9 捆绑的 Java DB 数据库实现的说明。Java DB 基于 Apache Derby 数据库。
Sun Java System Application Server 9 引入了两个新的 asadmin 命令,用于启动和停止 Java DB 网络服务器。
asadmin start-database 命令用于启动 Java DB 网络服务器实例:
start-database [--dbhost 0.0.0.0] [--dbport 1527] [--dbhome path] |
主机的默认值为 0.0.0.0,这将允许 Java DB 在 localhost 以及 IP/主机名接口上侦听。dbhome 属性值为 Java DB 数据库的驻留位置。默认 path 为 appserver_install_dir/javadb。
asadmin stop-database 命令用于关闭正在运行的 Java DB 网络服务器实例:
stop-database [--dbhost 0.0.0.0] [--dbport 1527] |
Application Server 9 附带的 Java DB 配置还包括几个有用的脚本,可帮助您使用 Java DB。以下脚本可用于 <appserver_install_dir>/javadb/frameworks/NetworkServer/bin 目录中:
startNetworkServer.ksh/bat—用于启动网络服务器的脚本
stopNetworkServer.ksh/bat—用于停止网络服务器的脚本
ij.ksh/bat—交互式 JDBC 脚本工具
dblook.ksh/bat—用于查看数据库的所有或部分 DDL 的脚本
sysinfo.ksh/bat—显示有关 Java DB 环境的版本信息的脚本
NetworkServerControl.ksh/bat—为在 NetworkServerControl API 上执行命令提供方法的脚本
有关这些实用程序的更多信息,请参见 Derby 工具 和管理指南。
本示例介绍如何使用 NetBeans 5.0 捕获 commander 中 Pointbase 表的 DDL 以及在 Java DB 中创建相同的表。也可以通过使用 commander 工具和 unload database 命令来执行此操作:
./startcommander.sh Do you wish to create a new Database. (Yes (Y) or No (N))? [default: N]: Enter product to connect with: (Embedded (E) or Server (S))? [default: E]: e Enter driver to use? [default: [com.pointbase.jdbc.jdbcUniversalDriver]: Enter database URL? [default: [jdbc:pointbase:embedded:sample]: Enter Username? [default: PBPUBLIC]: Enter Password? [default: PBPUBLIC]: PointBase Commander 5.2 ECF build 294 size restricted version EMBEDDED Interactive SQL command language. SunOS/5.9 (C) Copyright 2004 DataMirror Mobile Solutions, Inc. All rights reserved. Licensed to: Sun_customer_demo_use For commercial version contact PointBase at: pointbase.com PHONE: 1-877-238-8798 (US & CANADA) 1-408-961-1100 (International) WEBSITE: www.pointbase.com SQL>unload database sampledb.sql; SQL> unload database sampledb.sql; SQL> 13 Row(s) Unloaded. (PBPUBLIC.CUSTOMER_TBL) SQL> 4 Row(s) Unloaded. (PBPUBLIC.DISCOUNT_CODE_TBL) SQL> 30 Row(s) Unloaded. (PBPUBLIC.MANUFACTURE_TBL) SQL> 11 Row(s) Unloaded. (PBPUBLIC.MICRO_MARKETS_TBL) SQL> 9 Row(s) Unloaded. (PBPUBLIC.OFFICE_TBL) SQL> 4 Row(s) Unloaded. (PBPUBLIC.OFFICE_TYPE_CODE_TBL) SQL> 15 Row(s) Unloaded. (PBPUBLIC.ORDER_TBL) SQL> 6 Row(s) Unloaded. (PBPUBLIC.PRODUCT_CODE_TBL) SQL> 30 Row(s) Unloaded. (PBPUBLIC.PRODUCT_TBL) SQL> 10 Row(s) Unloaded. (PBPUBLIC.SALES_REP_DATA_TBL) SQL> 10 Row(s) Unloaded. (PBPUBLIC.SALES_REP_TBL) SQL> 52 Row(s) Unloaded. (PBPUBLIC.SALES_TAX_CODE_TBL) SQL> 12 Table(s) Unloaded. SQL> quit;
在上述示例中,unload database 命令的执行结果将被写入 sampledb.sql 文件。sampledb.sql 文件中包含创建必要的表和索引所需的所有 DDL。它还包含将数据插回到数据库中的 DML。通过 commander 命令 RUN 使用生成的脚本可以将数据导入到其他 Pointbase 数据库中。以下是有关生成的文件中的 INSERT 语句和相关数据的示例:
INSERT INTO "ADVENTURE"."CATEGORY" ( "CATID", "LOCALE", "NAME", "DESCRIPTION", "IMAGEURI" ) VALUES( ?, ?, ?, ?, ? ); { 'ISLAND ','en_US','Island Adventures','Experience an island / paradise in a way fit for your needs.','Island_Adventures.gif' 'JUNGLE ','en_US','Jungle Adventures','Experience a jungle / paradise in a way fit for your needs.','Jungle_Adventures.gif' 'MOUNTAIN ','en_US','Mountain Adventures','Experience an / elevated paradise with a view.','Mountain_Adventures.gif' 'ORBITAL ','en_US','Orbital Adventures','Experience a vacuum / paradise with a beautiful view and where no one can hear you scream.', / 'Space_Adventures.gif' 'WESTERN ','en_US','Western Adventures','Enjoy the Wild West. / ','Western_Adventures.gif' 'SOUTH_POLE ','en_US','South Pole Adventures','Experience a / frozen paradise in a way fit for your needs.','SouthPole_Adventures.gif' };
可以轻松地编辑通过 commander unload database 命令生成的文件,以使它仅包含 DDL(例如,编写用于处理 insert 语句的程序并不困难)。在简单测试中,我们可以对 Pointbase 样例数据库使用 unload database 命令,然后编辑生成的脚本,可做出如下更改:
删除所有 CREATE Table 语句末尾的短语 Organization Heap
删除 COMMIT 命令
将布尔变量 datatype 更改为 smallint
删除所有 INSERT 语句和相关数据
接下来,使用简单的 Ant 脚本执行使用 sql 目标的 DDL。最后,对 sun-appserv-samples 数据库重复执行相同的操作,并对生成的 SQL 文件做出如下更改:
对样例数据库做出所有上述更改
删除 create user 命令
删除 SET PATH 命令
将 Decimal 精度从 38 更改为最大 31
将 float 精度从 64 更改为最大 52
当前不支持 CREATE PROCEDURE 的 SPECIFIC 关键字
删除 GRANT 命令
要将 Pointbase Java 过程转换为使用 Java DB,需要对 Java 代码和 CREATE PROCEDURE 语句进行某些更改。可在 Derby 参考手册 中查看有关创建 Java DB Java 过程的信息。Java DB 的下一版将支持布尔变量数据类型。
本节列出了 Sun Java System Application Server Platform Edition 9 管理控制台和快速入门指南所支持的浏览器。在 Application Server 上运行应用程序时所支持的浏览器取决于运行的应用程序。
表 2–4 支持的浏览器
浏览器 |
版本 |
---|---|
Mozilla |
1.4, 1.5, 1.6, 1.7.x |
Netscape Navigator |
6.2, 7.0 |
Internet Explorer |
5.5 Service Pack 2, 6.0 |
Firefox |
1.x |
有关从 Application Server 的先前版本升级到 Sun Java System Application Server Platform Edition 9 的完整说明,请参阅《Sun Java System Application Server Platform Edition 9 Upgrade and Migration Guide》。
安装 Sun Java System Application Server 软件之前,必须满足以下附加要求。
可用空间—临时目录必须至少具有 200 MB 的可用空间以便安装 Sun Java System Application Server,以及 250 MB 的可用空间以便安装 SDK。
使用卸载程序—如果需要从系统中删除 Application Server,请务必使用此软件附带的卸载程序。如果尝试使用其他方法,则在试图重新安装同一版本或安装新版本时将出现问题。
可用端口—必须有七个未使用的可用端口。
安装程序自动检测正在使用的端口,并建议将当前未使用的端口用作默认设置。默认情况下,用于 HTTP 的初始默认端口号为 8080;用于 HTTPS 的初始默认端口号为 8181;用于 Administration Server 的初始默认端口号为 4848。
安装程序将检测已用端口并为您分配其他两个端口:Sun Java(TM) System Message Queue(默认情况下,端口号为 7676)和 IIOP(默认情况下,用于 IIOP 的端口号为 3700,而用于 IIOP/SSL 的端口号为 3820 和 3890)。如果这些默认端口号正在使用,安装程序将从动态端口范围内指定一个随机端口号(请注意,它不一定是下一个可用的端口号)。
启动先前安装的服务器 (UNIX)—除非要替换先前安装的服务器,否则在开始安装 Sun Java System Application Server 9 之前应先启动先前安装的服务器。这样,安装程序才能检测到正在使用的端口,从而避免再分配它们用于其他用途。
替换先前安装的服务器 (UNIX)—如果您已安装了旧版本的 Sun Java System Application Server,并且希望将其替换为当前的 Application Server,则在安装新服务器之前应先停止旧服务器。
关闭防火墙 (Microsoft Windows)-在安装 Sun Java System Application Server 软件之前,必须停止所有防火墙软件,因为默认情况下某些防火墙软件会禁用所有端口。安装程序必须能够准确确定哪些端口可用。
有关兼容性的详细信息,请参见《Sun Java System Application Server Platform Edition 9 Upgrade and Migration Guide》。