迁移使用 Apache Derby 的 UDDI 数据库

如果使用 Apache Derby 的 UDDI 数据库是使用 WebSphere® Application Server V6.1 或更早版本建立的,且该 UDDI 数据库现在使用 Apache Derby V10.2 或更高版本,那么您需要迁移该数据库。如果您的 UDDI 数据库使用任何其他支持的数据库(其中包括版本早于 Apache Derby V10.2 的 Apache Derby),那么不需要执行此过程。

开始之前

请对 WebSphere Application Server 的安装进行迁移;请确保选择用来迁移应用程序的选项,以迁移 UDDI 注册中心应用程序。

关于此任务

如果 UDDI 数据库当前使用 Apache Derby V10.2 或更高版本,请执行此过程。在产品的此版本中,会将此类数据库与 Apache Derby V10.3 配合使用。通常,如果使用 Apache Derby 的 UDDI 数据库是使用 WebSphere Application Server V6.1 或更早版本建立的,且您将服务器升级到产品的最新级别,那么您需要迁移该数据库。

如果不迁移该数据库,并且尝试将业务实体保存到 UDDI 注册中心(在产品的最新级别上运行),而该注册中心使用 Apache Derby V10.2,那么会发生以下错误:

Serious technical error has occurred while processing the request.

过程

  1. 确保停止任何使用 UDDI 数据库的服务器。
  2. 使用以下命令来启动 Apache Derby 命令提示符:
    WAS_HOME/derby/bin/embedded/ij
  3. 在命令提示符下运行以下命令。替换 CONNECT 语句中的 UDDI 数据库位置。
    connect 'WAS_HOME/profiles/profileName/databases/com.ibm.uddi/UDDI30';
    
    drop trigger ibmudi30.tr_upd_busallsvc_p;
    
    create trigger ibmudi30.tr_upd_bservice_p 
    after update of businesskey on ibmudi30.bservice 
    referencing old as old_real_service 
    new as new_real_service 
    for each row mode db2sql update ibmudi30.busallservice 
    set ibmudi30.busallservice.owningbusinesskey = new_real_service.businesskey 
    where ibmudi30.busallservice.servicekey = new_real_service.servicekey 
    and ibmudi30.busallservice.owningbusinesskey != ibmudi30.busallservice.businesskey;
    
    exit;
  4. 重新启动使用 UDDI 数据库的服务器。

指示主题类型的图标 任务主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twsu_migrate_derby
文件名:twsu_migrate_derby.html