#!/bin/bash

# chkconfig: 2345 64 36 #配置系统自启动

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

##############################################################

# File Name: mysqld

# Version: V1.0

# Author: aning

# Organization: www.ningfg.cn

# Created Time : 2018-06-05 08:58:19

##############################################################

#引入系统函数库

. /etc/init.d/functions

#基础路径定义

basedir='/application/mysql'

bindir='/application/mysql/bin'

lockdir='/var/lock/subsys'

lock_file_path="$lockdir/mysql"

mysqld_pid_file_path='$basedir/data/`uname -n`.pid'

#成功提示函数

log_success_msg(){

#action为特殊的提示函数,$@为所有参数。

action "SUCCESS! $@" /bin/true

}

#失败提示函数

log_failure_msg(){

action "ERROR! $@" /bin/false

}

#mysql启动函数

start(){

echo $"Starting MySQL"

#测试mysqld_safe是否可执行

if test -x $bindir/mysqld_safe

then

#后台执行启动mysql命令

$bindir/mysqld_safe &>/dev/null &

#获取返回值

retval=$?

#判断返回值是否为0

if [ $retval -eq 0 ]

then

#调用成功提示函数。

log_success_msg "mysql Startup"

if test -w "$lockdir" #判断锁目录是否可写。

then

touch "$lock_file_path" #创建锁文件。

fi

return $retval #给返回值是专业的表现。

else

log_failure_msg "MySQL Startup" #调用失败函数提示。

return $retval

fi

else

log_failure_msg "Couldn't find MySQL server ($bindir/mysqld_safe)"

fi

}

#停止MySQL函数。

stop(){

#判断mysql pid file大小是否为0。

if test -s "$mysqld_pid_file_path"

then

#读取pidfile

mysqld_pid=`cat "$mysqld_pid_file_path"`

#判断mysql pid对应的进程是否存在。

if (kill -0 $mysqld_pid 2>/dev/null)

then

echo $"Shutting down MySQL"

kill $mysqld_pid #停止MySQL命令。

retval=$?

if [ $retval -eq 0 ]

then

log_success_msg "MySQL Stop" #调用停止成功函数。

if test -f "$lock_file_path"

then

rm -f "$lock_file_path" #删除锁文件。

fi

return $retval

else

log_failure_msg "MySQL Stop."

return $retval

fi

else

log_failure_msg "MySQL server process mysqld_pid is not running!"

rm "$mysqld_pid_file_path"

fi

else

log_failure_msg "MySQL server PID file is null or not exist!"

fi

}

#接收传参判断并执行相应函数。

case "$1" in

start)

start

retval=$?

;;

stop)

stop

retval=$?

;;

restart)

stop

sleep 2 #这里很重要,要休息一下。

start

retval=$?

;;

*)

echo $"Usage:$0 {start|stop|restart}"

exit 2

esac

exit $retval #执行脚本后,有返回值才更专业。

mysql上线脚本规范_专业规范的MySQL启动脚本相关推荐

  1. mysql数据库开发规范_开发规范——MYSQL数据库

    数据库规范 这里主要针对mysql数据库,其他数据库也可以借鉴 表 1.统一使用表命名规范 表名规范:分层+项目名缩写+实体名(小写)[+下划线+实体名+rel] 例子 表名:bc_user 分层: ...

  2. c++ doxygen 注释规范_[代码规范]Go语言编码规范指导

    本规范旨在为日常Go项目开发提供一个代码的规范指导,方便团队形成一个统一的代码风格,提高代码的可读性,规范性和统一性.本规范将从命名规范,注释规范,代码风格和 Go 语言提供的常用的工具这几个方面做一 ...

  3. mysql qps如何查看_一款查看mysql QPS的脚本

    本脚本黏贴就可以使用绝对不坑人!!! (此脚本来源如一位大神网友) 执行效果: 脚本: #!/bin/bash PW=Eqipay20150504@ mysqladmin -P3306 -uroot ...

  4. mysql的实验环境_第04 章 MYSQL实验环境创建

    第04 章 MYSQL实验环境创建 一.下载MY https://dev.mysql.com/downloads/file/?id=476476 1.1 Oracle http://www.oracl ...

  5. mysql 数据库字符集转换_字符集介绍及mysql数据库编码转换

    一.字符集介绍: 1.ASCII ASCII是英文American Standard Code for Information Interchange的缩写,美国标准信息交换代码是由美国国家标准学会( ...

  6. mysql 查询编码转换_字符集介绍及mysql数据库编码转换

    一.字符集介绍: 1.ASCII ASCII是英文American Standard Code for Information Interchange的缩写,美国标准信息交换代码是由美国国家标准学会( ...

  7. mysql事件探查器_【干货】Mysql的事件探查器-之Mysql-Proxy代理实战一(安装部署与实战sql拦截与性能监控)...

    1:资料参考 https://blog.csdn.net/coldljy/article/details/3168906 https://www.cnblogs.com/jwentest/p/8552 ...

  8. MySQL数据库https接口_第三章 mysql 数据库接口程序以及SQL语句操作

    mysql  数据库接口程序以及SQL语句操作 用于管理数据库: 命令接口自带命令 DDL:数据定义语言(create drop ) DCL: 数据控制语言(grant revoke) DML: 数据 ...

  9. mysql读写分离实现_脱离开发:Mysql读写分离方案之一

    案例:Mysql读写分离 技能目标: · 熟悉MySQL主从复制原理 · 熟悉MySQL读写分离原理 · 学会配置MySQL主从复制 · 学会配置MySQL读写分离 6.1 案例分析 6.1.1 案例 ...

最新文章

  1. C++ 笔记(21)— 处理文件(文件打开、关闭、读取、写入)
  2. Jquery zTree实例
  3. Spring Boot 2.x基础教程:使用Swagger2构建强大的API文档
  4. KMP字符串模式匹配详解
  5. 每天一香蕉,长成螺纹钢
  6. iOS Hacker 动态库 dylib 注入
  7. 五大板块(4)——链表
  8. log4j 控制台和文件输出乱码问题解决
  9. Apache Flink 进阶入门(二):Time 深度解析
  10. http协议的各类状态码
  11. 关于oracle with as用法
  12. 2017年最流行的5个php开发框架视频教程推荐
  13. Android widget开发有感
  14. JNA (Java 本地访问)理论概述与入门
  15. vivo X9L的usb调试模式在哪里,开启vivo X9Lusb调试模式的流程
  16. WebService调用第三方服务(中英文翻译)
  17. LookAhead优化器方法
  18. 老大,不好了,内存泄漏了!
  19. 计算机图形学实验二交互式绘制多边形
  20. mybatis 9-23

热门文章

  1. HIVE Leaning
  2. APP软件与H5的差别
  3. Python入门机器学习
  4. python捕获异常 主动抛出异常
  5. Linux玩ps3游戏,手把手教你用PC笔记本畅玩PS3主机游戏教程
  6. Java 已死?听听这些重量级大咖是怎么说的
  7. 市场营销领域的眼动研究
  8. tableView在iPad上不能铺满屏幕
  9. matlab基础学习记录之阶跃函数、单矩形脉冲函数、周期矩形脉冲函数的构造与画图
  10. 解决git文件夹不显示图标问题