14.8 完成 Identity Applications 的迁移

在升级或迁移 Identity Applications 后,请完成迁移过程。

14.8.1 准备 Oracle 数据库以运行 SQL 文件

在安装过程中,您可能已选择编写一个 SQL 文件来更新 Identity Applications 数据库。如果数据库在 Oracle 平台上运行,则您必须先执行一些步骤,然后才能运行该 SQL 文件。

  1. 在数据库中运行以下 SQL 语句:

    ALTER TABLE DATABASECHANGELOG ADD ORDEREXECUTED INT;
    UPDATE DATABASECHANGELOG SET ORDEREXECUTED = -1;
    ALTER TABLE DATABASECHANGELOG MODIFY ORDEREXECUTED INT NOT NULL;
    ALTER TABLE DATABASECHANGELOG ADD EXECTYPE VARCHAR(10);
    UPDATE DATABASECHANGELOG SET EXECTYPE = 'EXECUTED';
    ALTER TABLE DATABASECHANGELOG MODIFY EXECTYPE VARCHAR(10) NOT NULL;
  2. 运行以下 updateSQL 命令:

    C:\NetIQ\idm\jre\bin\java -Xms256m -Xmx256m -Dwar.context.name=IDMProv -
    Ddriver.dn="cn=User Application Driver,cn=driverset1,o=system" -
    Duser.container="o=data" -jar C:\NetIQ\idm\jre\liquibase.jar --
    databaseClass=liquibase.database.core.PostgresDatabase --
    driver=org.postgresql.Driver --
    classpath=C:\NetIQ\idm\apps\postgresql\postgresql-9.4.1212jdbc42.jar
    C:\NetIQ\idm\apps\UserApplication\IDMProv.war --
    changeLogFile=DatabaseChangeLog.xml --url="jdbc:postgresql://localhost:5432/
    idmuserappdb" --contexts="prov,newdb" --logLevel=info --
    logFile=C:\NetIQ\idm\apps\UserApplication\db.out --username=******** --
    password=******** update
  3. 在文本编辑器中,打开默认位于 /installation_path/userapp/sql 目录中的 SQL 文件。

  4. 在函数 CONCAT_BLOB 的定义后面插入一个反斜杠 (/)。例如

      -- Changeset icfg-data-load.xml::700::IDMRBPM
    CREATE OR REPLACE FUNCTION CONCAT_BLOB(A IN BLOB, B IN BLOB) RETURN BLOB AS
                    C BLOB;
                BEGIN
                    DBMS_LOB.CREATETEMPORARY(C, TRUE);
                    DBMS_LOB.APPEND(C, A);
                    DBMS_LOB.APPEND(C, B);
                    RETURN c;
                END;
    /
  5. 执行 SQL 文件。

    有关运行 SQL 文件的详细信息,请参见手动创建数据库纲要

    注:请不要使用 SQL*Plus 来执行该 SQL 文件。该文件中的行长度超过了 4000 个字符。

14.8.2 清理浏览器超速缓存

登录到 Identity Applications 之前,您应先清理浏览器上的超速缓存。如果不清理超速缓存,您可能会遇到一些运行时错误。

14.8.3 更新 SharedPagePortlet 的最大超时设置

如果您已自定义 SharedPagePortlet 的任何默认设置或首选项,则这些自定义已保存到数据库,并且此设置将被重写。因此,浏览到“身份自助服务”选项卡并不总是高亮显示正确的共享页面。为确保不遇到此问题,请完成以下步骤:

  1. 以 User Application 管理员身份登录。

  2. 浏览到管理 > Portlet 管理

  3. 展开共享页面导航

  4. 在左侧的 Portlet 树中,单击共享页面导航

  5. 在页面的右侧,单击设置

  6. 确保最大超时设置为 0。

  7. 单击“保存设置”

14.8.4 禁用组的自动查询设置

默认情况下,目录提取层中“组”实体的“DNLookup 显示”处于启用状态。这意味着,每当为组指派打开对象选择器时,无需搜索就会按默认显示所有组。您应该更改此设置,因为用于搜索组的窗口在用户输入搜索内容之前不应显示任何结果。

您可以在 Designer 中取消选中执行自动查询来更改此设置,如下所示: