1. Home
  2. Docs
  3. ClusterControl
  4. User Guide (GUI)
  5. MySQL/MariaDB
  6. Performance

Performance

Overview

You can view graphs of different database counters on this page. You can record up to 82 different MySQL counters.

Field Description
Choose Graph
  • Choose which counters to record.
Search
  • Filter the status variables available in the counter list.
  • Choose the status variables that you want to track. Check the ‘On’ box to the left of the counter that you want to record

For a detailed explanation of the status variables of your cluster, you can refer to the following pages:

Advisors

Lists of scheduled advisors’ results created in ClusterControl → Manage → Developer Studio using ClusterControl DSL. You can think of it as a ‘scheduled mini-program’ which executes a script created in Developer Studio and produces a result containing status, advice and justification. Each advisor can be expanded and collapsed by clicking on the dropdown icon at the top right corner.

Field Description
Show Advisors
  • Filters the advisor result based on a tag.
Edit
  • Opens the advisor script in Developer Studio.
Disable
  • Disables the advisor script from running.
Status
  • Advisor status – Ok, Warning, Critical.
DB Instance
  • The database server the advisor running on
Justification
  • The result of advisors’ execution.
Advice
  • The advisor’s decision based on the justification.

DB Status

DB Status provides a quick overview of MySQL status across all your database nodes, similar to SHOW STATUS statements. You can use the Search text field to filter the result.

Note

You can check to Hide all zero values to filter out any status that returned 0.

DB Variables

DB Variables provide a quick overview of MySQL variables that are set across all your database nodes, similar to SHOW GLOBAL VARIABLES statements. You can use the Search text field to filter the result.

Note

Red text means that the variable setting is different. In some cases that is acceptable (e.g., IP address of the node).

DB Growth

Provides a summary of your database and table growth on daily basis for the last 30 days. On the first line of the Top 25 Largest Databases grid, you should notice the actual size of the MySQL data directory (with a folder icon). This is useful to determine whether any other files that exist in the data directory may consume huge spaces e.g binary log, error log or MySQL general log.

Click on a database listed for further details on growth summary per table.

InnoDB Status

Fetches the current InnoDB monitor output for the selected host, similar to SHOW ENGINE INNODB STATUS command.

Schema Analyzer

Analyzes your database schemas for missing primary keys, redundant indexes, and tables using the MyISAM storage engine. Galera Cluster needs an explicitly defined primary key on each table (unique key does not count). MyISAM tables are not recommended in Galera. ClusterControl will periodically check the schemas for these (default every 8 hours or every CMON restart), and raise an alert if necessary.

Field Description
Show tables without Primary Keys
  • List of tables without primary keys. A primary key is important in Galera. The DELETE operations are unsupported on tables without a primary key. Also, rows in tables without a primary key may appear in a different order on different nodes.
Show MyISAM Tables
  • MyISAM does not support transactions. However, the DMLs for MyISAM should also work but it’s still experimental in Galera.
Show Redundant Indexes
  • Having duplicate keys in schemas can hurt the performance of the database:
    • They make the optimizer phase slower because MySQL needs to examine more query plans.
    • The storage engine needs to maintain, calculate and update more index statistics.
    • DML and even read queries can be slower because MySQL needs to update and fetch more data to Buffer Pool for the same load.
    • Data needs more disk space so the backups will be bigger and slower.

 

Transaction Log

Lists out long-running transactions and deadlocks across database cluster where you can easily view what transactions are causing the deadlocks. The default query time threshold is 30 seconds. This is configurable in the CMON configuration file under db_long_query_time_alarm configuration option.

Click on the listed query to see the output of InnoDB status for detailed debugging.

Field Description
Interval
  • The long-running interval before ClusterControl captures the transaction.
Db Instance
  • Database instance that processes the transaction.
Host
  • Host that performs the transaction.
Db
  • Database name.
Tx Id
  • Transaction ID.
Blocking Tx Id
  • Transaction ID that blocked the actual transaction.
Query
  • Query executed inside the transaction.
Duration (sec)
  • The duration of the long-running transactions.
Last Seen
  • The last time ClusterControl has seen the error.
Was this article helpful to you? Yes No