管理 Sun Business Process Manager 数据库

管理 Sun Business Process Manager 数据库

此处列出的主题提供了有关如何在 Sun JavaTM Composite Application Platform Suite (Java CAPS) 中管理 Sun Business Process Manager 数据库的信息。

如果您有任何问题,请参见 http://goldstar.stc.com/support 中的 Java CAPS Web 站点。

创建监视和恢复数据库

要创建监视和恢复数据库表,可通过 Enterprise Designer 修改和运行数据库脚本,或者下载脚本并从本地目录运行脚本。根据您喜欢使用的方法,可以查看以下各节之一:

您必须有一个现有数据库实例,然后才能运行任何脚本。开始使用脚本之前,请查看下面的创建数据库实例

创建数据库实例

运行数据库脚本之前,您必须创建一个数据库实例,该实例中将创建一些表。这是针对 Oracle 10g、Oracle 9i 和 SQL Server 的标准步骤,而针对 Oracle 8.1.7、Sybase 和 DB2,则还需要执行其他的步骤。

在 Oracle 8.1.7 中创建数据库

对于 Oracle 8.1.7,您必须将 db_block_size 的默认值从 8KB 增加到 16KB,或对数据库脚本进行编辑,以便在 db_block_size 为默认值 8KB 的情况下成功运行脚本。

在 Sybase 中创建数据库

要在 Sybase 中运行数据库安装脚本,服务器页面大小必须为 16k。在创建用于运行 Sybase 脚本的自适应服务器时,请对服务器页面大小进行设置。

在 DB2 中创建数据库

搭配使用 DB2 和 Sun BPM 时,需要执行一些额外的设置步骤。请查看本节并请数据库管理员检查安装脚本,然后再对 DB2 数据库实例运行任何脚本。数据库管理员需要使用 DBA 或 Sysadmin/DB2 用户身份创建以下项目:

在 Enterprise Designer 中运行脚本

通过 Enterprise Designer,您可以查看、修改和运行用于创建或删除监视和恢复数据库模式的脚本。首先,您必须为脚本配置数据库连接。

配置数据库连接

在运行数据库脚本之前,您需要在“项目资源管理器”中对数据库连接信息进行配置。为具有数据库访问权限的管理员用户配置连接。

Procedure配置数据库连接

  1. 在“项目资源管理器”中,展开 "Sun BPM",然后展开“运行数据库脚本”。

  2. 右键单击“运行数据库脚本”,再单击“签出”,然后在对话框中单击“签出”。

  3. 右键单击“数据库脚本”,然后单击“属性”。

  4. 输入配置数据库连接中所述的数据库配置信息。

  5. 单击“确定”。

    属性

    描述 

    数据库类型

    所用数据库的供应商和版本。 

    JDBC URL

    连接数据库的 URL。输入以下内容之一: 

    • 对于Oracle:jdbc:SeeBeyond:oracle://<host>:<port>;SID=<SID>

    • 对于Sybase:jdbc:SeeBeyond:sybase://<host>:<port>

    • 对于 SQL Server:jdbc:SeeBeyond:sqlserver://<host>:<port>;DatabaseName= <dbname>

    • 对于 DB2:jdbc:SeeBeyond:db2://<host>:<port>;DatabaseName=<SID>;collectionId= JDBCPKG;packageName=JDBCPKG;embedded=true;createDefaultPackage=FALSE

      其中,<host> 为数据库驻留的计算机,<port> 为数据库侦听的端口号,而 <SID> 和 <dbname> 则为数据库的名称。

    用户

    数据库管理员的登录 ID。此用户必须能够创建用户和分配权限,还要能够创建和删除表。 

    密码

    管理员用户的密码。 

在 Enterprise Designer 中查看和修改数据库脚本

您可以打开数据库脚本,然后在“项目资源管理器”中进行查看、修改和运行。在对数据库脚本进行更改时,请向数据库管理员咨询。您可能需要进行的部分更改包括:

Procedure修改数据库脚本

  1. 在“项目资源管理器”中,展开 "Sun BPM"。

  2. 确保“运行数据库脚本”已签出,然后展开文件夹。

  3. 在“数据库脚本”下,右键单击要修改的脚本,然后单击“打开”。

  4. 仅对于 Oracle 8.1.7,请将关联键的最大键长度从 4000 减至 3166。correlationvalue 参数属于 correlationengine 和 correlationbpinstance 表。以下代码示例显示这些更改。

    create table bpm60 correlationengine ( correlationvalue varchar( 3166) UNIQUE, applicationreference varchar(255), ...); ... create table bpm60.correlationbpinstance ( correlationvalue varchar(3166) UNIQUE, bpid varchar(50), ...);

  5. 对脚本进行任何其他必要的更改。请勿更改任何表或字段名称。

  6. 要运行数据库脚本,请右键单击脚本名称,然后单击“运行”。必须运行数据库实例,才能执行此步骤。

  7. 要保存更改,请右键单击脚本文件,然后单击“保存”,或者关闭文件。系统会提示您保存或放弃更改。要保留更改,请单击“保存”;否则,请单击“放弃”。

运行数据库脚本

在运行数据库脚本之前,请确保运行数据库实例,并且您已查看创建数据库实例在 Enterprise Designer 中查看和修改数据库脚本下的信息。此外,还必须为脚本配置连接信息。

Procedure创建数据库表

  1. 在“项目资源管理器”中,展开 "Sun BPM",然后展开“运行数据库脚本”。

  2. 右键单击与适当数据库关联的文件(Oracle InstallSQL Server InstallDB2 InstallSybase Install)。

  3. 单击“运行”。

Procedure删除数据库表

  1. 在“项目资源管理器”中,展开 "Sun BPM",然后展开“运行数据库脚本”。

  2. 右键单击与适当数据库关联的文件(Oracle UninstallSQL Server UninstallDB2 UninstallSybase Uninstall)。

  3. 单击“运行”。

从本地目录运行数据库脚本

这是从 Enterprise Designer 运行数据库脚本的一种备选方法。您可以下载数据库脚本,并在 Java CAPS 环境外部运行这些脚本。请务必查看创建数据库实例下的信息,其中包含特定于 Oracle 和 DB2 数据库的信息。

压缩文件中包括以下文件。

下载压缩的脚本文件

要使用压缩的脚本文件,您需要将其导出到本地目录,然后对压缩文件进行解压缩。

Procedure下载压缩的脚本文件

  1. 在“项目资源管理器”中,展开 "Sun BPM",然后展开“下载数据库脚本”。

  2. 右键单击与适当数据库关联的文件(oracle.zipsqlserver.zipdb2.zip sybase.zip)。

  3. 单击“导出”。

  4. 浏览到要存储数据库文件的本地文件夹,然后单击“保存”。

  5. 导航到本地文件夹,然后对压缩文件进行解压缩。

  6. 按照 Readme.txt 文件中的说明操作。

运行下载的脚本

在下载压缩的数据库脚本并根据需要进行修改之后,您可以从命令行运行这些脚本。执行这些脚本的数据库用户必须具有创建表和用户的权限。在运行脚本之前,请查看在 Enterprise Designer 中查看和修改数据库脚本Readme.txt 文件还提供了附加信息)。

Procedure运行下载的数据库脚本

  1. 打开命令窗口并导航到脚本所在的目录。

  2. 执行以下操作之一:

    • 对于 Oracle 数据库,请输入以下命令:

      install_db user password database

    • 对于 Sybase 和 SQL Server 数据库,请输入以下命令:

      install_db user password server database

    • 对于 DB2 数据库,请输入以下命令:

      install_db user password database server

    其中:

    • user 为数据库用户名。

    • password 为数据库用户密码。

    • server 为数据库所驻留计算机的名称。

    • database 为数据库或 SID 名称。


      注 –

      从这些脚本创建的默认用户和密码为 "bpm6user"。您可以修改用户、密码、为表分配的磁盘空间,以及用户权限。但不应修改表和列定义。


自动运行数据库脚本

在将项目部署到服务器时,您可以选择自动运行数据库脚本。可以对监视和恢复数据库,以及业务流程报告表自动运行脚本。

Procedure自动运行脚本

  1. 按照创建数据库实例中的说明,创建数据库实例。

  2. 按照在 Enterprise Designer 中运行脚本中的说明,对监视和恢复数据库脚本进行修改,并定义数据库连接属性(但不运行脚本)。

  3. 对项目中的业务流程进行持久性配置,并配置数据库连接属性(但不运行脚本)。

  4. 对 Sun BPM 引擎进行持久性配置。将“数据库脚本自动执行”设置为 true。

  5. 部署项目时,将对监视和恢复数据库,以及配置了持久性的各个业务流程自动运行脚本。

清除和归档 Sun BPM 数据

用于清除和归档 Sun BPM 数据的脚本包含在压缩的数据库文件中,您可以从 Enterprise Designer 下载这些文件(请参见下载压缩的脚本文件)。清除脚本可以根据指定的天数、业务流程名称或应用程序名称,将较旧的记录(仅实例)从数据库表中删除。归档脚本可以根据指定的天数、业务流程名称或应用程序名称,将历史记录复制到以 _hist 结尾的表中。只有状态为 COMPLETE、ERROR、TERMINATED、ERROR_ON_RECOVER 的记录才会被清除或归档。

本节说明中将会用到以下参数:

安装清除和归档数据库组件

在运行清除和归档脚本之前,您需要安装存储过程和表,以支持流程。在开始此过程之前,请确保您已经按照下载压缩的脚本文件中的说明,创建了数据库并下载了压缩的数据库脚本。

Procedure安装清除和归档数据库组件

  1. 打开命令窗口并导航到您将脚本下载到其中的目录。

  2. 执行以下操作之一:

    • 对于 Oracle 和 DB2 数据库,请输入以下命令:

      install_arch_and_purge_scripts user password database

    • 对于 Sybase 和 SQL Server 数据库,请输入以下命令:

      install_arch_and_purge_scripts user password server database

按保留天数归档和清除

以下脚本可以根据指定的天数归档和清除记录。这些脚本的 UNIX 版本带有 .sh 扩展名。

Procedure根据天数清除记录

  1. 打开命令窗口并导航到您将脚本下载到其中的目录。

  2. 执行以下操作之一:

    • 对于 Oracle 和 DB2 数据库,请输入以下命令:

      purge_by_days user password database days

    • 对于 Sybase 和 SQL Server 数据库,请输入以下命令:

      purge_by_days user password server database days

    其中 days 为要保留的天数。例如,如果指定 4 天,则保留时间超过 4 天的所有记录都将被清除。

Procedure根据天数归档记录

  1. 打开命令窗口并导航到您将脚本下载到其中的目录。

  2. 执行以下操作之一:

    • 对于 Oracle 和 DB2 数据库,请输入以下命令:

      arch_by_days user password database days

    • 对于 Sybase 和 SQL Server 数据库,请输入以下命令:

      arch_by_days user password server database days

    其中 days 为要保留的天数。例如,如果指定 4 天,则保留时间超过 4 天的所有记录都将被归档。

按业务流程名称归档和清除

以下脚本可以根据指定的业务流程归档和清除记录。这些脚本的 UNIX 版本带有 .sh 扩展名。

Procedure根据业务流程名称清除记录

  1. 打开命令窗口并导航到您将脚本下载到其中的目录。

  2. 执行以下操作之一:

    • 对于 Oracle 和 DB2 数据库,请输入以下命令:

      purge_by_bpname user password database name

    • 对于 Sybase 和 SQL Server 数据库,请输入以下命令:

      purge_by_bpname user password server database name

    其中 name 为要清除的业务流程名称。例如,如果指定 BusinessProcess1,则将清除 BusinessProcess1 的所有实例。

Procedure根据业务流程名称归档记录

  1. 打开命令窗口并导航到您将脚本下载到其中的目录。

  2. 执行以下操作之一:

    • 对于 Oracle 和 DB2 数据库,请输入以下命令:

      arch_by_bpname user password database name

    • 对于 Sybase 和 SQL Server 数据库,请输入以下命令:

      arch_by_bpname user password server database name

      其中 name 为要归档的业务流程名称。例如,如果指定 BusinessProcess1,则将 BusinessProcess1 的所有实例归档。

按应用程序名称归档和清除

以下脚本可以根据指定的应用程序归档和清除记录。这些脚本的 UNIX 版本带有 .sh 扩展名。

Procedure根据应用程序名称清除记录

  1. 打开命令窗口并导航到您将脚本下载到其中的目录。

  2. 执行以下操作之一:

    • 对于 Oracle 和 DB2 数据库,请输入以下命令:

      purge_by_appname user password database name

    • 对于 Sybase 和 SQL Server 数据库,请输入以下命令:

      purge_by_appname user password server database name

      其中 name 为要清除的应用程序名称。例如,如果指定 Application1,则将清除 Application1 数据的所有实例。

Procedure根据应用程序名称归档记录

  1. 打开命令窗口并导航到您将脚本下载到其中的目录。

  2. 执行以下操作之一:

    • 对于 Oracle 和 DB2 数据库,请输入以下命令:

      arch_by_appname user password database name

    • 对于 Sybase 和 SQL Server 数据库,请输入以下命令:

      arch_by_appname user password server database name

      其中 days 为要归档的应用程序名称。例如,如果指定 Application1,则将 Application1 数据的所有实例归档。