MySQL Replication Status Test

Replication enables data from one MySQL database server (the source) to be copied to one or more MySQL database servers (the replicas). Replication is asynchronous by default; replicas do not need to be connected permanently to receive updates from the source. Depending on the configuration, you can replicate all databases, selected databases, or even selected tables within a database.

In a high availability environment, the replica servers should always be in sync with the master database instance. For this, the replication should always be enabled on the master and the replica servers should be connected to the master at all times. If the replication fails even for a brief period or if the replica servers are not connected to the master, the replica servers will not have the updated data. To avoid this, it is essential to monitor the replication status of the master MySQL database instance. The MySQL Replication Status test helps administrators in this regard!

This test reports whether/not the replication process is enabled on the target database instance and also helps administrators figure out if the target database instance is the master or not. Additionally, this test reports the count of slaves/replica servers connected to the target database instance and the current uptime of the database instance.

Target of the test : A MySQL server

Agent deploying the test : An internal/remote agent

Outputs of the test : One set of results for the target database server instance being monitored

Configurable parameters for the test
Parameter Description

Test Period

How often should the test be executed.

Host

The IP address of the MySQL server.

Port

The port at which the specified host listens.

Database

Specify the name of a database on the target MySQL database server being monitored

Username and Password

The eG agent has to be configured with the credentials of a user who has server-wide Process and Select privileges on the monitored MySQL server. To know how to create such a user, refer to Pre-requisites for Monitoring the MySQL Server topic.

For this test to run, the user should additionally possess the following privileges. To configure the above-mentioned user with the specific privileges, issue the commands given below:

GRANT REPLICATION CLIENT on *.* to '<username>'@'<IP_address_of_eG_agent>';

GRANT REPLICATION SLAVE on *.* to '<username>'@'<IP_address_of_eG_agent>';

Confirm Password

Confirm the password by retyping it here.

Measurements made by the test
Measurement Description Measurement Unit Interpretation

Is replication enabled?

Indicates whether/not replication is enabled on the database instance.

 

The values reported by this measure and its numeric equivalents are mentioned in the table below:

Measure Value Numeric Value
Yes 1
No 0

Note:

By default, this measure reports the Measure Values listed in the table above to indicate whether/not replication is enabled on this instance. The graph of this measure however, is represented using the numeric equivalents only i.e., 0 or 1.

Is master?

Indicates whether/not the database instance is the master.

 

The values reported by this measure and its numeric equivalents are mentioned in the table below:

Measure Value Numeric Value
Yes 1
No 0

Note:

By default, this measure reports the Measure Values listed in the table above to indicate whether/not this instance is the master. The graph of this measure however, is represented using the numeric equivalents only i.e., 0 or 1.

Slave node count

Indicates the number of slaves/replica servers attached to the database instance.

Number

This measure will be reported only if the Is master? measure reports a value of Yes.

If the value of this measure decreases gradually, backup data could not be replicated by the master database instance and hence data could not be retrieved if the master database instance crashes.

Uptime

Indicates the current uptime of the database instance.

Minutes