ocf_heartbeat_mysql — Manages a MySQL database instance
mysql [ start | stop | status | monitor | promote | demote | meta-data | validate-all ]
binary
Location of the MySQL server binary
(optional, string, default /usr/bin/safe_mysqld)
client_binary
Location of the MySQL client binary
(optional, string, default mysql)
config
Configuration file
(optional, string, default /etc/my.cnf)
datadir
Directory containing databases
(optional, string, default /var/lib/mysql)
user
User running MySQL daemon
(optional, string, default mysql)
group
Group running MySQL daemon (for logfile and directory permissions)
(optional, string, default mysql)
log
The logfile to be used for mysqld.
(optional, string, default /var/log/mysqld.log)
pid
The pidfile to be used for mysqld.
(optional, string, default /var/run/mysql/mysqld.pid)
socket
The socket to be used for mysqld.
(optional, string, default /var/lib/mysql/mysql.sock)
test_table
Table to be tested in monitor statement (in database.table notation)
(optional, string, default mysql.user)
test_user
MySQL test user
(optional, string, default root)
test_passwdMySQL test user password (optional, string, no default)
enable_creation
If the MySQL database does not exist, it will be created
(optional, integer, default 0)
additional_parametersAdditional parameters which are passed to the mysqld on startup. (e.g. --skip-external-locking or --skip-grant-tables) On M/S setup --skip-slave-start is needed (or in config file). (optional, string, no default)
replication_userMySQL replication user. This user is used for starting and stopping MySQL replication, for setting and resetting the master host, and for setting and unsetting read-only mode. Because of that, this user must have SUPER, REPLICATION SLAVE, REPLICATION CLIENT, and PROCESS privileges on all nodes within the cluster. (optional, string, no default)
replication_passwdMySQL replication password. Used for replication client and slave. (optional, string, no default)
replication_port
The port on which the Master MySQL instance is listening.
(optional, string, default 3306)
max_slave_lag
The maximum number of seconds a replication slave is allowed to lag
behind its master. Do not set this to zero. What the cluster manager
does in case a slave exceeds this maximum lag is determined by the
evict_outdated_slaves parameter.
(optional, integer, default 3600)
evict_outdated_slaves
If set to true, any slave which is more than max_slave_lag seconds
behind the master has its MySQL instance shut down. If this parameter
is set to false in a primitive or clone resource, it is simply
ignored. If set to false in a master/slave resource, then exceeding
the maximum slave lag will merely push down the master preference so
the lagging slave is never promoted to the new master.
(optional, boolean, default false)
This resource agent supports the following actions (operations):
start
Starts the resource. Suggested minimum timeout: 120.
stop
Stops the resource. Suggested minimum timeout: 120.
status
Performs a status check. Suggested minimum timeout: 60.
monitor
Performs a detailed status check. Suggested minimum timeout: 30. Suggested interval: 20.
monitor (Master role)
Performs a detailed status check. Suggested minimum timeout: 30. Suggested interval: 10.
monitor (Slave role)
Performs a detailed status check. Suggested minimum timeout: 30. Suggested interval: 30.
promote
Promotes the resource to the Master role. Suggested minimum timeout: 120.
demote
Demotes the resource to the Slave role. Suggested minimum timeout: 120.
notify
Suggested minimum timeout: 90.
validate-all
Performs a validation of the resource configuration. Suggested minimum timeout: 5.
meta-data
Retrieves resource agent metadata (internal use only). Suggested minimum timeout: 5.
The following is an example configuration for a mysql resource using the crm(8) shell:
primitive example_mysql ocf:heartbeat:mysql \ op monitor depth="0" timeout="30" interval="20" op monitor role="Master" depth="0" timeout="30" interval="10" op monitor role="Slave" depth="0" timeout="30" interval="30"