1. MongoDB:
MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。在高负载的情况下,添加更多的节点,可以保证服务器性能。MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。
MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。
Mongo支持丰富的查询表达式。查询指令使用JSON形式的标记,可轻易查询文档中内嵌的对象及数组。
Mongodb中的Map/reduce主要是用来对数据进行批量处理和聚合操作。
2. MongoDB下载与配置
1. 下载地址:https://www.mongodb.com/download-center#community 。设置环境变量
2. 配置
如果直接在cmd下使用mongo会得到如下信息,因为mongo服务器没有运行
Failed to connect to 127.0.0.1:27017 after 5000ms milliseconds, giving up.
windows cmd下:在指定文件夹下:
mkdir c:\data\db mkdir c:\data\log
mongod --dbpath c:\data\db
如果执行成功,会输出如下信息:
2015-09-25T15:54:09.212+0800 I CONTROL Hotfix KB2731284 or later update is not installed, will zero-out data files 2015-09-25T15:54:09.229+0800 I JOURNAL [initandlisten] journal dir=c:\data\db\j ournal ... waiting for connections on port 27017
这个时候 “you have started the server, it is running and listening on port 27017
. Now you can start to interact with the server, for example just open a new terminal tab and run mongo
,which will open mongo's interactive console and connects to the default server”可以开启另外一个cmd窗口输入mongo进入shell
If you want to run mongod as a background process (to get back the console) you can use --forkcommand option. This requires you to use some sort of logging.
Eg. mongod --dbpath /path/to/my/mongodata --fork --logpath /path/to/my/mongod.log
由于这样操作比较繁琐,我们可以设置mongoDB服务。
创建MongoDB服务:
在任意地址新建文件mongod.cfg.
systemLog: destination: file path: path\to\log\mongod.log storage: dbPath: path\to\data\db在cmd下。
C:\mongodb\bin\mongod.exe --config "C:\mongodb\mongod.cfg" --install
有可能会创建失败,这个时候搜索cmd右键管理员模式运行,再次运行以上代码
如果看到,则可以启动服务
[SC] CreateService SUCCESS |
net start MongoDB
之后直接在cmd中输入mongo就可以进入shell了
移除服务:
mongod.exe --remove
3. MongoDB 概念
1. MongoDB的默认数据库为"db",该数据库存储在data目录中。
MongoDB 中默认的数据库为 test,如果你没有创建新的数据库,集合将存放在 test 数据库中。
4. MongoDB语法
1. 创建与删除数据库:
MongoDB 创建数据库的语法格式如下:
use DATABASE_NAME
如果数据库不存在,则创建数据库,否则切换到指定数据库。
db.dropDatabase()
删除当前数据库
db.collection.drop()
删除数据库集合
>db.setName.drop()删除某一个集合
2. 查看数据库
> show dbs
查看所有数据库,只有非空才会显示
> db
查看当前数据库
>show collections查看当前数据库的所有集合
3.