Shell如何操作开发企业级服务启动脚本
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,本文主要给大家介绍Shell如何操作开发企业级服务启动脚本,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下Shell如何操作开发企业级服务启动脚
千家信息网最后更新 2026年11月01日Shell如何操作开发企业级服务启动脚本
本文主要给大家介绍Shell如何操作开发企业级服务启动脚本,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下Shell如何操作开发企业级服务启动脚本吧。
说明:
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/null) then kill $mysqld_pid sleep 2fi
请完成MySQL启动脚本的编写,并实现可以使用chkconfig配置开机自启动。
要求:用函数,case语句、if语句等实现。

解答:此题的技巧适合绝大多数启动脚本,例如:rsync,nginx等,仅以MySQL为例介绍思路。
简单、易用、高效、专业
#!/bin/bash# chkconfig: 2345 64 36# description: MySQL startup# Author:oldboy# Blog:http://oldboy.blog.51cto.com# Time:2017-07-07 09:24:34# Name:mysqld# Version:V1.0# Description:This is a test script.[ -f /etc/init.d/functions ] && source /etc/init.d/functionsbindir="/application/mysql/bin"datadir="/application/mysql/data"mysqld_pid_file_path="/application/mysql/`hostname`.pid"PATH="/sbin:/usr/sbin:/bin:/usr/bin:$basedir/bin" #此步对开机启动及定时启动及其关键。export PATHreturn_value=0# Lock directory.lockdir='/var/lock/subsys'lock_file_path="$lockdir/mysql"log_success_msg(){ echo " SUCCESS! $@" # 注意函数的缩进,下同,也是专业的表现,可放到functions里。} log_failure_msg(){ echo " ERROR! $@"} # Start Funcstart(){ # Start daemon echo "Starting MySQL" if test -x $bindir/mysqld_safe # 启动文件是否可执行。 then $bindir/mysqld_safe --datadir="$datadir" --pid-file="$mysqld_pid_file_path" >/dev/null & return_value=$? # 是否处理好返回值是区别脚本是否专业规范的关键。 sleep 2 # Make lock for CentOS if test -w "$lockdir" # 锁目录是否可写。 then touch "$lock_file_path" # 创建锁文件。 fi exit $return_value else log_failure_msg "Couldn't find MySQL server ($bindir/mysqld_safe)" fi}# Stop Funcstop(){ if test -s "$mysqld_pid_file_path" # 是否PID文件存在并大小大于0。 then mysqld_pid=`cat "$mysqld_pid_file_path"` if (kill -0 $mysqld_pid 2>/dev/null) # 检查PID对应的进程是否存在。 then echo "Shutting down MySQL" kill $mysqld_pid # 不能带-9,否则后果自负。 return_value=$? sleep 2 else log_failure_msg "MySQL server process #$mysqld_pid is not running!" rm -f "$mysqld_pid_file_path" fi # Delete lock for Oldboy's CentOS if test -f "$lock_file_path" then rm -f "$lock_file_path" fi exit $return_value else log_failure_msg "MySQL server PID file could not be found!" fi}case "$1" in start) start ;; stop) stop ;; restart) if $0 stop; then $0 start else log_failure_msg "Failed to stop running server, so refusing to try to start." exit 1 fi ;; *) echo "Usage: $0 {start|stop|restart}" exit 1esacexit $return_value #是否处理好返回值是区别脚本是否专业规范的关键。看完以上关于Shell如何操作开发企业级服务启动脚本,很多读者朋友肯定多少有一定的了解,如需获取更多的行业知识信息 ,可以持续关注我们的行业资讯栏目的。
脚本
专业
企业
开发
服务
关键
文件
函数
命令
笔者
行业
语句
处理
信息
内容
后果
大小
思路
意义
技巧
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
手磨咖啡
互联网加科技
互联网与科技金融数据
互联网 科技公司
互联网科技集团
天津摩尔互联网科技
互联网科技公司的市场部门
顶级互联网科技成果有哪些
福建科技产业互联网发展
互联网科技扶贫时间
国大互联网教育科技有限公司工作
深圳市罗太互联网科技有限公司
佛山市拉法互联网科技有限公司
互联网相关科技技术
从那以后互联网科技有限公司
图游互联网科技
江苏互联网科技小贷
互联网时代科技型公司的机会
北京瑞云互联网科技有限公司
前海云享互联网科技
互联网络科技
互联网与新科技
互联网科技公司名称
多迪互联网科技有限公司
安控科技rtu产品工业互联网
想开互联网科技公司怎么样
互联网科技创新的路径
上海互联网科技公司ppt
互联网科技创新创业项目
北京品多多互联网科技有限公司