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:检测服务状态

#   Language:bash shell

#   Date:2017-06-29

#   Author:xiong

# Comments to support chkconfig on RedHat Linux

# chkconfig: 2345 64 36

# description: A very fast and reliable SQL database engine.

set -e

lockfile=${LOCKFILE-/var/lock/subsys/mysql}

basedirs=/usr/local/mysql

mysqld_pid_file_path=/data/mysql/`hostname`.pid

mysqld_error_file_path=/data/mysql/`hostname`.err

STARTS(){

if [ -f $mysqld_pid_file_path ];then

echo "mysql 服务已启动"

exit 9

fi

$basedirs/bin/mysqld_safe --datadir=‘/data/mysql‘ --pid-file=$mysqld_pid_file_path &

RETVAL=$?

if [ $RETVAL -eq 0 ];then

echo $(pidof mysqld) > ${mysqld_pid_file_path}

touch ${lockfile}

echo "mysql 启动成功 "

else

echo "mysql 启动失败 请查看日志: $mysqld_error_file_path"

fi

}

STOPS(){

SERVERPD

MYSQL_PID=`cat $mysqld_pid_file_path`

MYSQL_MASTER_PID=`ps -ef | grep $MYSQL_PID | awk -F" " ‘{print $3}‘| head -1`

[ $MYSQL_MASTER_PID -eq 1 ] && continue || kill -9 $MYSQL_MASTER_PID

kill -9 $MYSQL_PID

[[ $RETVAL -eq 0 ]] && echo -e "mysql 已关闭\n"  netstat -anput | grep mysql && rm -rf $mysqld_pid_file_path $lockfile || echo "mysql关闭失败,请查看日志 日志目录: $mysqld_error_file_path"

}

STATUSS(){

netstat -anput | grep 3306 | awk ‘{print $7}‘ | awk -F ‘/‘ ‘{print $1}‘ | head -1

RETVAL=$?

[ $RETVAL -eq 0 ] && echo "mysql 运行正常 pid值:`cat $mysqld_pid_file_path`" || echo "空,没有启动"

}

RELOADS(){

SERVERPD

MYSQL_PID=`cat $mysqld_pid_file_path`

kill -HUP $MYSQL_PID

[ $? -eq 0 ] && echo "重载配置成功" } || echo "重载配置失败"

}

SERVERPD(){

if [ ! -f $mysqld_pid_file_path ];then

echo "mysql服务没有启动"

exit 8

fi

}

case $1 in

start)

STARTS ;;

stop)

STOPS ;;

status)

STATUSS ;;

restart)

STOPS

STARTS ;;

reload)

RELOADS ;;

*)

echo "请使用: start | stop | status | restart | reload"

esac

时间: 2024-08-05 07:08:05

mysql,mairadb启动脚本的相关文章

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 -

mysql服务启动脚本详解

1 #!/bin/sh 2 # Copyright Abandoned 1996 TCX DataKonsult AB & Monty Program KB & Detron HB 3 # This file is public domain and comes with NO WARRANTY of any kind 4 5 # MySQL daemon start/stop script. 6 7 # Usually this is put in /etc/init.d (at lea

[shell脚本] mysql服务启动脚本

服务启动脚本(初始化.启动.登录) #!/bin/bash export PID=/usr/local/nestdb_master/bin/mysqld export PASSWORD=123456 function status() { ps -ef | grep -v 'grep'|grep ${PID} >/dev/null if [ $? -eq 0 ]; then echo "running" return 0 else echo "not running&q

MySQL服务启动脚本

#!/bin/sh# chkconfig: 2345 21 60# description: Start mysql and stop mysql scripts.#filename:mydb_start.sh#date:2015-12-13#作者:linuxzkq#version:v1.0 pidfile="/application/data/mysql/test-D.pid"mysql_path="/application/mysql"datadir="

Mysql基础的启动脚本

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

MySQL导入sql脚本中文乱码设置和常用命令

1. use database_name; 2. set names utf8; (或其他需要的编码) 3. source example.sql (sql文件存放路径) Mysql安装目录数据库目录/var/lib/mysql/配置文件/usr/share/mysql(mysql.server命令及配置文件)相关命令/usr/bin(mysqladmin mysqldump等命令)启动脚本/etc/init.d/mysql(启动脚本文件mysql的目录) 系统管理连接MySQL格式: mysq

多实例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 =

通过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