C#使用MongoDB
MongoDB是啥?
简单来说:MongoDB是一种非关系型数据库(NoSQL)。
进一步来说:MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
总结来说:
MongoDB是一种NoSQL数据库
MongoDB是一种Key-Value(这个Value可以理解成Json)数据库
我为什么写这篇文章?
工作肯定是用不到的,就是平常会写下爬虫程序,所以可能会用到MongoDB。听别人说,他们的爬虫程序里都用了Mongo或Redis,但我目前只用了SQLite和Oracle Berkeley DB。
题外话
还记得刚毕业那年,去一家公司面试
面试官:一些七七八八的问题。。。。
我:不是很熟练。
面试官:知道非关系型数据库吗,有没有用过相关的非关系型数据库?
我:不知道非关系型数据库,没有用过。
面试官:你说你会什么,连非关系型数据库都不知道,还好意思开这个工资。(转身离开)
其实我当时开的工资已经非常低了。就感觉挺受打击的。
几天后,我在公交车的电视上,看到了这家公司因为涉嫌违规被查封了。公司是做爬虫相关业务的。
虽然已过过去多年,我还是记忆犹新。
从这件事我总结出了什么?那就是做爬虫还是非关系型数据库合适。
MongoDB安装与配置
1、下载
MongoDB分社区版和企业版,企业版是收费的,社区版是免费的。
打开MongoDB社区版下载首页
https://www.mongodb.com/try/download/community
在右边选择版本和操作系统后,点击"Download"下载
2、安装
执行mongodb-windows-x86_64-4.4.0-signed.msi安装
选择完整安装【Complete】
服务配置,在这里可以配置数据和日志存放的目录以及服务名,我这里直接使用默认设置
MongoDB Compass是官方的一个数据库图形化管理工具,但是是收费的。默认是钩上安装,我这里不安装。后面会推荐使用其它的工具。
执行安装
运行输入 【Services.msc】,打开服务。在服务中可以找到MongoDB Server的服务,说明安装成功
3、配置
由于MongoDB安装包并未设置环境变量,所以需要手动配置环境变量(说明:如果只可视化工具可不配置该项)
运行输入【Sysdm.cpl】,切到【高级】选项卡,打开环境变量配置,在Path中添加MongoDB安装目录下bin的路径
这样我们就可以通过【运行】直接运行mongo(客户端)和mongod(服务端)
mongo和mongod是命令行工具,使用方法可以查看以下链接
可视化工具
这里我们推荐robomongo,项目地址(https://github.com/Studio3T/robomongo)