MongoDB启动后隐藏CMD窗口,实现后台运行(非服务启动)
MongoDB的Win安装包实际上是一个绿色程序,下载解压后直接在命令行下面可实现启动。
默认参数启动:
D:\xp\mongodb\bin\mongod.exe
这样虽然能正常工作,但是在MongoDB运行时始终显示命令行窗口确实有点不方便。想到将MongoDB注册为服务进行运行,运行mongod.exe -h可以查到相关安装参数命令(–install),试一下安装成功,但是运行时总是提示“1053错误”,试了几个参数配置始终无法正常启动,只能另想办法了。
查资料有人利用VBS调用批处理文件实现启动,试了一下确实可以。主要是利用“Wscript.Shell”的’run’命令和’vbhide’参数来执行命令和隐藏窗口,停止进程使用’taskkill’命令。优化了一下该方案直接用run命令执行启动和关闭进程,另外采用taskkill强制关闭mongodb.exe进程会导致MongoDB非法关闭,无法重新启动,如无数据丢失情况直接删除数据文件下面的“mongod.lock”文件即可,测试环境没什么太大问题,只不过要注意保证MongoDB关闭时没有数据活动即可。
启动进程脚本:
Set ws = CreateObject("Wscript.Shell") ws.run "cmd /c del D:\data\db\mongod.lock" , vbhide ws.run "cmd /c D:\XP\mongodb\bin\mongod.exe" ,vbhide
停止进程脚本: Set ws = CreateObject("Wscript.Shell") ws.run "cmd /c taskkill /f /t /im mongod.exe" ,vbhide
参考资料:
http://www.fushanlang.com/blog/install-windows-mongodb-302/