Maintenance outage for upgrade on Sunday, September 22

This site,, will be inaccessible for two hours starting at 8 AM CDT, Sunday, September 22, for a platform upgrade.

    Page tree
    Skip to end of metadata
    Go to start of metadata

    Pattern Goal

    The goal of the Oracle MySQL Server Database Detail pattern is to obtain the list of Databases being managed by the MySQL Server, and to obtain (optionally, and disabled by default) the list of Tables within these databases.


    The patterns will not by default return the list of all tables within the discovered databases as this can have a marked impact on discovery of hosts with large database installations

    The information is then stored within the Atrium Discovery Model as DatabaseDetail Nodes. In Atrium Discovery 8.3 and later, the DatabaseDetail node has additional attributes added which permit easy mapping by the CMDB sync mechanism to the BMC_Database CIs in Atrium CMDB.

    Discovery by a Database Credential


    Setting of Database Credentials

    Setting the port

    The option to set the default port no longer exists in the MySQL Database Detail pattern.
    The MySQL Database Detail pattern behavior is now as follows:

    • If the core TKU MySQL Server Pattern discovers the listening port, this is the port that will be used
    • Alternatively, the MySQL Database Detail pattern will use the port that has been set in the database credentials by the user.
    • If no port was retrieved and port DB listening port was not set by the user, the MySQL Database Detail pattern will not attempt to perform database queries.
      The reason for this change is to minimize the number of configuration steps required and prevent errors due to forgotten changes in pattern configuration.

    SQL Queries Executed

    The pattern executes the following SQL Queries.

    • Obtaining a list of Databases being managed: SHOW DATABASES
    • Obtaining a list of tables within a database:SELECT table_name FROM information_schema.tables WHERE table_schema = %db_name%

    The pattern only runs the latter query (and creates the table nodes) if the retrieve_tables configuration option is enabled


    Discovery by File Query

    Discovery by file query is only attempted if discovery by a database credential fails.

    The pattern obtains a list of all subdirectories of the db_path.  If any of these subdirectories contains file "db.opt" that patterns assumes this corresponds to a database with the name of the subdirectory, and creates a DatabaseDetail node.

    So, for example, if /opt/MySQL/data has a subdirectory "BigData" and file /opt/MySQL/data/BigData/db.opt exists then a DatabaseDetail node will be created with instance name "BigData"

    We do not attempt to retrieve table information when we discover database information by a file query


    1 Comment

    1. Is there any chance of an update for this pattern that will log into the database from the machine where it discovered the instance? This prevents having to poke holes in the firewall and allowing external database connections.