一、背景:
月初进行了期末考试非常荣幸可以參加到了考试系统维护中(详情请阅读:《那些年我们一起參加的活动:15年上半年考试系统维护总结》)!主要负责server维护,在维护期间对Mongodb相逢。
Mongodb什么东东??? url=XH5AR-uophXW0MzSTV1BBxS8VXrPwf8QSdqS5sIuUCFxNJJYyHpTOqZRkpmkoQHaikWC-yH-x7Exz9ghIVEbhD5SrlolMheAeEhOnV9BsUS">假设有点晕的童鞋请猛戳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,看到里面存储的数据(音频、图片、视频等)!
并且能够直接(无需通过程序)往里存放数据,这样做的优点是能够降低往里存入时所敲代码可是强烈不建议这样做。由于这是直接操作数据库。太危急!并且假设没有依照对应规范来非常easy会出错,假设通过对应的程序来实现的话则就可非常好的避免这些。
管理起来特别方便。并且它支持远程訪问(一般默认没有password)!
六、友情提示:
32位系统Mongodb上是仅仅同意数据库大小最大为2G;除去系统必须的库外事实上真正用于存储用户数据最大为700M左右。而64位则不受不论什么限制。因此在251那台32位【备用机器】上,因为英语的听力比較大,所以考完一天需将当天的删除。再传入明天的听力,这大大添加劳动量。
七、小结:
每次參与活动都能从中收获很多,积极主动去參与进去,遇到问题多去做实验。多去和别人交流。这当中有无数的乐趣。
就拿研究Mongodb这次来说吧,自己接手server也就两天的时间,须要用到Mongodb,自己彻夜去鼓捣。一是由于有压力(鼓捣不好考试就少了一道保障);二是自己确实喜欢鼓捣愿意多接触这些新东西。
同一时候也特别鸣谢251那台老server,正是由于它配置低。Mongodb在它身上出现故障最多。也让我在解决这个问题的时候成长最多。