1. 各数据库简要介绍和区别
MongoDB 文档型数据库Document store,非关系型数据库(部署简单方便,无模式特性,支持索引使用BSON存储数据)各数据库的Rank和详细介绍,可参阅网站 DB-ENGINES
早期的32位系统,DB最多支持2.5G的大小,超过这范围会出现很多问题。
2. MongoDB 安装和启动
- 下载安装
A. 首先从www.mongodb.org下载相应的版本
B. 解压压缩文件并修改文件夹名称, (Bin目录中的文件mongodbump 备份,mongodbstat 监控
C. 服务的启动 mongod -dbpath=/data/db -port=27017,假如守护进程启动 mongod --dbpath=/data/db --fork --syslog (前面一个参数表示守护进程方式启动,后面一个参数表示使用系统日志也可以指定日志文件 --logpath=/var/mongd/) 进程查看 lsof -i:27017 - 在线安装(apt-get),先查询 apt-cache search mongdb,此方法较难找到安装目录
3.MongoDB 的客户端使用
- 客户端启动 ./mongo 启动本机,启动其他机器 ./mongo ip:port
- 查看有哪些数据库
show dbs; //列出所有数据库 local默认自动创建
- 列出集合
show collections; //列出所有集合;
use nodejs //使用数据库;数据库和集合都无法创建,只有通过集合里面成功插入一行数据后才会创建数据库和集合
- 创建一条记录
db.users.insert({'username':'Zoey'});
db.users.insert(''username':'Lisi', 'size':'80kg'});
show dbs; //显示新建的数据库 nodejs
show collections //显示集合 users
db.users.find().count(); //统计集合数量
- 查询记录
db.users.find({'username':'Lisi'}); //查询username=Lisi的信息
db.users.find().toArray() //格式化记录
db.users.find().Pretty //格式化记录
- 更新记录
db.users.update({条件}, {更新内容}, upsert, multi) //upsert 默认False,若更新记录没有,不自动插入, multi表示更新多条,默认只更新最前面一条。
db.users.update({'username':'Lisi'}, {$set:{'size':'E'}},{multi:true}) //更新多行
db.users.save({"_id":ObjectID(""), 'size':'E'}); //需要_id做查询条件,所有值都指定,否则会丢失
- 删除记录
db.users.remove({'username':'Lisi'},true) //删除条件 后面一个参数true表示单行删除,默认为False 删除所有
db.users.remove({}) //删除所有数据,不删除索引
db.users.drop() //删除所有文档和索引 返回Boolean类型