专业规范的mysql启停脚本

#!/bin/sh
#######################################################
#ShellName:mysql启停脚本 #
#Author:zkg #
#Created Time:2019-08-23 #
#Blog Address:https://blog.51cto.com/1009516 #
#######################################################

#调用系统函数库
. /etc/init.d/functions
#定义路径变量
BASEDIR=/data/mysql
LOCK_FILE_PATH=/var/lock/subsys
LOCK_FILE=$LOCK_FILE_PATH/mysql
MYSQL_PID_FILE_PATH="$BASEDIR/uname -n.pid"

start(){
echo "Starting Mysql"
if [ -x $BASEDIR/bin/mysqld_safe ];then
$BASEDIR/bin/mysqld_safe &>/dev/null &
RETVAL=$?
if [ $RETVAL -eq 0 ];then
action "SUCCESS!!! start mysqld" /bin/true
if [ -w $LOCK_FILE_PATH ];then
touch $LOCK_FILE
fi
return $RETVAL
else
action "ERROR!!! start mysqld failed" /bin/false
fi
else
action "Couldn‘t find MySQL server ($BASEDIR/bin/mysqld_safe)" /bin/false
fi
}
stop(){
mysql_pid=cat $MYSQL_PID_FILE_PATH
if ( kill -0 $mysql_pid 2>/dev/null)
then
echo "Stopping Mysql"
kill -9 $mysql_pid
RETVAL=$?
if [ $RETVAL -eq 0 ];then
action "SUCCESS!!! stop mysqld" /bin/true
if [ -f $LOCK_FILE ];then
rm -f $LOCK_FILE
fi
return $RETVAL
else
action "ERROR!!! stop mysqld failed" /bin/false
fi
else
action "MySQL server process mysqld_pid is not running!" /bin/false
rm -f $MYSQL_PID_FILE_PATH
fi
}

case $1 in
start)
start
RETVAL=$?
;;
stop)
stop
RETVAL=$?
;;
restart)
stop
sleep 2
start
RETVAL=$?
;;
*)
echo "Usage:$0 {start|stop|restart}"
RETVAL=$?
;;
esac
exit $RETVAL

原文地址:https://blog.51cto.com/1009516/2431976

时间: 2024-08-27 00:58:57

专业规范的mysql启停脚本的相关文章

[shell]MySQL启停脚本

写了个较为完善的mysql多实例的启动停止脚本. [[email protected] 3307]# cat mysql #!/bin/sh [ $# != 1 ]&&{ echo "USAGE:/data/3307/mysql {start|stop}" exit 0 } if [ "$1" == "start" ];then if [ ! -f /data/3307/mysqld.pid ];then /application

Mysql启停以及恢复备份恢复数据库

1.mysql启停 进入cmd 输入如下命令 net stop mysql(自己起的mysql名称) -------停 net strat mysql   --------------------------起 2.备份及恢复数据库 我只采用备份C:\ProgramData\MySQL\MySQL Server 5.1\data路径下的数据库文件夹(例如worktime) 备份脚本如下: color 0A --设置颜色title 工时管理数据库备份(请不要关闭,你可以最小化)!@echo off

Linux 程序启停脚本

start.sh #!/bin/sh java -jar ./program.jar & echo $! > /var/run/program.pid stop.sh #!/bin/sh PID=$(cat /var/run/program.pid) kill $PID 原文链接:Linux 程序启停脚本 - 零度空间

nginx 启停脚本

#! /bin/sh# chkconfig: 35 85 15# description: This is nginx start and stop script PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DESC="nginx daemon" NAME=nginx DAEMON=/usr/sbin/$NAME CONFIGFILE=/etc/nginx/$NAME.conf PIDFILE=/v

Onsql和MySQL的启停脚本

启停onesql,总共四个参数{start|stop|restart|status},只要稍微改一下头部的三个文件路径,即可完成mysql单实例的启停. [#9(zhouxx_vm(node3:192.168.56.103))#[email protected]~]#service onesql5.6.26 Usage:sh /etc/init.d/onesql5.6.26 {start|stop|restart|status} 详细执行效果如下: [#2(zhouxx_vm(node3:192

Oracle BIEE启停脚本

作为BI的开发人员,经常启停BI服务在所难免,启动的过程又比较长,命令需要不同目录切换,简直烦死人呢, 特意整理了linux中的启动脚本,将以下脚本存成biee.sh,后面的过程就相当简单了, 启动:./biee.sh start 停止 :  ./biee.sh stop 重启:./biee restart 日志的观察: tail -f /var/log/obiee-start.log tail -f /var/log/obiee-stop.log 以下是脚本内容,保存成.sh文件,然后chmo

nginx启停脚本

安装nginx时,源码包中未带官方的启动脚本,也就无法使用service nginxd start这种启动方式,查了下资料自己写了一个: #!/bin/bash #@version: 0.0.1 #@author: lifafu #@file: #@time: 2017/02/04 08:00 #@company: source /etc/profile #加载系统环境变量 source $HOME/.bash_profile #加载用户环境变量 #set -o nounset #引用未初始化变

python启停脚本的编写

先占个位置,打算记录一下启停python 的脚本start.sh,stop.sh的写法. 内容包括启动python脚本的方式,日志的重定向,获取进程id,以及杀掉进程. 参考文章: http://blog.sina.com.cn/s/blog_61c006ea0100mkax.html https://www.cnblogs.com/evilliu/p/7682444.html https://www.cnblogs.com/zhangwuji/p/8059539.html 原文地址:https

Redis启停脚本

环境:多实例环境,需指定端口进行启停服务 编写脚本: #!bin/sh#调用函数功能#这是redis的启动.停止.重启脚本REDISPORT=$1#redis的pidEXEC=/usr/local/redis4/bin/redis-server CONF="/etc/redis/${REDISPORT}.conf"CLIEXEC=/usr/local/redis4/bin/redis-cli#redis的PID文件位置,需要修改PIDFILE=/var/run/redis_${REDI