免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 12598 | 回复: 15
打印 上一主题 下一主题

[系统管理] centos有没有办法设置某些服务开机后延时启动 [复制链接]

论坛徽章:
1
数据库技术版块每日发帖之星
日期:2016-01-01 06:20:00
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2014-08-18 14:38 |只看该作者 |倒序浏览
有些jsp程序配置的数据库连接,要求tomcat启动时mysql数据库必须是已经启动状态,否则启动后就一直报错。即使mysql服务后面起好了,也不能正常打开。
但是我试了在服务器重启后,mysql服务是在tomcat服务之后启动的,所以上面好多jsp网站会因为数据库无法连接而打不开。
tomcat服务名称为改过,是以jsp开头的,不知道系统是不是默认以字母顺序启动各个服务的。

请问有没有办法指定让a服务在b服务之后启动,或者a服务在系统启动之后过几分钟再启动呢?

论坛徽章:
381
CU十二周年纪念徽章
日期:2014-01-04 22:46:58CU大牛徽章
日期:2013-03-13 15:32:35CU大牛徽章
日期:2013-03-13 15:38:15CU大牛徽章
日期:2013-03-13 15:38:52CU大牛徽章
日期:2013-03-14 14:08:55CU大牛徽章
日期:2013-04-17 11:17:19CU大牛徽章
日期:2013-04-17 11:17:32CU大牛徽章
日期:2013-04-17 11:17:37CU大牛徽章
日期:2013-04-17 11:17:42CU大牛徽章
日期:2013-04-17 11:17:47CU大牛徽章
日期:2013-04-17 11:17:52CU大牛徽章
日期:2013-04-17 11:17:56
2 [报告]
发表于 2014-08-18 14:42 |只看该作者
本帖最后由 chenyx 于 2014-08-18 14:43 编辑

你什么系统?
红帽系列的话,检查下tomcat和mysqld启动脚本文件头里面chkconfig:后面的数字,比如sshd里面的就是 chkconfig: 2345 55 25
那个55就是启动顺序,你调整下,将tomcat里的调到mysql大些,然后先chkconfig del tomcat,然后再add下tomcat服务

论坛徽章:
1
数据库技术版块每日发帖之星
日期:2016-01-01 06:20:00
3 [报告]
发表于 2014-08-18 15:04 |只看该作者
好的,原来是这样,谢谢了,我试试

论坛徽章:
1
数据库技术版块每日发帖之星
日期:2016-01-01 06:20:00
4 [报告]
发表于 2014-08-18 15:13 |只看该作者
我看了下mysqld的是
# chkconfig: - 64 36

tomcat的是
# chkconfig: 2345 85 15

好像优先级已经是mysql高了,不过我确定还是有tomcat是在mysql前启动的情况。这个是什么原因呢。除了修改启动顺序,有没有办法再做到开机后让服务启动延迟指定秒数呢

论坛徽章:
33
荣誉会员
日期:2011-11-23 16:44:17天秤座
日期:2014-08-26 16:18:20天秤座
日期:2014-08-29 10:12:18丑牛
日期:2014-08-29 16:06:45丑牛
日期:2014-09-03 10:28:58射手座
日期:2014-09-03 16:01:17寅虎
日期:2014-09-11 14:24:21天蝎座
日期:2014-09-17 08:33:55IT运维版块每日发帖之星
日期:2016-04-17 06:23:27操作系统版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-24 06:20:0015-16赛季CBA联赛之天津
日期:2016-05-06 12:46:59
5 [报告]
发表于 2014-08-18 16:39 |只看该作者
ls /etc/rcX.d | egrep 'mysql|jsp'

前面的数字就是启动的顺序. rcsysinit 是按这个顺序来一个个执行的.

其中 X 是当前的运行级别, 多少服务器 为 3 .

论坛徽章:
1
数据库技术版块每日发帖之星
日期:2016-01-01 06:20:00
6 [报告]
发表于 2014-08-20 08:31 |只看该作者
我看了一下,确实都是mysqld在前面的,不知道是不是因为虽然mysqld先启动,但是它启动时间比较长,在tomcat服务之后才启动。
所以不知道除了设置优先顺序以外还有没有延时启动的设置。

论坛徽章:
12
技术图书徽章
日期:2014-07-11 16:27:5215-16赛季CBA联赛之山西
日期:2016-01-08 16:10:11操作系统版块每日发帖之星
日期:2015-08-01 06:20:002015亚冠之武里南联
日期:2015-06-11 01:12:162015年亚洲杯之阿联酋
日期:2015-03-20 11:41:462015年亚洲杯纪念徽章
日期:2015-03-18 18:08:422015年辞旧岁徽章
日期:2015-03-03 16:54:15丑牛
日期:2015-01-10 22:23:32天秤座
日期:2014-08-20 15:53:35水瓶座
日期:2014-08-11 12:08:51午马
日期:2014-07-23 23:03:38IT运维版块每日发帖之星
日期:2016-02-18 06:20:00
7 [报告]
发表于 2014-08-20 09:18 |只看该作者
本帖最后由 phanx 于 2014-08-20 09:19 编辑

回复 6# number321


    改tomcat的启动脚本,加入判断,检查mysqld状态正常,可以用客户端正常连接后,再启动tomcat。
    要是想偷懒,直接加入一个sleep xx秒。

论坛徽章:
381
CU十二周年纪念徽章
日期:2014-01-04 22:46:58CU大牛徽章
日期:2013-03-13 15:32:35CU大牛徽章
日期:2013-03-13 15:38:15CU大牛徽章
日期:2013-03-13 15:38:52CU大牛徽章
日期:2013-03-14 14:08:55CU大牛徽章
日期:2013-04-17 11:17:19CU大牛徽章
日期:2013-04-17 11:17:32CU大牛徽章
日期:2013-04-17 11:17:37CU大牛徽章
日期:2013-04-17 11:17:42CU大牛徽章
日期:2013-04-17 11:17:47CU大牛徽章
日期:2013-04-17 11:17:52CU大牛徽章
日期:2013-04-17 11:17:56
8 [报告]
发表于 2014-08-20 09:46 |只看该作者
奇怪了,按照启动顺序,tomcat肯定会在mysql之后启动的,怎么到了tomcat启动的时候,mysql还没启动完成呢,费解

论坛徽章:
62
洛杉矶湖人
日期:2015-02-10 09:56:11黑曼巴
日期:2016-06-28 17:41:282015-2016NBA季后赛纪念章
日期:2016-06-28 17:41:282016猴年福章徽章
日期:2016-02-18 15:30:34圣安东尼奥马刺
日期:2015-05-04 22:46:00菠菜神灯
日期:2015-05-04 22:35:07新奥尔良黄蜂
日期:2015-03-17 13:54:52明尼苏达森林狼
日期:2015-03-16 21:51:15萨克拉门托国王
日期:2015-03-02 16:10:58华盛顿奇才
日期:2015-03-02 16:10:58迈阿密热火
日期:2015-03-02 16:10:582016科比退役纪念章
日期:2016-06-28 17:41:28
9 [报告]
发表于 2014-08-20 09:54 |只看该作者
看看               

论坛徽章:
0
10 [报告]
发表于 2014-08-20 19:07 |只看该作者
写个启动脚本,循环测试mysql数据库可以打开以后再启动后面的服务,我的程序也有类似的需求,就这么干的
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP