Database Prerequisites

Prerequisites for Quantum Fabric with Oracle

For installing Quantum Fabric Database for Oracle, complete the following steps:

IMPORTANT:  Ensure that a dedicated database user must not be an application user for installation of database. A dedicated user gets logged into audit logs.
After granting privileges, disconnect existing session, and use new session in order to get the new privileges loaded to the user.

NOTE:
  • Only a qualified Oracle Database Administrator (DBA) must handle the Oracle Database setup in order to successfully complete the Quantum Fabric database deployment. Oracle software must be installed and basic database must be created before to continue with Quantum Fabric database schema setup.
  • Ensure that these grants are required for all the schemas/tables of all Quantum Fabric components.

 

NOTE:

Oracle DB Deployment for Fabric

  • Oracle Users with DBA Privileges:

    The user must have Oracle Database Administrator (DBA) privileges to execute Fabric database deployments using Oracle DB. This applies to both new installations and upgrade processes.

  • Purpose:

    Ensuring that the user has sufficient privileges to perform all necessary database operations during deployment.

  • Implications:

    Without DBA privileges, the deployment may fail, leading to incomplete installations or upgrades, which can affect the overall functionality of the fabric system.

 

Prerequisites for Quantum Fabric with MSSQL- Applicable for Engagement Services

Database collation needs to be set for a database. This is possible while creating a database with your required language as database collation. For example, use Database collation as Arabic_100_CI_AS for Arabic language support. Similarly for other languages use appropriate collation for support. Use SQL Server Management Studio to create a database with the name as kpnsdb and with appropriate collation support.

Prerequisites for Quantum Fabric with MySQL

Applicable for Engagement Services

  1. Create the database needed for Engagement Services with unicode character set as UTF8. Also ensure that modify the my.cnf or my.ini with the following parameters:
    [client]
    default-character-set = utf8
    [mysql]
    default-character-set = utf8
    [mysqld]|
    character-set-client-handshake = FALSE
    collation_server='utf8_unicode_ci'
    character_set_server='utf8'
  2. Next, restart the MySQL service and run the following query to verify the details:

    mysql> show variables like '%coll%';
    +----------------------+-----------------+
    | Variable_name | Value |
    +----------------------+-----------------+
    | collation_connection | utf8_unicode_ci |
    | collation_database | utf8_unicode_ci |
    | collation_server | utf8_unicode_ci |
    +----------------------+-----------------+
    3 rows in set (0.00 sec)
    mysql> show variables like '%char%';
    +--------------------------+----------------------------+
    | Variable_name | Value |
    +--------------------------+----------------------------+
    | character_set_client | utf8 |
    | character_set_connection | utf8 |
    | character_set_database | utf8 |
    | character_set_filesystem | binary |
    | character_set_results | utf8 |
    | character_set_server | utf8 |
    | character_set_system | utf8 |
    | character_sets_dir | /usr/share/mysql/charsets/ |
    +--------------------------+----------------------------+

Applicable for Identity Services

If you are using any lower versions of MySQL 5.7 such as v5.7.12 or lower during installation, you may encounter an error due to which the installation rolls back. This error occurs due to a bug in the MySQL database.

For more information, refer MySQL Bugs

Following are the error details:

  • Error: Migration V810_27_01__DeleteDuplicateAcsUserIdProviderGuidRowsAddUniqueConstraint.sql failed
  • SQL State: HY000
  • Error Code: 1093
  • Error Message: You can't specify target table 'users' for update in FROM clause
  • Location: <Location where the installation is done>

To resolve this error, run the following commands in the MySQL Server:

  1. Execute the following command before running the installer:
  2. SET GLOBAL optimizer_switch = 'derived_merge=off';

  3. Once the installation is done, set derived_merge ON using the following command:
  4. SET GLOBAL optimizer_switch = 'derived_merge=on';

Increase innodb_log_file_size in my.ini file (For Engagement Services)

NOTE:  If the size of your application is more than the variable size of server database, an error occurs. Ensure the variable max_allowed_packet_size is set to a higher value than the application size.

To avoid this error increase the global variable in the server database.

- Modify the SQL Statement to Set global max_allowed_packet=10*1024*1024.
In this statement the server database size is configured to 10-Megabytes(MB).

For example, if your application size is 1024-kilobytes (1 MB) and you try to publish an application from Quantum Visualizer of 2048-Kilobytes(2 MB) an error appears while publishing. Increase the  size of server database to a value more than 2048-Kilobytes (2 MB) for publishing the application.

For innodb_log_file_size, the value is set to 48M by default.

In the my.ini file, increase the innodb_log_file_size = <value should be greater than 10% of max_allowed_packet=500>

NOTE: When uploading larger files will get an error Packets larger than max_allowed_packet are not allowed.

Prerequisites for Quantum Fabric with MariaDB

Increase the table_definition_cache and table_open_cache values

To increase the values of table_definition_cache and table_open_cache in Maria DB, execute the following commands or update the ini or cnf file with:



set GLOBAL table_definition_cache=4000;
//For table_definition_cache; 4000 is the minimum value

set GLOBAL table_open_cache=2000; //For table_open_cache; 2000 is the minimum value