MongoDB笔记(一)MongoDB概述和安装
概述
关键词:关系数据库、非关系数据库
关系数据库:
关系数据库,是建立在关系数据库模型基础上的数据库,借助于集合代数等概念和方法来处理数据库中的数据。目前主流的关系数据库有oracle、SQL、access、db2、sqlserver,sybase等
oracle数据库是oracle公司(中文名叫甲骨文公司)的,还有SQL,access;db2是IBM的(中文名称是国际商务机器公司)。主流的关系数据库还有微软的Sql server,Sybase公司的sybase,(英孚美)软件公司的informix以及免费的MySQL等。
非关系数据库(NoSQL):
提出另一种理念,他以键值对存储,且结构不固定,每一个元组可以有不一样的字段,每个元组可以根据需要增加一些自己的键值对,这样就不会局限于固定的结构,可以减少一些时间和空间的开销。
目前出现的NoSQL(Not only SQL,非关系型数据库)有不下于25种,除了Dynamo、Bigtable以外还有很多,比如Amazon的SimpleDB、微软公司的AzureTable、Facebook使用的Cassandra、类Bigtable的Hypertable、Hadoop的HBase、MongoDB、CouchDB、Redis以及Yahoo!的PNUTS等等。这些NoSQL各有特色,是基于不同应用场景而开发的,而其中以MongoDB和Redis最为被大家追捧。
1)满足极高并发读写需求的Key-Value数据库:Redis,Tokyo Cabinet,Flare
Key-value类型数据库的特点是把这个数据库系统都加载到内存,定期通过异步操作把数据库刷到磁盘上,因为是纯内存操作,这类数据库性能非常快,但是缺点就是数据库容量受物理内存限制,无法用于海量数据的读写。
2) 满足海量数据读写和面向文档的数据库: MongoDB,CouchDB
面向文档的数据库保证海量数据存储的同时,还具有良好的查询性能,注意:这里只是提高了读性能,而写性能却无法做到显著提高。
3) 满足高扩展性和可用性的面向分布式计算的数据库:Cassandra,Hadoop,HBase,Voldemort
面向scale能力的数据库其实主要解决的问题领域和上述两类数据库还不太一样,它首先必须是一个分布式的数据库系统,由分布在不同节点上面的数据库共同构成一个数据库服务系统,并且根据这种分布式架构来提供online的,具有弹性的可扩展能力,例如可以不停机的添加更多数据节点,删除数据节点等等。
MongoDB
MongoDB是基于文档的存储的(而非表),是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bjson格式,因此可以存储比较复杂的数据类型。模式自由(schema-free),意味着对于存储在MongoDB数据库中的文件,我们不需要知道它的任何结构定义。如果需要的话,你完全可以把不同结构的文件存储在同一个数据库里。Mongo最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
Mongo主要解决的是海量数据的访问效率问题。因为Mongo主要是支持海量数据存储的,所以Mongo还自带了一个出色的分布式文件系统GridFS,可以支持海量的数据存储。由于Mongo可以支持复杂的数据结构,而且带有强大的数据查询功能,因此非常受到欢迎。
MongDB是文档数据库,其中的集合相当于关系数据库中的表,文档相当于关系数据库的表中的数据行,如果还是不是很了解MongoDB,那么看一下这里:http://my.oschina.net/23102160/blog/101651 这里说得还是比较通俗易懂的!
WINDOWS 下的安装和使用
推荐两个系列:http://www.cnblogs.com/huangxincheng/category/355399.html
http://www.cnblogs.com/lipan/category/273923.html
1、新建一个文件夹,当作MongoDB的安装目录。例:D:\MongoDB
2、将下载好的文件 mongodb-win32-i386-2.4.3.zip 解压,将解压出来的4个文件复制到D:\MongoDB目录下
3、在目录D:\MongoDB下新建一个文件夹Data,当作存放数据库的地方
准备工作完成,开始配置
4、Win+R键打开CMD窗口
输入 D:
输入 cd MongoDB\bin
输入 mongod --dbpath D:\MongoDB\Data
至此,配置成功,并开启了MongoDB数据库服务!!!默认的端口号:28017
5、在不关闭第4步的命令框的前提下,打开浏览器访问:http://localhost:28017/
出现:You are trying to access MongoDB on the native driver port. For http diagnostic access, add 1000 to the port number
说明服务已经开启
6、在不关闭第4步的命令框的前提下,Win+R在调出一个命令框
输入 D:
输入 cd MongoDB\bin
输入 mongo
即可连接上MongoDB的test数据库 (本机为32为Win7系统)
7、连接成功之后,可看http://www.cnblogs.com/huangxincheng/archive/2012/02/18/2356595.html 按照步骤,来用命令操作数据库
8、在第5、6步中,我们有强调在不关闭第4步调出的命令框下,这是因为第4步的操作是开启MongoDB数据库服务,如果关闭窗口的话,就关闭了MongoDB数据库服务,也就无法对数据库操作了。
9、通过命令使MongoDB数据库服务在后台运行 ??????
后台运行:-fork命令,但是在用的时候必须要和-logpath命令一起用,来指定日志输入位置
网上查到是:mongod -dbpath D:\MongoDB\Data -logpath D:\MongoDB\log\test.log -fork
但是在本机上运行时,总是提示could not read from config file
此方式在CentOS系统下的MongoDB就可以.......
fork在windows中无法用的吗?
关闭后台:
10、将命令配置到文件中,直接用命令执行文件即可 ?????
在D:/MongoDB/Bin目录下新建db.txt文件,在内部输入
dbpath=D:/MongoDB/Data
logpath=D:/MongoDB/Log/test.log
logappend=true
port=27017(我没写)
然后在命令中输入: mongod -f db.txt
---但是,如果在db.txt中添加 fork=true ,就识别不了fork命令
11、把MongoDB数据库服务做成Windows服务
安装服务:mongod --dbpath=D:/MongoDB/Data --logpath=D:/MongoDB/Log/test.log --logappend --serviceName MongoDB --install
开启服务:net start MongoDB
关闭服务:net stop MongoDB
卸载服务:mongod --dbpath=D:/MongoDB/Data --logpath=D:/MongoDB/Log/test.log --logappend --serviceName MongoDB --remove
如图:
在服务列表中查看:
用CMD对文件进行操作
要进行文件编辑的话:edit X:\XXXXX.TXT
查看文件内容的话:type X:\XXXXX.TXT
也可以用:start X:\XXXXX.txt
于Mongo可以支持复杂的数据结构,而且带有强大的数据查询功能,因此非常受到欢迎。
在CentOS桌面版本下安装:
1.在官方网站上下载相应的版本 http://www.mongodb.org/downloads
2.例如:在usr/local目录下新建文件夹MongoDB,将下载好的.tgz文件解压,并将其中的三个文件放入新建的MongoDB文件夹
3.在MongoDB文件夹中再新建一个文件夹Data用来存放数据库
准备工作已经完成,开始安装
4.打开命令终端
输入 cd /usr/local/MongoDB
再输入 ./bin/mongod -dbpath=./Data
OK....
5.在浏览器上输入 http://localhost:27017
出现You are trying to access MongoDB on the native driver port. For http diagnostic access, add 1000 to the port number
配置成功,并且开启了MongoDB数据库服务 6.在不关闭第4步的前提下,再打开一个命令终端,去连接数据库
输入 cd /usr/local/MongoDB
再输入 ./bin/mongo
7. MongoDB数据库服务后台运行,需要利用fork参数,但同时必须要和logpath在一起用,来指定日志的位置,之后就可以关闭窗口,MongoDB服务就会在后台运行了
输入 ./bin/mongod --dbpath=./Data --logpath=./Log/test.log --fork
如果在logpath参数后面在加一个logappend表示日志追加,默认情况下是覆盖的
输入 ./bin/mongod --dbpath=./Data --logpath=./Log/test.log --logappend --fork
后台运行:如下图
8.关闭后台MongoDB服务
在db shell 模式下输入如下命令:db.shutdownServer()
#killall mongod 或者是 kill [pid] 不建议使用
MongoDB笔记(一)MongoDB概述和安装的更多相关文章
- Mongodb 笔记01 MongoDB 简介、MongoDB基础知识、启动和停止MongoDB
MongoDB 简介 1. 易于使用:没有固定的模式,根据需要添加和删除字段更加容易 2. 易于扩展:MongoDB的设计采用横向扩展.面向文档的数据模型使它能很容易的再多台服务器之间进行分割.自动处 ...
- Linux系统运维笔记(四),CentOS 6.4安装 MongoDB
Linux系统运维笔记(四),CentOS 6.4安装 MongoDB 1,下载 https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6 ...
- MongoDB学习笔记二:使用Docker安装MongoDB
目录 Docker安装MongoDB Docker给MongoDB设置用户密码 NoSQL Manager for MongoDB连接 为admin赋权限 上一个笔记介绍了Windows下安装Mong ...
- MongoDb 学习笔记(一) --- MongoDb 数据库介绍、安装、使用
1.数据库和文件的主要区别 . 数据库有数据库表.行和列的概念,让我们存储操作数据更方便 . 数据库提供了非常方便的接口,可以让 nodejs.php java .net 很方便的实现增加修改删除功能 ...
- MongoDB笔记(一):MongoDB介绍及Windows下安装
一.前言 MongoDB火了也蛮久了,关于简介看看这里吧.项目中一直没用上,最近闲的慌就自己学了下,顺便记录下以便今后复习. 本系列是基于MongoDB 2.4.8 windows 64位讲解,后面的 ...
- 小白学习MongoDB笔记(一)·下载及安装MongoDB
下载地址:http://dl.mongodb.org/downloads.我选的64位的 windows64-bit 2008 R2.当时版本为3.0.7 文件格式为.msi 借用“一线码农”的话: ...
- MongoDB笔记:windows环境安装及连接本地数据库
下载MongoDB 2.4.9版 mongodb官网下载:http://www.mongodb.org/downloads 直接下载地址:http://fastdl.mongodb.org/win32 ...
- MongoDB笔记
mongodb简介 MongoDB 是一个基于分布式文件存储的数据库.存储的是Bson结构的文档(二进制的JSON),内部执行引擎为JS解释器,把文档存储为BSON结构,在查询时,转换为JS对象,可以 ...
- Mongodb学习笔记一(Mongodb环境配置)
Mongodb学习 说明: MongoDB由databases组成,database由collections组成,collection由documents组成,document由fileds组成.Mo ...
随机推荐
- Devlop Win 8 and Windows Phone App for Microsoft Dynamics CRM
Microsoft Dynamics CRM App for Windows Phone http://www.windowsphone.com/en-us/store/app/dynamics-cr ...
- [三]ajax重要属性
readState:0初始化,1建立,2已接收,3处理中,4请求完成,响应就绪 status:200成功,404未找到页面失败 onreadystatechange:状态改变自动调用的方法 respo ...
- java异常处理一
为什么需要异常处理? 郝斌解释:因为有些异常不能间接的利用if else来处理,比如说输入的时候,将键盘输入的内容转换为数字,此事如果用户输入非数字就会出现异常,而在用户输入之前是无法用程序判断用户所 ...
- NoSQL 数据库产品学习总结(一)
NoSQL 数据库产品学习总结(一) 本篇文章共分为四个章节,会陆续整理下 Memcached.Redis.tair.mongodb.hbase.SequoiaDB. Cassandra的相关知识. ...
- arcgis 获得路径和环境变量信息
import arcpy import sysimport osimport string reload(sys) sys.setdefaultencoding("utf8")sc ...
- Flume简介与使用(一)——Flume安装与配置
Flume简介与使用(一)——Flume安装与配置 Flume简介 Flume是一个分布式的.可靠的.实用的服务——从不同的数据源高效的采集.整合.移动海量数据. 分布式:可以多台机器同时运行采集数据 ...
- msql 按值排序
ORDER BY find_in_set(status,'705,710,706,1027,707,709,708'),create_time desc
- nyoj 32 组合数
组合数 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 找出从自然数1.2.... .n(0<n<10)中任取r(0<r< ...
- [转]前端开发必备 40款优秀CSS代码编写工具推荐
编写工具地址如下 英文地址:http://webtoolsdepot.com/40-css-tools-to-improve-your-productivity/ 中文地址:http://www.cs ...
- HDU-1052(贪心策略)
Tian Ji -- The Horse Racing Problem Description Here is a famous story in Chinese history. "Tha ...