17.3 手动生成数据库纲要

您可以在安装后重创建数据库表,而无需重新安装。本节将会帮助您创建数据库纲要。

  1. 使用 services.msc 文件停止 Tomcat。

  2. (视情况而定)创建一个新数据库。

    如果您的数据库不是在同一服务器上运行,则必须连接到该数据库服务器。对于远程安装的 PostgreSQL 数据库,请校验该数据库服务器是否正在运行。要连接到远程 PostgreSQL 数据库,请参见部分 17.4, 连接远程 Remote PostgreSQL 数据库。如果您要连接到 Oracle 数据库,请确保已在该数据库服务器中创建 Oracle 数据库实例。有关更多信息,请参见 Oracle 文档。

  3. 使用 C:\NetIQ\idm\apps\IdentityReporting\sql 中的下列 SQL 将所需角色添加到数据库中。

    • PostgreSQL: create_dcs_roles_and_schemas.sql 和 create_rpt_roles_and_schemas.sql

    • Oracle: create_dcs_roles_and_schemas-orcale.sql 和 create_rpt_roles_and_schemas-orcale.sql

  4. 要创建 IDM_RPT_DATA、IDM_RPT_CFG 和 IDMRPTUSER 角色,请执行以下操作:

    • PostgreSQL: 按给定顺序运行以下命令:

      Select CREATE_DCS_ROLES_AND_SCHEMAS('<Set pwd for IDM_RPT_DATA>');
      Select CREATE_RPT_ROLES_AND_SCHEMAS('<Set pwd for IDM_RPT_CFG>', '<Set pwd for IDMRPTUSER>’);
    • Oracle: 按给定顺序运行以下命令:

      begin
      CREATE_DCS_ROLES_AND_SCHEMAS('<Set pwd for IDM_RPT_DATA>');
      end;
      
      begin
      CREATE_RPT_ROLES_AND_SCHEMAS('<Set pwd for IDM_RPT_CFG>', '<Set pwd for IDMRPTUSER>');
      end; 
  5. 将 get_formatted_user_dn 函数添加到 IDM_RPT_DATA 纲要中。

    1. 以数据库管理员用户的身份登录数据库。

    2. 从 C:\NetIQ\idm\apps\IdentityReporting\sql 中添加 get_formatted dn 函数。

    对于 PostgreSQL,请查找 get_formatted_user_dn.sql;对于 Oracle,请查找 get_formatted_user_dn-oracle.sql。

  6. 清除位于 C:\NetIQ\idm\apps\IdentityReporting\sql 中的下列 .sql 文件的数据库校验和:

    • DbUpdate-01-run-as-idm_rpt_cfg.sql

    • DbUpdate-02-run-as-idm_rpt_cfg.sql

    • DbUpdate-03-run-as-idm_rpt_data.sql

    • DbUpdate-04-run-as-idm_rpt_data.sql

    • DbUpdate-05-run-as-idm_rpt_data.sql

    • DbUpdate-06-run-as-idm_rpt_cfg.sql

    1. 在每个 SQL 的开头追加下面一行:

      update DATABASECHANGELOG set MD5SUM = NULL; 

      修改后的内容应该类似如下:

      -- *********************************************************************
      -- Update Database Script
      -- *********************************************************************
      -- Change Log: IdmDcsDataDropViews.xml
      -- Ran at: 2/23/18 5:17 PM
      -- Against: IDM_RPT_CFG@jdbc:oracle:thin:@192.99.170.20:1521/orcl
      -- Liquibase version: 3.5.1
      -- *********************************************************************
      update databasechangelog set md5sum = null; 
    2. 运行相应用户的每个 SQL。

  7. 将更改提交到数据库。

  8. 使用 services.msc 文件启动 Tomcat。