Database Integration may not work if the database format is UTF-8

Note: Applies to RTI Connext DDS 5.0.0 and above.

Database Integration Service may fail silently if the database character set is UTF-8 (by default in MySQL 5.6). As a consequence the communication between the database service and the Database Integration Service daemon (rtirtc_mysql) is not established and the updates on the publication and subscription tables are not propagated. You may detect this behavior by checking if the table  RTIRTC_TBL_INFO has not been created.


You can check the current database character set with the following SQL statement:



To fix this situation you need to specify the latin1 character set. There are several ways to do this:

Method 1

Change the default character set of the database used by Database Integration Service with the following steps:

  • Stop the Database Integration Service daemon.
  • Run the following SQL statement to change the database character set:  ALTER DATABASE DEFAULT CHARACTER SET latin1;
  • Delete all the Database Integration Service metatables: RTIDDS_PUBLICATIONS, RTIDDS_SUBSCRIPTIONSRTIRTC_LOG and RTIRTC_TBL_INFO.
  • Start the Database Integration Service daemon.

Method 2

Comment out the following lines or change them to “latin1” inside the file my.ini of your home directory or MySQL installation directory.



The MySQL service should be restarted after changing the values. Also, the database should be recreated after restarting:

    • drop database <dbname>;
    • create database <dbname>;