一. 需求

不知道有多少人会像我一样,会把MongoDB用在客户端应用上,不过我感觉应该非常少。于是,我就希望能在客户机器上尽可能简单方便的安装MongoDB。所以以下是我的一些取舍:

1. 我只使用32位版本,因为32位的数据库能跑在64位的机器上,反之则不行。当然我知道2GB的限制

2. 不做安装程序,直接使用bat脚本,因为简单

3. 关于数据库安装路径,默认安装在D盘,如果用户没有D盘,则安装在C盘。 文件夹名字是MongoDB

4. 如果数据库已经安装过,则本程序给出提示

5.全部采用默认配置,单机,27017的默认端口,一切为了简单

二.bat程序脚本

基本步骤是: 确定安装位置,将Mongodb的可执行文件拷贝到对应的目录下(如果不存在则创建)

查看MongoDB服务是否已经存在,如果不存在,新建服务

结束

具体的bat代码可见下面的:

@echo off
title MongoDB数据库自动安装脚本 echo 请使用管理员权限执行本脚本 set disk=C if exist D:\nul set disk=D if not exist "%disk%:\MongoDB\" md %disk%:\MongoDB\
set name=bin if not exist "%disk%:\MongoDB\%name%\" md "%disk%:\MongoDB\%name%\" cd /d %~dp0 set STR1= %~dp0 set STR2=%STR1:~0,-1% echo %STR1% ==^> %STR2% xcopy %STR2% %disk%:\MongoDB\%name%\ /c/q/e/y if not exist "%disk%:\MongoDB\data\" md "%disk%:\MongoDB\data\" %~d0
%disk%:\MongoDB\%name%\mongod --install --serviceName MongoDB --serviceDisplayName MongoDB --logpath %disk%:\MongoDB.Log --dbpath %disk%:\MongoDB\data --directoryperdb @echo off
for /f "skip=3 tokens=4" %%i in ('sc query MongoDB') do set "zt=%%i" &goto :next :next
if /i "%zt%"=="RUNNING" (
echo 已经发现该服务在运行,已经安装成功 ) else (
echo 该服务现在处理停止状态,将进行启动
net start MongoDB
)
pause

三. 其他

1.  其实如果为了简单和小巧,那么下载的mongodb文件夹中,只有Mongod.exe是需要的,其他工具只在特殊情况下才用得着。为了减小体积,我只提供了mongod.exe。 如果有更新的版本,你只需要把bat文件拷贝到可执行文件夹中即可

2.  里面很多bat的语法和技巧,可以用在其他地方

3.  本文只是作者睡觉前想贡献社会随便写的,所以文章价值不高,这个我知道,所以你也不用说。我也不会放在首页的。

4.  其实完全可以判断32/64位系统,再分类安装的,但咱不是懒么

5.  它真的可以一键安装,我已经用在真实环境中了,很好用。如果你对路径设置不满意,可以选择修改bat。

6.  文件下载见附件。解压,然后用管理员模式运行bat即可。

MongoDB一键式安装工具的更多相关文章

  1. 一键式Spring集成工具 Spring Boot

    最近公司使用Spring boot进行开发,稍微了解一下,不过自我感觉把集中式配置applicate.properties搞明白,注解用过Spring MVC的boot绝对没问题的 比如拦截器:@As ...

  2. azure 云上MySQL最新版本 MySQL5.7.11 批量自动化一键式安装 (转)

    --背景云端 以前都喜欢了源码安装mysql,总觉得源码是高大上的事情,不过源码也需要时间,特别是make的时候,如果磁盘和cpu差的话,时间很长很长,在虚拟机上安装mysql尤其甚慢了. 现在业务发 ...

  3. Visual Studio 2012 Web一键式发布

    按照保哥的介绍,尝试“ Web一键式发布”,但总是出错,主要就是404错误,不知道是什么原因.默认的 Web一键式发布是在C:\inetpub\wwwroot目录下,难道是权限问题?折腾N久无果.好吧 ...

  4. Azure Site Recovery 通过一键式流程将虚拟机故障转移至 Azure虚拟机

    Ruturaj Dhekane 云 + Enterprise 项目经理  现在,AzureSite Recovery可以通过其"灾难恢复至 Azure"功能保护您的工作负荷,并 ...

  5. 无线网破解软件|一键式破解无线网|BT17软件包下载[笔记本+软件就行]

    从新版BT17发布到现在已经有一段时间,谢谢大家的一直来的关注.现在给大家讲解一下无线网破解问题,告诉 大家如何一键式破解WPA,WPA2,AES.Tkip等加密方式以及新版BT17软件包的下载地址. ...

  6. C# 制作Java +Mysql+Tomcat 环境安装程序,一键式安装

    原文:C# 制作Java +Mysql+Tomcat 环境安装程序,一键式安装 要求: JDK.Mysql.Tomcat三者制作成一个安装包, 不能单独安装,安装过程不显示三者的界面, 安装完成要配置 ...

  7. 如何:使用 Visual Studio 中的一键式发布来部署 Web 应用程序项目

    原文: 如何:使用 Visual Studio 中的一键式发布来部署 Web 应用程序项目 本主题介绍如何在以下产品中使用 一键式发布 发布(部署)Web 应用程序项目: Visual Studio ...

  8. AdPlayBanner:功能丰富、一键式使用的图片轮播插件

    AdPlayBanner:功能丰富.一键式使用的图片轮播插件 AdPlayBanner是一个Android平台基于ViewPager实现的轮播图插件,主要用以自动或者手动地播放轮播图,提供了Fresc ...

  9. 自动化运维(2)之一键式单实例安装MySQL

    ZMySQLAutoTools文档 目标:自动化构建部署MySQL数据库,一键式单实例mysql安装,备份,监控,主从集群部署等.以及jdk,tomcat,nginx等基础中间件的自动化部署安装及运维 ...

随机推荐

  1. LINUX下编译安装PHP各种报错大集合

    本文为大家整理汇总了一些linux下编译安装php各种报错大集合 ,感兴趣的同学参考下. nginx1.6.2-mysql5.5.32二进制,php安装报错解决: 123456 [root@clien ...

  2. TreeSet

    一.TreeSet中的元素比较有两种方式 1.定义一个类,实现Comparable接口  复写的是comparato方法 2.定义一个类,实现Comparator接口,覆盖compara方法(此种方法 ...

  3. phpcms 服务器安全认证错误

    本人将图片的js.images.css路径转移到CDN上了,上传附件的时候就出现了 “服务器安全认证错误”的提示.   找到文件 D:\wamp\www\phpcms\phpcms\modules\a ...

  4. html中的图像动态加载问题

    首先要说明下文档加载完成是什么概念 一个页面http请求访问时,浏览器会将它的html文件内容请求到本地解析,从窗口打开时开始解析这个document,页面初始的html结构和里面的文字等内容加载完成 ...

  5. web预设模块化

  6. VS调试程序时一闪而过的问题-解决方法(网上搜集)

    在VS2012里的控制台应用程序在运行时,结果画面一闪而过,不管是用F5 还是用Ctrl + F5都是一样,导致无法看到结果. 网上有不少的办法,说是都是在程序最后加一个要程序暂停的语句或从控制台上获 ...

  7. 自己写的几个android自定义组件

    http://www.see-source.com/androidwidget/list.html 多多指点,尤其是自定义组件的适配问题,希望能有更好的方法

  8. SqlServer游标简介

    游标实例:             Declare MyCusror Cursor Scroll For Select * From Master_Goods Order By GoodsID Ope ...

  9. sublime Text3及其插件的使用

    参考:Sublime Text 3 新手上路:必要的安裝.設定與基本使用教學 Sublime Text 相信是許多開發人員人心目中的最愛,然而對一個 Sublime Text 3 的新手來說,有什麼是 ...

  10. Linux下如何自己编译源代码(制作成可以安装的.deb文件)

    以tree实用程序(以树型结构获取目录树)为例,介绍Ubuntu中如何管理源码包,包括查询,获取,编译源码包,直至安装.   1) 在获取源码包之前,确保在软件源配置文件/etc/apt/source ...