MongoDB

是一个基于分布式文件存储的nosql数据库。在处理大数据的时候会比MySQL更有优势。爬虫的数据如果上了一个量级,可能用MongoDB会比MySQL更好

SQL和NoSQL的主要区别

• 在SQL中层级关系:数据库->表->数据
• 在NoSQL中是:数据库->集合->文档

MongoDB的优势

1.无数据结构限制

• 没有表结构的概念,每条记录可以有完全不同的结构
• 业务开发方便快捷
{name:‘小明’,sex:‘男’}
{name:‘居然’,address:‘东北’}
{name:‘小红’,home:[{‘山东’},{江西}]}

2.大数据量和高性能

• nosql数据库都具有非常高的读写性能,尤其在大数量下表现优秀

3.良好的支持

• 完善的文档
• 齐全的驱动支持
MongoDB在Ubuntu中安装
在Linux中安装MongoDB
sudo apt-get install mongodb
开启服务
sudo service mongodb start
关闭服务
sudo service mongodb stop
重启服务
sudo service mongodb restart
注意:如果是系统非正常关闭,这样启动会报错,由于mongodb自动被锁上了,这是需要进入mongodb数据库文件所在的目录(/var/lib/mongodb/),删除目录中的mongodb.lock文件,然后再进行上述操作。
如果想让远程连接
需要修改 /etc/mongodb.conf
打开文件:
sudo vim /etc/mongodb.conf
注释掉 bind 127.0.0.1
MongoDB在Windows中安装
网址:https://www.mongodb.com/download-center/community

Windows安装MongoDB:https://www.cnblogs.com/chy18883701161/p/11100560.html
运行MongoDB
1.把MongoDB的bin目录加入到环境变量中
2.执行命令
mongod --dbpath D:\MongoDB\data # 启动
连接MongoDB
在环境变量设置好的前提下,使用以下命令mongo就可以进入到mongo的操作终端了
查看帮助命令
mongo -help

MongoDB概念介绍

MongoDB的介绍

MongoDB三元素

三元素:数据库、集合、文档
• 文档:就是关系型数据库中的一行。文档是一个对象,由键值对构成,是json的扩展形式
{“name”: “abc”, “gender”: 1}
• 集合:就是关系型数据库中的表。可以存储多个文档,结构可以不固定。
{“name”: “abc”, “gender”: 1}
{“name”: “abc”, “age”: 18}
{“title”: “abc”, “price”: 1}

mongoDB中数据库的基本使用

• 查看数据库

• show dbs

• 切换数据库

• use 数据库

• 查看当前的数据库

• db

• 删除数据库

• db.dropDatabase()

• 会自动创建数据库

• use 数据库

• 查看集合

• show tables/show collections

• 退出数据库

• db.shutdownServer()

MongoDB中集合的基础命令

不手动创建集合,向不存在的集合中第一次加入数据时,集合会被创建出来!!!!
手动创建集合 : db.createCollection(name,options)
• name: 要创建的集合名称
• options: 可选参数, 指定有关内存大小及索引的选项
db.createCollection(‘sub’,{capped:true,size:10})
• 参数capped:默认值为false表示不设置上限,值为true表示设置上限
• 参数size:当capped值为true时,需要制定此参数。表示上限大小,当文档达到上限时,会将之前的数据覆盖,单位为字节

查看集合

show collections
删除集合:db.集合名称.drop()

MongoDB的数据类型

• String:字符串,必须是有效的UTF-8
• Boolean:存储一个布尔值,true或者false
• Integer:整数可以是32位或64位,这取决于服务器
• Double:存储浮点数
• Arrays:数组或列表
• Object:嵌入式文档
• Null:存储Null值
• Timestamp:时间戳, 表示从1970-1-1到现在的总秒数
• Object ID是一个12字节的十六进制数
• 前4个字节为当前时间戳
• 接下来3个字节的机器ID
• 接下来的2个字节中MongoDB的服务进程id
• 最后3个字节是简单的增量值

相关文章: