mongoDB数据库简介:
mongoDB是一种非关系型数据库(NoSQL)内置了很多方法,性能也很好,有很多管理机制,本身支持分布式管理,可以存储很多信息。mongoDB 不支持事务处理。因为是文件存储机构,占用的空间要大一点,mongoDB存储数据库的格式,都是键值对的方式来存储的,类似于JSON的格式。
mongoDB安装:
- 使用软件包方式,先下载安装包
mongodb-linux-x86_64-ubuntu1604-3.2.10.tgz - 解压
tar zxvf mongodb-linux-x86_64-ubuntu1604-3.2.10.tgz
mongoDB的连接:
- 进入mongoDB的安装目录,创建保存该数据库的文件
cd mongodb-linux-x86_64-ubuntu1604-3.2.10$ mkdir data - 启动数据库,并设置数据库文件的路径(在此设置为当前路径下的data目录)
./bin/mongod --dbpath=./data - 启动成功后会提示一个27017的端口,这是mongoDB的端口
[initandlisten] waiting for connections on port 27017 - 在重开一个窗口,执行 ./bin/mongo 命令进入mongoDB的终端操作窗口
- 关闭数据库链接,由于权限问题先进入admin权限 use dmin 执行db.shutdownServer()命令
mongoDB数据库操作:
- show dbs 显示数据库
- show collections 显示集合(数据表);
- use dbname 切换数据库,使用use之前我们不需要对数据库进行额外的创建,在mongo中会在需要的时候自己创建。
- db.demo_admin.insert({'name':'zs'}); 向demo_admin表中插入数据,mongo中使用json格式以键值对的方式插入数据,会自动创建一个_id 字段,在全局范围内不会重复
- db.demo_admin.find() 使用find查询数据,为空,查询所有
- find({x:1}) 查找x=1的数据记录,指定查询
- for(i=0;i<10;i++)db.demo_admin.insert({x:i}) 还可以使用for循环来插入数据
- db.demo_admin.find().count() 统计有多少条数据
- db.demo_admin.find().skip(3).limit(2).sort({x:1});
- skip(3) 表示过滤掉前3条
- limit(2) 显示2条结果
- sort({x:1}) 使用x:1递增排序ASC,-1时递减排序DESC
- 更新操作 db.conllections.update(a,b,c,d);
- a代表修改条件
- b代表的是新的数据内容
db.demo_admin.update({"x":1},{"x":111}) 将x=1的更新为x=111 - c 值,bool,作用是如果这条数据中没有我们修改的这么一条原始数据,是否插入数据库 默认false,表示不插入
db.demo_admin.update({"y":999},{"y":9999},true) - d作用是同样条件的数据,只修改一条还是修改所有 默认false
db.demo_admin.update({"a":2},{$set:{"a":222}},false,true); - db.demo_admin.update({"x":100},{$set:{"y":99}})
set为部分更新,此条语句表示将x等于100的这条数据中的y值更新为99
- 删除 db.demo_admin.remove({a:222})
- 删除表 db.demo_admin.drop()
原文地址:http://www.qzfweb.com/a/82