一、背景:
月初进行了期末考试很荣幸能够参加到了考试系统维护中(详情请阅读:《那些年我们一起参加的活动:15年上半年考试系统维护总结》)!主要负责服务器维护,在维护期间对Mongodb相逢。
Mongodb什么东东???如果有点晕的童鞋请猛戳Me科普一下哈!
Mongodb优势:由于它的存储结构不同于传统的数据库使得通常它用来存储大的文件,如:照片、视频、音频等。(参阅:为什么Mongodb适合大数据存储)
正是由于这些优势使得考试系统选择用它来存放英语听力材料、VB 考试图片、动物学考试的图片;另外基础库中学生的头像。
二、安装及运行:
1)安装步骤:
①首先从Mongodb官网下载相对应安装包!
②配置数据文件:
在D:\mongodb\创建mongo.config文件,如下(并在d:\mongodb目录下新建data,log文件夹)
##数据存储的位置 dbpath=D:\mongodb\data ##所有的输出位置 logpath=D:\mongodb\log\mongo.log ##日志读写操作 diaglog=3
③运行Mongodb Server:
在命令控制行,切换到d:\mongodb\bin目录下,使用命令mongod.exe --config d:\mongdb\mongo.config启动MongoDb Server。
D:\mongodb\bin>mongod.exe --config d:\mongodb\mongo.config
all output going to: D:\mongodb\log\mongo.log
④连接Mongodb:
新开启一个命令行控制窗口,使用mongo.exe连接MongoDB Server.
⑤设置Mongodb为Windows服务:
在命令行控制窗口,加入--install选项可以把MongoDB安装为Windows服务。
D:\mongodb\bin>mongod.exe --config d:\mongodb\mongo.config
启动MongoDB的命令为:net start MongoDB
停止MongODB的命令为:net stop MongoDB
删除MongoDB的命令为:mongod --remove
2)拷贝与安装区别:
Mongodb安装之后一次起来之后(当然可以将相应批处理文件放在开机启动项中)就不用再用批处理文件(例如:c:\MongoDB\mongod.exe-dbpath c:\MongoDB\data pause)一直打开!
如果是从另外一台机子拷贝过来,则批处理文件必须一直运行着!
原因请见下文:Mongodb服务启动否研究
三、Mongodb服务启动否研究:
最后实验发现,如果是安装的Mongodb,会在服务(位置:计算机右键管理)中有如下图所示:
这时Mongodb服务用批处理文件起来后可关闭批处理页面。
如果是只从别的机器上拷贝过来的Mongodb,则服务中无MongoDB这个服务项。用批处理文件起来后不能关闭批处理页面。
这就是传说中的开启Mongodb批处理页面!
四、检测Mongodb是否正常运行:
1)利用http://127.0.0.1(localhost):27017/ 如果起来会出现:一行英文字母。(经常使用可创建成快捷方式)!如下图所示:
2)在DOS中进入安装目录下,然后用mongo命令查看用show dbs 会出来数据库名字或大小后即代表正确进入。如下图所示:
五、可视化工具
来操作Mongodb的工具很多,MongoVUE 还是比较好用的一个,它可以可视化的操作Mongodb,看到里面存储的数据(音频、图片、视频等)!并且可以直接(无需通过程序)往里存放数据,这样做的好处是可以减少往里存入时所写程序但是强烈不建议这样做,因为这是直接操作数据库,太危险!而且如果没有按照相应规范来很容易会出错,如果通过相应的程序来实现的话则就可很好的避免这些。
管理起来特别方便,而且它支持远程访问(一般默认没有密码)!
六、友情提示:
32位系统Mongodb上是只允许数据库大小最大为2G;除去系统必须的库外其实真正用于存储用户数据最大为700M左右。而64位则不受任何限制。因此在251那台32位【备用机器】上,由于英语的听力比较大,所以考完一天需将当天的删除,再传入明天的听力,这大大增加劳动量。
七、小结:
每次参与活动都能从中收获许多,积极主动去参与进去,遇到问题多去做实验,多去和别人交流,这其中有无数的乐趣。就拿研究Mongodb这次来说吧,自己接手服务器也就两天的时间,需要用到Mongodb,自己彻夜去鼓捣,一是因为有压力(鼓捣不好考试就少了一道保障);二是自己确实喜欢鼓捣愿意多接触这些新东西。同时也特别鸣谢251那台老服务器,正是由于它配置低,Mongodb在它身上出现问题最多,也让我在解决问题的时候成长最多。