本文主要给大家介绍壳如何操作开发企业级服务启动脚本,文章内容都是笔者用心摘选和编辑的,具有一定的针对性、对大家的参考意义还是比较大的、下面跟笔者一起了解下壳如何操作开发企业级服务启动脚本吧只
说明:
MySQL启动命令为:
/bin/sh mysqld_safe ——pid文件=$ mysqld_pid_file_path 2祝辞,1,在/dev/null ,
停止命令逻辑脚本为:
mysqld_pid=癱at “mysqld_pid_file_path"美元;” if (kill 0, mysqld_pid 美元;2在/dev/null) 然后才能 ,,,kill mysqld_pid美元 ,,sleep 2 fi
请完成MySQL启动脚本的编写,并实现可以使用chkconfig配置开机自启动。
要求:用函数,例语句,如果语句等实现。
解答:此题的技巧适合绝大多数启动脚本,例如:rsync, nginx等,仅以MySQL为例介绍思路。
简单,易用,高效、专业
# !/bin/bash #,chkconfig:, 2345, 64, 36 #,描述:MySQL 启动 #作者:卑劣 #,博客:http://oldboy.blog.51cto.com #,时间:2017 - 07 - 07 - 09:24:34 #,名字:mysqld #版本:V1.0 #,描述:却;能够is a test 脚本。 [,-f /etc/摆在functions ),,,, source /etc/摆在功能 bindir=?应用程序/mysql/bin" datadir=?应用程序/mysql/data" mysqld_pid_file_path=?应用程序/mysql/主机名的.pid"=路径“/sbin:/usr/sbin:/bin:/usr/bin: basedir/bin"美元,#此步对开机启动及定时启动及其关键。 export 路径 return_value=https://www.yisu.com/zixun/0 #锁目录。 lockdir='/var/锁定/中高' lock_file_path=" $ lockdir/mysql " log_success_msg () { 回声”成功!$ @“#注意函数的缩进,下同,也是专业的表现,可放到函数里。 } log_failure_msg () { 回声”错误!$ @” } #开始函数 start () { #启动守护进程 回声“启动MySQL” 如果测试- x $ bindir/mysqld_safe #启动文件是否可执行。 然后 $ bindir/mysqld_safe datadir=" $ datadir "——pid文件=" $ mysqld_pid_file_path ">/dev/null & return_value=$ ?#是否处理好返回值是区别脚本是否专业规范的关键。 睡眠2 #让CentOS锁 如果测试- w " $ lockdir " #锁目录是否可写。 然后 触摸“lock_file_path美元”#创建锁文件。 fi 退出return_value美元 其他的 log_failure_msg”找不到MySQL服务器(bindir美元/mysqld_safe)” fi } #停止函数 stop () { 如果测试- s " $ mysqld_pid_file_path " #是否PID文件存在并大小大于0。 然后 mysqld_pid='猫“mysqld_pid_file_path美元” 如果(杀死0美元mysqld_pid 2>/dev/null) #检查PID对应的进程是否存在。 然后 回声“关闭MySQL” 杀死mysqld_pid #美元不能带9,否则后果自负。 return_value=$ ? 睡眠2 其他的 log_failure_msg“MySQL服务器进程# $ mysqld_pid不是跑!” rm - f“mysqld_pid_file_path美元” fi #删除锁卑劣的CentOS的 如果测试- f“lock_file_path美元” 然后 rm - f“lock_file_path美元” fi 退出return_value美元 其他的 log_failure_msg“MySQL服务器PID文件无法找到!” fi } “1美元” 开始) 开始 ;; 停止) 停止 ;; 重启) 如果$ 0停止;然后 $ 0开始 其他的 log_failure_msg”未能阻止运行的服务器,所以拒绝尝试开始。” 出口1 fi ;; *) 回声”用法:$ 0{启动|停止|重启}” 出口1 esac 退出return_value #美元是否处理好返回值是区别脚本是否专业规范的关键。
看完以上关于壳如何操作开发企业级服务启动脚本,很多读者朋友肯定多少有一定的了解,如需获取更多的行业知识信息,可以持续关注我们的行业资讯栏目的。