Mysql判断是否启动脚本

#!/bin/bash

#By:sadoc.blog.51cto.com

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

MYUSER=root

MYPASS="123456"

MYSOCK=/var/lib/mysql/mysql.sock

MY_START="systemctl start mysqld.service"

LOG_PATH=/tmp/mysql

MY_PATH=/usr/bin/mysql

DAYS=`date +%F`

SECOND=`date +%Y/%m/%d-%H:%M:%S`

STARTING="${LOG_PATH}/start-$DAYS.log"

[ -d $LOG_PATH ] || mkdir -p $LOG_PATH

MY_CMD="$MY_PATH -u$MYUSER -p$MYPASS -S $MYSOCK"

$MY_CMD -e "select version ();" >/dev/null 2>&1

if [ $? -eq 0 ];then

action "$SECOND----Mysql" /bin/true >>$LOG_PATH/my_status.log

exit 0

else

$MY_START >>$STARTING

sleep 5;

$MY_CMD -e "select version ();" >/dev/null 2>&1

if [ $? -ne 0 ];then

for down in `seq 5`

do

systemctl stop mysqld.service >/dev/null 2>&1

[ $? -ne 0 ] && break;

sleep 2;

done

$MY_START >>$STARTING

fi

$MY_CMD -e "select version ();" >/dev/null 2>&1 && Status="restarted" || Status="unkown"

echo "$SECOND------Mysql status is $Status" >>$LOG_PATH/my_status.log

fi

时间: 2024-10-08 07:07:57

Mysql判断是否启动脚本的相关文章

MySQL 多实例启动脚本

企业案例:开发mysql多实例启动脚本:mysql多实例路径为: [[email protected] ~]# ls -ld /data/3306/ drwxr-xr-x 3 mysql mysql 4096 Oct 9 13:28 /data/3306/ 1)已知mysql多实例启动命令为: mysql_safe --default-file=/data/3306/my.cnf & 2)停止命令为: mysqladmin -uroot -poldboy123 -S /data/3306/mys

Mysql基础的启动脚本

mysql安装目录(Window): 解析: 第一张图: 前面四个是mysql的驱动: 可以通过后缀知道我们用什么方式连接就需要安装什么驱动了:  例如:java   使用的是jdbc  需要连接conntor j 第五个和最后一个 主要是文档和案例: Workbench 是GUI: 现在市面上有很多GUI无所谓用什么   看个人爱好  我用的是sqlyog: mysqlservice:这里面是mysqlservice的核心部分: 第二张图(mysqlservice): my-default.i

编写mysql多实例启动脚本

脚本原理: 启动MySQL动作: mysqld_safe来执行启动 停止MySQL动作: 使用mysqladmin来执行停止动作 重启的MySQL动作:    原理就是先停止,然后再启动 但是要注意:简单的sleep来等待停止和启动过程极可能出现在短时间内重复运行重启,mysqld_safe报错提示已经启动了一个实例的问题 这里可以参考MySQL提供的默认启动脚本mysqld.service中的wait_for_pid()这个函数. 以下是启动脚本,效果如图: 脚本: 1 #!/bin/sh 2

一个简单的mysql服务检测启动脚本

目的: 监测mysql的存活状态,一旦监测到mysql down掉,重新启动mysql. 脚本内容: /usr/local/mysql/bin/mysqladmin -uroot -psharpower ping > /dev/null 2>&1 if [ $? -ne 0 ] then         /etc/init.d/mysql.server restart >/dev/null         echo "`/bin/date '+%Y%m%d %H:%M:

多实例MySQL启动脚本

开发mysql多实例启动脚本: 已知mysql多实例启动命令为:mysqld_safe–defaults-file=/data/3306/my.cnf & 停止命令为:mysqladmin -u root -p123456 -S /data/3306/mysql.sock shutdown 要求:用函数,case语句.if语句等实现. #!/bin/sh [ -f /etc/init.d/functions ]&&. /etc/init.d/functions||exit #Def

MySQL启动脚本

今天在公司,上午搞了一个小时,MySQL单实例启动脚本搞定. [[email protected] scripts]# cat test3.sh  #!/bin/bash RETVAL=0 . /etc/init.d/functions basedir=/application/mysql-5.5.32/bin datadir=/application/mysql-5.5.32/data PSD=123.com   hostname=`hostname` menu(){ cat <<END =

mysql,mairadb启动脚本

# mysql 启动脚本,一直使用mariadb,data目录一直不对,启动一直出错,自己编写的一个小脚本 # 适用于el6 systemd脚本  如果用ansible 使用service启动会报错,可以将service定义成脚本然后再使用ansible启动服务 #!/bin/bash # MySQL daemon start/stop script. #   Name:mysql 启动脚本 #   Version Number:1.0.5 #   Type:检测服务状态 #   Languag

MySQL的启动脚本

自己写的MySQL的启动脚本 脚本一: #!/bin/sh . /etc/init.d/functions [ $# -ne 1 ] && { echo "USAGE:{start|stop|restart}" exit 1 } start(){ if [ -e /data/3307/mysqld.pid ] then echo "MySQL is running." else /application/mysql/bin/mysqld_safe -

通过Shell开发企业级标准服务启动脚本案例(MySQL)

老男孩教育Linux高端运维班Shell课后必会考试题: 企业Shell面试题10:开发企业级MySQL启动脚本 说明: MySQL启动命令为: /bin/sh mysqld_safe --pid-file=$mysqld_pid_file_path 2>&1 >/dev/null & 停止命令逻辑脚本为: mysqld_pid=`cat "$mysqld_pid_file_path"` if (kill -0 $mysqld_pid 2>/dev/n