Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
OCF_HEARTBEAT_MYSQL(7)	       OCF resource agents	  OCF_HEARTBEAT_MYSQL(7)

NAME
     ocf_heartbeat_mysql - Manages a MySQL database instance

SYNOPSIS
     mysql  [start  |  stop  | status | monitor | promote | demote | meta-data |
	   validate-all]

DESCRIPTION
     Resource script for MySQL. May manage a standalone MySQL database, a  clone
     set  with externally managed replication, or a complete master/slave repli-
     cation setup. Note, when master/slave replication is in use,  the	resource
     must  be  setup to use notifications. Set 'notify=true' in the metadata at-
     tributes when defining a MySQL master/slave instance.

     While managing replication, the default behavior is to use uname -n  values
     in  the  change  master  to command. Other IPs can be specified manually by
     adding a node attribute ${INSTANCE_ATTR_NAME}_mysql_master_IP giving the IP
     to use for replication. For example, if the mysql primitive you  are  using
     is p_mysql, the attribute to set will be p_mysql_mysql_master_IP.

SUPPORTED PARAMETERS
     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, must have select privilege on test_table

	 (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, boolean, default 0)

     additional_parameters
	 Additional  parameters which are passed to the mysqld on startup. (e.g.
	 --skip-external-locking or --skip-grant-tables)

	 (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, PROCESS and RELOAD
	 privileges on all nodes within the cluster. Mandatory if you  define  a
	 master-slave resource.

	 (optional, string, default "root")

     replication_passwd
	 MySQL	replication  password.	Used  for  replication client and slave.
	 Mandatory if you define a master-slave resource.

	 (optional, string, no default)

     replication_port
	 The port on which the Master MySQL instance is listening.

	 (optional, string, default "3306")

     replication_require_ssl
	 Enables SSL connection to local MySQL	service  for  replication  user.
	 i.e.  if  REQUIRE SSL for replication user in MySQL set, this should be
	 set to "true".

	 (optional, string, default "false")

     replication_master_ssl_ca
	 The SSL CA certificate to be used for replication over SSL.

	 (optional, string, no default)

     replication_master_ssl_cert
	 The SSL CA certificate to be used for replication over SSL.

	 (optional, string, no default)

     replication_master_ssl_key
	 The SSL certificate key to be used for replication over SSL.

	 (optional, string, no default)

     max_slave_lag
	 The maximum number of seconds a replication slave is allowed to lag be-
	 hind 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 be-
	 hind 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)

     reader_attribute
	 An  attribute	that  the RA can manage to specify whether a node can be
	 read from. This node attribute will be 1 if it's fine to read from  the
	 node, and 0 otherwise (for example, when a slave has lagged too far be-
	 hind the master).

	 A  typical  example for the use of this attribute would be to tie a set
	 of IP addresses to MySQL slaves that can be read from.

	 This parameter is only meaningful in master/slave set configurations.

	 (unique, optional, string, default "readable")

SUPPORTED ACTIONS
     This resource agent supports the following actions (operations):

     start
	 Starts the resource. Suggested minimum timeout: 120s.

     stop
	 Stops the resource. Suggested minimum timeout: 120s.

     status
	 Performs a status check. Suggested minimum timeout: 60s.

     monitor
	 Performs a detailed status check. Suggested minimum timeout: 30s.  Sug-
	 gested interval: 20s.

     monitor (Promoted role)
	 Performs  a detailed status check. Suggested minimum timeout: 30s. Sug-
	 gested interval: 10s.

     monitor (Unpromoted role)
	 Performs a detailed status check. Suggested minimum timeout: 30s.  Sug-
	 gested interval: 30s.

     promote
	 Promotes  the	resource  to the Master role. Suggested minimum timeout:
	 120s.

     demote
	 Demotes the resource to the  Slave  role.  Suggested  minimum	timeout:
	 120s.

     notify
	 Suggested minimum timeout: 90s.

     validate-all
	 Performs  a validation of the resource configuration. Suggested minimum
	 timeout: 5s.

     meta-data
	 Retrieves resource agent metadata (internal use only). Suggested  mini-
	 mum timeout: 5s.

EXAMPLE CRM SHELL
     The  following  is  an example configuration for a mysql resource using the
     crm(8) shell:

	 primitive p_mysql ocf:heartbeat:mysql \
	   op monitor depth="0" timeout="30s" interval="20s" \
	   op monitor role="Promoted" depth="0" timeout="30s" interval="10s" \
	   op monitor role="Unpromoted" depth="0" timeout="30s" interval="30s"

	 ms ms_mysql p_mysql \
	   meta notify="true" interleave="true"

EXAMPLE PCS
     The following is an example configuration for a mysql resource using pcs(8)

	 pcs resource create p_mysql ocf:heartbeat:mysql \
	   op monitor OCF_CHECK_LEVEL="0" timeout="30s" interval="20s" \
	   op monitor role="Promoted" OCF_CHECK_LEVEL="0" timeout="30s" interval="10s" \
	   op monitor role="Unpromoted" OCF_CHECK_LEVEL="0" timeout="30s" interval="30s" promotable

SEE ALSO
     http://clusterlabs.org/

AUTHOR
     ClusterLabs contributors (see the resource  agent	source	for  information
     about individual authors)

resource-agents 4.13.0		   08/27/2026		  OCF_HEARTBEAT_MYSQL(7)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=ocf_heartbeat_mysql&sektion=7&manpath=FreeBSD+Ports+15.1.quarterly>

home | help