/etc/my.cnf

read_only=on


启动项加入 --relay-log-purge=off


/etc/systemd/system/mysql.service


# Simple MySQL systemd service file

#

# systemd supports lots of fancy features, look here (and linked docs) for a full list: 

#  http://www.freedesktop.org/software/systemd/man/systemd.exec.html

#

# Note: this file ( /usr/lib/systemd/system/mysql.service )

# will be overwritten on package upgrade, please copy the file to 

#

#  /etc/systemd/system/mysql.service 

#  

# to make needed changes.

# systemd-delta can be used to check differences between the two mysql.service files.

#


[Unit]

Description=MySQL Community Server

After=network.target

After=syslog.target


[Install]

WantedBy=multi-user.target

Alias=mysql.service


[Service]

User=mysql

Group=mysql


# Execute pre and post scripts as root

PermissionsStartOnly=true


# Needed to create system tables etc.

#ExecStartPre=/usr/bin/mysql-systemd-start pre



# Start main service

ExecStart=/usr/local/mysql/bin/mysqld_safe --relay-log-purge=0


# Don't signal startup success before a ping works

#ExecStartPost=/usr/bin/mysql-systemd-start post


# Give up if ping don't get an answer

TimeoutSec=600


Restart=always

PrivateTmp=false


不自动清理relay log 用作业的方式清理

清理时调用 mha_node 工具 purge_relay_logs



cat purge_relay_log.sh 


#!/bin/bash

user=root

passwd=123456

port=3306

log_dir='/data/masterha/log'

work_dir='/data'

purge='/usr/local/bin/purge_relay_logs'


if [ ! -d $log_dir ]

then

   mkdir $log_dir -p

fi


$purge --user=$user --password=$passwd --disable_relay_log_purge --port=$port --workdir=$work_dir >> $log_dir/purge_relay_logs.log 2>&1