Problems with data sources

In this case the application is having difficulty accessing a data source. The data source can be either an ODBC data source or a JDBC data source. There can be a number of reasons why FTM cannot access a data source:
  • The ODBC settings in the ODBC initialization file may be incorrect. Possible errors include:
    • The database driver location may be incorrectly defined - check that this exists and that the spelling is correct
    • That the database server location, port number, or both, are not defined or are incorrect (for some databases these have to be defined even if the database is on the same system as the driver)
    • That the database name is misspelled or the database that you are trying to access
    • Some databases require additional parameters that need to be defined in the ODBC initialization file- these will be listed in the ODBC section of the documentation relating to the database
    • The user name and password for the database used by the broker instance may have been incorrectly set resulting in an error indicating that the credentials are not recognized during the authentication process.
    • The password used in the security identity may have been changed, expired or been locked out. A symptom of this would be that the connection has worked correctly for some time but then fails.
  • The JDBC settings for the IBM® Integration Bus instance may have been set incorrectly. Details on these settings and how to report on them can be found in the relevant section of the installation documentation. Issues that may arise are:
    • The initial settings used to connect IBM Integration Bus to the database using the mqsicreateconfigurableservice command may have been incorrect. The critical parameters here are the URL format and the class names. The appropriate values for these parameters will be found in the documentation for the particular database that you are using (for example, DB2®, Oracle).
    • Properties defined in the URL format may not have been defined using the mqsichangeproperties command
    • The database server location and port number may have been incorrectly defined using the mqsichangeproperties command. Note that for some databases these have to be defined even if the database is on the same system as the driver.
    • The database driver location (defined in the jarsURL property) may have been incorrectly defined using the mqsichangeproperties command. You should ensure that the location is correct. For example, verify that the driver JAR files are located there.
    • The security identity has not been created or has not been applied to the broker instance. Details of the current settings can be found by using the mqsireportproperties command.
    • The properties of the security identity have been incorrectly set resulting in an error indicating that the credentials are not recognized during the authentication process.
    • The password used in the security identity may have been changed, expired or been locked out. A symptom of this would be that the connection has worked correctly for some time but then fails.
  • The database driver may be the incorrect version for the database or operating system being used. For example, you may need to use a 64 bit driver version to access a 64 bit database. The database documentation should be consulted, sometimes you will have to add additional parameters to the ODBC initialization file or set different properties on the JDBC provider.
  • The database name may be incorrect. If you are accessing the database directly from your code, make sure that the spelling is correct. If you are using a User Defined Property (UDP), make sure that the property has been populated correctly (or at all).
  • The database schema may be incorrect. If you are accessing the database directly from your code, make sure that the spelling is correct. If you are using a User Defined Property (UDP), make sure that the property has been populated correctly (or at all).
Note: If you make changes to any of the data source parameters (ODBC or JDBC), you will at least need to restart the broker instance that uses the database. In some cases, you also need to restart the database instance.