MongoDB历险记

一直在使用MongoDB来做为底层的数据存储,一直也没有出现什么问题。但就在MongoDB上市之际,一客户的MongoDB挂了,原因很复杂,大概有下面的一些原因和操作: 客户的存储做过迁移; 服务器打补丁做过重启; 服务器重启后其中有一台的存储盘丢失; MongoDB的所有服务都恢复后,在一个很短的时间内是正常的,测试在这期间做过Web端和PC客户端端测试; 当测试通知文件不能上传时,发现一台服务器端MongoDB服务不能正常启动,紧接着另一台也不能正常启动; 此时MongoDB已彻底瘫痪。 上面就是整个事故的经过,发生在周六的夜里九十点钟,接下来就是长达一天一夜的修复工作。

发布于 技术

C#访问群集部署时的MongoDB

普通的MongoDB部署有一台主、一台备,程序连接MongoDB时需要主服务器的地址以及端口,当群集部署的时候就会有多个服务器地址需要连接,MongoDB的C# API可以支持同时连接多台服务器。

发布于 技术

C#用md5判断GridFS中文件是否存在

假设使用MongoDB的GridFS做分布式文件系统,同样的文件在文件系统中只存一份,那么在存入文件时就需要判断文件是否已经存在,在GridFS中每个文件都有唯一的md5哈希值,只需要用文件的md5值判断是否在GridFS中已经存在就可以了,所谓的秒传功能就是用的该原理。 技术栈C#、VS2013、MongoDB、GridFS 实现1 . 首先根据文件流得到md5值,代码如下: 123456...

发布于 技术

MongoDB(4)–MongoDB服务的启动

原始方式只有启动了MongoDB的服务,才能使用MongoDB的功能,通常情况下会开一个命令窗口,输入下面的命令来启动服务: 配置文件方式如果不想每次启动的时候都在命令行中输入很多繁琐的参数,可以把参数信息保存在配置文件中。创建一个名为mongodb.cnf的配置文件,和那些小工具放在同一个目录中,文件的内容如下: 1dbpath="d:\database\mongodb\dat...

发布于 技术

MongoDB(3)–有关NoSQL及MongoDB的一些概念

学习任何东西在没有理解的前提下去背熟一些概念是没有用的,就像只背会了几个概念而没有理解的开发人员去面试是经不住面试官的追问的。前面的两篇对MongoDB做了简单的介绍,能够很快上手,对MongoDB有一个感性的认识。本篇大部分内容来自MongoDB权威指南和MongoDB实战。希望在学习完整个MongoDB后能对本篇的内容有一个全新的认识。 NoSQL简介NoSQL,全称是”Not Only...

发布于 技术

MongoDB(2)–MongVUE介绍

对于数据库来说有一款功能强大的管理工具将会大大的提高我们的工作效率。对于MongoDB来说MongoVUE就是这样一款工具,MongoVUE在1.0版以后就开始收费了,所以我现在用的还是0.9.7.2版。对于初学来时已经够用了。 安装运行后的界面如下: 点击Connect来连接MongoDB数据库 填写好Name 和Server后点击Save,Name随便给取个名字就型,Server为服...

发布于 技术

MongoDB(1)--MongoDB介绍及安装

NoSql已经流行好一阵子了,我似乎接触的有点晚了。NoSql的产品有很多,MongoDB只是其中一种,之所以选在学习MongoDB是因为最早知道的就是她,也比较具有代表性。 MongoDB相比传统的关系型数据库有一些优势,比如在海量数据下的性能表现、很好的扩展性等。初识MongoDB感觉和关系型数据库最大的区别就是没有关系型数据库中的那种关系模型,更准确的说她是一个面向文档的数据库。通俗的...

发布于 技术