Shell如何操作开发企业级服务启动脚本
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,本文主要给大家介绍Shell如何操作开发企业级服务启动脚本,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下Shell如何操作开发企业级服务启动脚
千家信息网最后更新 2025年11月07日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安全错误
数据库的锁怎样保障安全
国家网络安全政策的优越性
云和恩墨数据库审计
无线网络技术应用题
具有期刊导航功能的数据库有哪些
网络安全技术检测措施
网络安全云概念
锐测等保网络安全工程师
北京中普金服互联网科技集团
手持设备抄表软件开发
网络安全运维服务合同模板
江苏刀片服务器云空间
数据库服务器不联网渗透测试
在服务器里怎么安装mysql
嵌入式软件开发常见问题
数据库如何还原.psc
数据库每条数据多大
aisino数据库更新失败
酒店网络技术安全保护
强制断开某个数据库用户的进程
对象保存到数据库
安徽华为服务器维修维保哪家好
网络安全技能实训
东营智慧社区软件开发哪儿好
h3c 服务器bmc默认密码
网络安全与信息化的核心要素
宝山区品牌网络技术管理方法
新疆淘金谷 电脑版 游戏服务器
软件开发应届简历模板
昆明服务器上门回收价格
数据库技术及应用期末考试答案