Prerequisites

Before beginning the database configuration, verify that a supported version of DB2 for i Database software is installed. Refer to the Minimum Technical Requirements for this information. In addition, it is strongly recommended that you visit the IBM WebSphere Portal Version v8.5 Information Center and review the “Configuring WebSphere Portal to use a database" section (http://www-10.lotus.com/ldd/portalwiki.nsf/dx/Windows_standalone_Configuring_WebSphere_Portal_to_use_a_database_wp7).

To modify the wkplc.properties, wkplc_dbdomain.properties, and wkplc_dbtype.properties files to work with your database. Modify these property files before running tasks to create databases, create users, or transfer data.

Working with Properties Files

  • The WebSphere Portal database can be used to hold information for applications such as Personalization (Feedback) and LikeMinds. To prepare the database to hold such application information, you should use similar naming conventions for property values such as release.DbName. Here are some examples:

    • release.DbName=hostname/WP85REL

    • community.DbName=hostname/WP85COM

    • customization.DbName=hostname/WP85CUS

    • jcr.DbName=hostname/WP85JCR

    • feedback.DbName=hostname/WP85FBK

    • likeminds.DbName=hostname/WP85LKM

  • If you are using a remote database, enter the values for the remote server.

  • Regardless of the operating system, use a forward slash (/) instead of a backslash (\) in the property files for file system paths.

  • There might be additional database properties other than those listed here. Only change the properties within this task and skip all other properties.

  • Some values, shown here in italics, might need to be modified to your specific environment.

  • Password Considerations

    For security reasons, you should not store passwords in the wkplc.properties,wkplc_dbdomain.properties, and wkplc_dbtype.properties files. It is recommended that you edit each of the properties files before running a configuration task, inserting the passwords needed for that task. Then, after the task has run, you should delete all passwords from each file.

  • The recommended value listed for each property represents the specific information that is required to configure WebSphere Portal to your target database.

  • Depending on which database domain has to be configured, replace dbdomain with:

    • release

    • customization

    • community

    • jcr

    • feedback

    • likeminds

  • The values for at least one of the following properties must be unique for the release, customization, community, and JCR domains:

    • dbdomain.DbName

    • dbdomain.DbUrl

    • dbdomain.DbSchema

  • If you use the same values for all three properties across the release, customization, community, and JCR domains, the database-transfer task fails due to ambiguous database object names.

  • If DbUser, DbUrl, and DbPassword are not the same across domains, the value for DataSourceName must differ from the DataSourceName of the other domains. In other words, this value must be unique for the database domain.

  • When you create a schema, you must use the following schema naming conventions on the IBM® i system:

    Note: The default schema names may be used with the product.
    • Length cannot exceed 10 characters

    • All alphanumeric characters are allowed ("A" through “Z" and “1" through “0")

    • The following characters are invalid:

      • spaces

      • null values

      • asterisk (*)

      • quotation marks (")

      • colon (:)

      • greater than symbol (>)

      • less than symbol (<)

      • vertical bar (|)

      • plus sign (+)

      • semicolon (;)

      • single quotation mark (')

      • question mark (?)

Note: Make sure you know what valid schema names are and do not use a schema name which already exists on the local or remote system. Follow the documentation of the target database management system in order to define a valid schema name as restrictions apply. Note that the Create WebSphere Portal wizard will automatically check schema names for you.For more information on database and schema naming conventions, refer to the DB2 for i Universal Database for System i5 content in the System i5 information center.
  1. Locate the following files and create a backup copy of each before changing any values:

    • wp_profile_root/ConfigEngine/properties/wkplc.properties

    • wp_profile_root/ConfigEngine/properties/wkplc_dbdomain.properties

    • wp_profile_root/ConfigEngine/properties/wkplc_dbtype.properties

    • If you are transferring from a database other than Derby: wp_profile_root/ConfigEngine/properties/wkplc_sourceDb.properties

    Default values are listed in these files. Unless otherwise noted, all values are of type alphanumeric text string. Print out the steps below for reference before modifying the properties files. Make sure to enter the appropriate values for each instance of each property. In wkplc_dbdomain.properties, most properties are repeated for each domain.

  2. Use a text editor to open the properties files and enter the values that are appropriate for your environment. You can also modify each properties file locally on your System i5 system by typing the following on an OS/400 command line in a 5250 session:

    Note: This step only applies when WebSphere Portal is installed on IBM i, and you are transferring to IBM DB2 for i.

    EDTF 'wp_profile_root/ConfigEngine/properties/property filename.properties'

    where property filename is wkplc_dbdomain, wkplc, or wkplc_dbtype.

    Note: You must have a user profile on the IBM i server and must have at least *USE special authority to edit the properties file.
    Tip: The steps for transferring data to another supported database section provide instructions for manually transferring data. Instead of performing the following steps, you can use the configuration wizard, which is a graphical user interface, to transfer data to another supported database. Properties must be changed before creating a database name and schema on a local or remote IBM i server.
  3. Use a text editor to open the properties file wkplc_dbdomain.properties and modify the values to correspond to your environment.

    1. For dbdomain.DbType, type db2_iseries.

    2. For dbdomain.DbName, type the name of the WebSphere Portal domain database.

      Note: This value is also the database element in the dbdomain.DbUrl property.
    3. For dbdomain.DbSchema, type the schema name of the database domain.

      Note: Review your target database management system documentation to define a valid schema name. Some database management systems have schema name restrictions that you need to understand.
    4. For dbdomain.DataSourceName, type the name of the data source that WebSphere Portal uses to communicate with its databases.

      Do not use the following reserved words:

      • releaseDS

      • communityDS

      • customizationDS

      • jcrDS

      • lmdbDS

      • feedback

    5. For dbdomain.DbUrl, type the database URL used to access the WebSphere Portal database with JDBC. The value must conform to the JDBC URL syntax specified by the database. The connection property metadata source=1 must be specified for databases running on systems older than IBM i V7R1. Refer to the following example when WebSphere Portal is installed on IBM i and you transferring data remotely or locally to DB2 for i:

      dbdomain.DbUrl="jdbc:as400:daisy.mycorp.com/WPDBREL;metadata source=1"

      Refer to the following example when WebSphere Portal is installed on Windows and you transferring data remotely to DB2 for i for idbdomain:

      DbUrl="jdbc:as400:daisy.mycorp.com/WPDBREL;metadata source=1"

      Refer to the following example when WebSphere Portal is installed on a UNIX platform, and you are transferring data to DB2 for i for i:dbdomain:

      DbUrl="jdbc:as400:daisy.mycorp.com/WPDBREL;metadata source=1;prompt=false"

      If the X11 DISPLAY is set and active, do not add the ;prompt=false to the URL.

      Note: The database element of this value should match the value of DbName.
    6. For dbdomain.DbUser, type the user ID for the database configuration user.

    7. For dbdomain.DbPassword, type the password for the database configuration user.

    8. For dbdomain.DbConfigRoleName, type the name of the group for database configuration users. Database rights are granted to this group instead of individuals. The user specified for dbdomain.DbUser must be assigned to this group.

    9. Optional: For dbdomain.DbRuntimeUser, type the user ID of the database user that should be used by WebSphere Portal to connect to the database at runtime. If no value is specified for this setting, the database configuration user will be used to connect to the databases at runtime.

    10. If dbdomain.DbRuntimeUser is specified, you must set dbdomain.DbRuntimePassword to be the password of the runtime database user.

    11. For dbdomain.DbRuntimeRoleName, type the name of the group for database runtime users. Database rights are granted to this group instead of individuals. The user specified for dbdomain.DbRuntimeUser must be assigned to this group.

    12. Optional: For dbdomain.DBA.DbUser, type the database administrator user ID for privileged access operations during database creation. If you do not need this parameter, you can either accept the default value or leave blank.

    13. Optional: For dbdomain.DBA.DbPassword, type the database administrator password for privileged access operations during database creation. If you do not need this parameter, you can either accept the default value or leave blank.

  4. Save and close the file.

  5. Update the following properties in the file wkplc_dbtype.properties.

    Note: You must download the jt400.jar file before database transfer. Refer to wkplc_dbtype.properties for more information on downloading the jt400.jar file.
    1. For db2_iseries.DbDriver, type the name of the JDBC driver class.

    2. For db2_iseries.DbLibrary, type the directory and name of the .zip or .jar file that contains the JDBC driver class.

    3. For db2_iseries.JdbcProviderName, type the name of the JDBC provider that WebSphere Portal uses to communicate with its databases.

    4. For db2_iseries.DbDriverType, type the number representing the driver type for the database.

  6. Save and close the file.

  7. Update the WasPassword value in the wkplc.properties file. This value is the password for the WebSphere Application Server security authentication used in your environment.

  8. Save and close the file.

View information on setting up user profiles for DB2 for i to work with WebSphere Portal.

Before you begin:

  • The user profile for the database owner should be different from the administrator user profile used to perform the installation. The administrator user profile may have more authority than is required and usually belongs to an individual, where as the database user profile may have minimal authority and can be shared.

  • Create a database user profile that does not require a password change over a period of time. If the password for the database user profile changes, WebSphere Portal must be reconfigured to use the new password.

  • Create users in an environment that has the same settings as the actual runtime environment. For example, avoid creating a user in an English environment if you plan to use that user in a Turkish environment.

A remote database resides on a different system than WebSphere Portal. When you use a remote server, you must manually create the databases that are required by WebSphere Portal.

Before you begin:

  • The user ID and password used must have the authority to create database libraries on the remote System i5 machine.

  • For every property instance of a database that uses *LOCAL/schema, replace it with HostName/schema.

    For example, the default database and database library name for WebSphere Portal release domain is release.DbName=wpsdb. If you wanted to create this database library on a remote database, change the default value to release.DbName=hostname/wpsdb

To create all the domain database libraries, perform the following steps:

  1. Start a 5250 session on the remote database machine.

  2. Type the i command WRKRDBDIRE to display the Relational Database Directory Entry for Remote Location *LOCAL and make a note of the value displayed.

  3. Sign off from the 5250 session.

  4. Start a 5250 session on the local machine where WebSphere Portal is installed.

  5. Create a Relational Database Directory Entry on the local system for the remote system using i command WRKRDBDIRE.

  6. Add an entry with the following values:

    • Relational database

      The remote relational database. Use the value noted from the prior step.

    • Relational database alias

      The hostname. Use the short TCP/IP hostname of the remote system

    • Remote location

      The domain qualified hostname. Use the full TCP/IP hostname of the remote system

    • Type

      IP

    • Port number or service name

      DRDA

    • Remote authentication method

      Preferred method: ENCRYPTED

      Allow lower authentication: ALWLOWER

  7. Create the required DB2 for i packages on the remote database machine by running the following command from the local machine:

    JAVA CLASS (com.ibm.db2.jdbc.app.DB2PackageCreator) PARM('rdb_alias' 'userid' 'password') PROP((jdbc.drivers 'com.ibm.as400.access.AS400JDBCDriver'))where rdb_alias matches the name of the Relational Database Entry you created in step 2, where userid is the database administrator user ID on the remote machine, and where password is the database administrator password on the remote machine.

    The output should be: Java program completed

  8. Press F3 to exit Java Shell Display.

  9. Sign off from the 5250 session.

  10. Start a 5250 session on the remote database machine.

  11. Verify the required DB2 for i packages were created by running the command WRKOBJ OBJ(QGPL/QSQCL*) OBJTYPE(*SQLPKG)

    The output should be:

    Opt  Object      Type      Library     Attribute   Text                        
         QSQCLIPKGA  *SQLPKG   QGPL        PACKAGE                                 
         QSQCLIPKGC  *SQLPKG   QGPL        PACKAGE                                 
         QSQCLIPKGL  *SQLPKG   QGPL        PACKAGE                                 
         QSQCLIPKGN  *SQLPKG   QGPL        PACKAGE                                 
         QSQCLIPKGS  *SQLPKG   QGPL        PACKAGE
    
  12. Start a 5250 session on the local machine where WebSphere Portal is installed.

  13. On the command line, enter the following to change directories: cd wp_profile_root/ConfigEngine.

  14. Press Enter.

  15. Change the property values in the configuration properties files before entering the following on the command line:

    ConfigEngine.sh create-database

  16. Press Enter.

View the steps to manually transfer data to the IBM® DB2 for i Universal Database™ database you have set up. As an alternative to the manual database transfer procedure described here, you can use the configuration wizard to complete the database transfer task. However, you cannot specify all settings through the configuration wizard. For example, regardless of the method used to transfer data, you must run a configuration task to create JMS resources as described in this topic.

Before you begin, ensure that the following prerequisites are met:

  • Supported database software is installed.

  • Databases and users are set up.

  1. Stop both the server1 and WebSphere_Portal servers:

    • stopServer server1 -username admin_userid -password admin_password

    • stopServer WebSphere_Portal -username admin_userid -password admin_password

  2. Validate configuration properties using the ConfigEngine.sh validate-database -DWasPassword=password command.

    Tip: Add the -DTransferDomainList parameter to the above validating task to specify the domains you want to validate; for example: -DTransferDomainList=jcr. If you want to validate all domains, you do not need to specify this parameter on the command line.
  3. Transfer the database:

    1. Enter the following command:

      ConfigEngine.sh database-transfer -DWasPassword=password

      Note:

      To select specific database domains to transfer, modify the-DTransferDomainList specified in the command to include only the domains that you want to transfer. For example, to transfer only the JCR domain you can enter the following command:

      ./ConfigEngine.sh database-transfer-DTransferDomainList=jcr-DWasPassword=password

      This note only applies when transferring databases from DB2 for i to another server with DB2 for i. If you are transferring databases from a database other than DB2 for i, you can skip this note. Use SBMJOB to submit the Qshell script as a batch job to run in *BASE pool when *INTERACT pool does not have 1GB or more of allocated memory. For example: SBMJOB CMD(STRQSH CMD(ConfigEngine.sh database-transfer-DWasPassword=password))

    2. After running the task, a message is added to the following log file for you to verify the task ran successfully: wp_profile_root/ConfigEngine/log/ConfigTrace.log

      If the configuration fails, verify the values in the wkplc.properties, wkplc_dbdomain.properties, andwkplc_dbtype.properties files and then repeat this step.

  4. Run the ConfigEngine.sh create-jcr-jms-resources-post-dbxfer -DWasPassword=password command to create JMS resources in the new database.

    Note: Regardless of the method used to transfer data (configuration wizard or the steps in this topic), you must run this task to create JMS resources.
  5. Start the WebSphere Portal server.

    See Starting and stopping servers, deployment managers, and node agents for instructions.

Compare the following file on all nodes with the file from the primary node. Ensure all instances of the file are identical: wp_profile_root/PortalServer/jcr/lib/com/ibm/icm/icm.properties. If the files are not identical, copy icm.properties from the primary node on which you ran the database-transfer task to the node.

  1. Stop the portal server on the secondary node.

  2. Copy wp_profile_root/PortalServer/jcr/lib/com/ibm/icm/icm.properties from the primary node and replaceicm.properties on the secondary node.

  3. Start the portal server on the secondary node.