关于服务器定时重启并利用批处理加载相关服务的完整方案
来源:互联网 发布:淘宝能赚钱吗 编辑:程序博客网 时间:2024/06/07 00:22
本文原创地址:http://blog.csdn.net/johnsuna/article/details/7403774
我们经常因为各种原因,需要对服务器进行重启。有时我们会遇到要将某些程序在服务器重启后再加载自动运行,但它们的运行又需要等待服务器重启完成之后一段时间方可加载。一个典型的例子是:我们希望某个程序(比如:某Tomcat程序)由服务器重启后自动运行,但该程序又需要使用SQL SERVER数据库,而数据库的启动是在服务器启动一段时间后才能完成。现在的问题是:如果我们在服务器启动后马上运行该程序时,数据库还根本没有启动起来!
如何解决这种问题呢?
1、服务器的定时重启
重启的办法很多,有使用shutdown.exe的,有使用iisreset的。
比如:
(1)使用以下代码可以将重启服务每周一、二、三、四、五、六、日早上5点30分加载运行:
at 5:30 /every:M,T,W,Th,F,S,Su shutdown.exe /r
完整代码:
@echo off
echo ┌────────────────────────┐
echo │Windows服务器定时重启
echo │------------------------------------------------│
echo │平台:w2k/w2k3测试通过
echo └────────────────────────┘
echo 正在设置……
at 5:30 /every:M,T,W,Th,F,S,Su shutdown.exe /r
echo 设置完成,请按任意键退出……
pause>nul
(2)还可以使用下面关键代码:
c:\windows\system32\iisreset.exe /reboot
在任务计划中加上相关任务即可,这都不是什么大问题。
2、服务器启动后加载的服务或运行程序
以下阐述的是如何加载某些需要在服务器启动后自动启用的服务或应用程序的问题,比如:我们可能需要在SQL SERVER启动后才能再运行我们的一些程序。这时,采用普通的办法就不灵了。
下面代码中的几个程序(分别是Sender.cmd,startWebLogic.cmd,startPublished.bat,mp-import.bat),都是需要依次启用的,由于程序的启用需要时间,所以,分别使用了不同的时间间隔来启动它们。
其中,Sender.cmd的运行依赖于数据库的正常运行,所以,在此之前使用了ping -n 150 -w 500 0.0.0.1>nul的关键代码以做延时之用。
以下为完整的代码(c:\autorun.bat):
rem ----------------代码开始------------------
rem @echo off
ping -n 150 -w 500 0.0.0.1>nul
d:
cd\transa\Transa-Sender
start "" "d:\transa\Transa-Sender\Sender.cmd"
ping -n 8 -w 500 0.0.0.1>nul
d:
cd\beac\epaper
start "" "d:\beac\epaper\startWebLogic.cmd"
ping -n 10 -w 500 0.0.0.1>nul
d:
cd\publishedold
start "" "d:\publishedold\startPublished.bat"
ping -n 6 -w 500 0.0.0.1>nul
d:
cd\beac\epaper\applications\mp\import2mp
start "" "d:\beac\epaper\applications\mp\import2mp\mp-import.bat"
rem --代码结束--
上面“c:\autorun.bat”的相关内容根据你自己的需要进行编写,完成后请在定时任务计划中加载,并选择服务器启动时运行。
有人在想:为什么还需要d:,cd\transa\Transa-Sender等命令行,而不直接使用start "" "d:\transa\Transa-Sender\Sender.cmd"呢?原因是,Sender.cmd里面还有关于路径的相关命令,如果不在其当前目录下运行,某些程序就无法正常使用。
关于ping -n 150 -w 500 0.0.0.1>nul这种延时方法,你可以百度搜索一下,此处不讲解了。
3、总结
使用定时任务计划与shutdown.exe、iisreset/reboot完成服务器定时重启,同时服务器启动时加载批处理程序(如上述c:\autorun.bat),该处理程序中使用“ping -n 延时时间 ……”等作延时处理,再使用start "" "完整的程序路径名称"加载运行的相关程序或服务。
- 关于服务器定时重启并利用批处理加载相关服务的完整方案
- 关于服务器定时重启并利用批处理加载相关服务的完整方案
- 定时重启domino的批处理程序
- 利用任务计划定时重启服务器
- 重启adb服务的批处理
- Tomcat定时重启方案
- adb 定时重启手机批处理bat
- 定时重启数据库服务
- 关于linux服务器进程监控及自动重启的简单方案
- 关于linux服务器进程监控及自动重启的简单方案
- 如何定时重启服务器
- Windows下让Tomcat6定时重启服务的方法
- 定时自动重启IIS和定时重启服务器
- 定时 监控 shell 服务宕机自动重启,并发送短信通知
- 设置IIS服务器定时自动重启的方法
- 最好用的服务器定时自动关机或重启软件
- 每晚定时重启IIS和数据库服务可节省服务器资源
- shell脚本:定时重启tomcat服务
- Java中DatabaseMetaData 元数据信息
- java调用oracle基本编程
- 移植u-boot-2010.09到S3C2440(二)——ARM汇编中的LDR及ADR的区别及其在U-BOOT中的应用 (SDRAM)
- python中时间的相关处理
- 软件大赛题目----(第十四个)十六进制转换为三进制
- 关于服务器定时重启并利用批处理加载相关服务的完整方案
- 第七周任务一:求时分秒(含有静态数据成员和成员函数的Time类:类中所有的对象共有的数据)
- java字符串类型转换
- 排序算法----分配排序(箱排序,基数排序以及各种排序比较)
- java进制转化
- 外观设计模型
- java数据类型的MAX,MIN,SIZE
- photoshop中的快速选择工具
- 自定义异常(除数是负数)