暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

MySQL router守护进程

原创 王同学 2021-04-04
731

[mysql@hdp2~]$more /etc/init.d/mysqlrouter
#! /bin/bash

mysqlrouter This shell script takes care of starting and stopping

the MySQL Router

chkconfig: 2345 66 34

description: MySQL Router

processname: mysqlrouter

config: /etc/mysqlrouter/mysqlrouter.ini

pidfile: /var/run/mysqlrouter/mysqlrouter.pid

Copyright © 2015, Oracle and/or its affiliates. All rights reserved.

This program is free software; you can redistribute it and/or modify

it under the terms of the GNU General Public License as published by

the Free Software Foundation; version 2 of the License.

This program is distributed in the hope that it will be useful,

but WITHOUT ANY WARRANTY; without even the implied warranty of

MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the

GNU General Public License for more details.

You should have received a copy of the GNU General Public License

along with this program; if not, write to the Free Software

Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA

Maintainer: MySQL Release Engineering

Source function library

. /etc/rc.d/init.d/functions

Source networking configuration

. /etc/sysconfig/network

add general install path

base_dir=/home/mysql/mysql-router-2.1.6

fix exec path

exec=basedir/bin/mysqlrouterprog=mysqlrouterpiddir={base_dir}/bin/mysqlrouter prog=mysqlrouter piddir={base_dir}/run
pidfile=piddir/mysqlrouter.pidlogdir={piddir}/mysqlrouter.pid logdir={base_dir}/log
logfile=logdir/mysqlrouter.loglockfile=/var/lock/subsys/logdir/mysqlrouter.log lockfile=/var/lock/subsys/prog

add conf path

conf=/etc/mysqlrouter.conf

start () {
[ -d $piddir ] || mkdir -p $piddir
chown mysql:mysql $piddir
[ -d $logdir ] || mkdir -p $logdir
chown mysql:mysql $logdir
[ -e $logfile ] || touch $logfile
chown mysql:mysql logfileexportROUTERPID=logfile export ROUTER_PID=pidfile

add opt -c to resolv mysqlrouter.ini

daemon --user mysql $exec -c conf >/dev/null 2>&1 & # ret=
if [ $ret -eq “0” ]; then
action $"Starting prog:"/bin/truetouch/var/lock/subsys/prog: " /bin/true touch /var/lock/subsys/prog
else
action $"Starting $prog: " /bin/false
fi
return $ret
}

stop () {
[ -f /var/lock/subsys/prog ] || return 0 killproc mysqlrouter >/dev/null 2>&1 ret=
if [ $ret -eq “0” ]; then
rm -f pidfilermf/var/lock/subsys/pidfile rm -f /var/lock/subsys/prog
action $"Stopping $prog: " /bin/true
else
ation $"Stopping $prog: " /bin/false
fi
}

restart () {
stop
start
}

condrestart () {
[ -e /var/lock/subsys/$prog ] && restart || return 0
}

case “1"instart)start;;stop)stop;;status)statusp"1" in start) start ;; stop) stop ;; status) status -p "pidfile” $prog
;;
restart)
restart
;;
condrestart|try-restart)
condrestart
;;
reload)
exit 3
;;
force-reload)
restart
;;
*)
echo $“Usage: $0 {start|stop|status|condrestart|try-restart|reload|force-reload}”
exit 2
esac

exit [mysql@hdp2 ] [mysql@hdp2~]
当程序意外被KILL后,有相关程序运行标识,需要先:
rm -f pidfilermf/var/lock/subsys/pidfile rm -f /var/lock/subsys/prog

  • [ ]
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论