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_passwd
MySQL 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_parameters
Additional 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_user
MySQL 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_passwd
MySQL 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"