mongodb,是一种结构最像mysql的nosql

mysql中的数据库,mongodb中也有,区别在于,

myql中数据库下的是表,字段和数据的形式存在

mongodb数据库下的是叫集合(和python中的集合不是一个概念),文档,字典的形式存在

而mysql,redis,mongodb,三者的区别:

mysql适合长期保存,可存储的数据量大,时间长

redis存储时间短,但调用反应快,时间短,适合一直在不停的变化的数据

mongodb存在于两者中间,速度一般,保存时间一般,适合一段时间查看一次的数据(个人理解,勿喷)

进入mongodb

mongo

退出mongodb

exit()

查看所有的库

show dbs

进入数据库:mongodb没有创建数据库的操作,只用进入不存在的库,然后创建一个集合,数据库就算建好了

use 库名

删除数据库:必须在进入到了需要删除的数据库下,在输入下面代码,才能删除

db.dropDatabase()

进入数据库后,查看数据库下的集合

show collections

删除数据库下的某个集合

db.集合名.drop()

插入数据到集合中

db.集合名.insert({name:'pywjh', age:22})

查看集合内容:集合中的每条数据都会自带一条{"_id" : ObjectId("5b73e63943494008f8a8111b"}的系统ID,可以自己声明ID,不然会系统自动生成

    ID是唯一的,不能重复!

db.集合名.find()

{ "_id" : ObjectId("5b73e63943494008f8a8111b"), "name" : "pywjh", "age" : 22 }

注意:查询结果最多显示20条,可以用DBQuery shellBatchSize=30 更改

查看集合内容:(自带美颜的查询方法)

db.集合名.find().pretty()        也叫美观查询

集合中的条件查询

db.集合名.find({name:'pywjh'})
或者
db.集合名.find({age:22}) 都会返回: { "_id" : ObjectId("5b73e63943494008f8a8111b"), "name" : "pywjh", "age" : 22 }

如果数据较多,只需要查看某些特定的数据内容,可以设置打印内容

db.集合名.find({name:'pywjh'}, {age:1})    
''表示布尔值,True 这里是表示搜索name为pywjh的数据,只打印age db.集合名.find({name:'pywjh'}, {age:0})
''表示除了age不打印,其余的都要打印

集合中更新数据

  全文档更新:

db.集合名.update({name:'pywjh'},{xxx:'yyy'})
前一个大括号表示搜索数据位置,后一个大括号表示更新内容,
全文档更新表示将搜索出的数据,直接改变,直接覆盖,慎用

  指定属性,单条更新:$set

db.集合名.update({name:'pywjh'},{$set:{name:'xxx',age:44}})    如果搜索的条件出现多个结果,此操作只会更改一条数据(从上到下)

  指定属性,多条更新:{multi:true}

db.集合名.update({name:'pywjh'},{$set{name:'yyy',age:33},{multi:true}})

集合中删除数据

  多条删除

db.集合名.remove({name:'xxx'})     

  单条删除:{justOne:true}

db.集合名.remove({name:'yyy'}, {justOne:true})     只会删除一条数据,从上到下

linux下的mongodb数据库原生操作的更多相关文章

  1. MongoDB和Java(1):Linux下的MongoDB安装

    最近花了一些时间学习了下MongoDB数据库,感觉还是比较全面系统的,涉及了软件安装.客户端操作.安全认证.副本集和分布式集群搭建,以及使用Spring Data连接MongoDB进行数据操作,收获很 ...

  2. linux下MySQL安装登录及操作

    linux下MySQL安装登录及操作 二.安装Mysql 1.下载MySQL的安装文件 安装MySQL需要下面两个文件: MySQL-server-4.0.16-0.i386.rpm MySQL-cl ...

  3. MongoDB数据库简单操作

    之前学过的有mysql数据库,现在我们学习一种非关系型数据库 一.简介 MongoDB是一款强大.灵活.且易于扩展的通用型数据库 MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数 ...

  4. windows下数据库文件使用脚本同步到linux下的mysql数据库中

    1.背景 windows server 2008 下 每天会有 *.sql数据文件 需要上传到linux 中的mysql数据库中 而运维人员是在 windows server 下使用 xshell 连 ...

  5. plsql 连接 虚拟机Linux下的Oracle数据库 失败

    plsql 连接 虚拟机Linux下的Oracle数据库 失败2017年09月09日 09:10:23 守望dfdfdf 阅读数:187 标签: oraclelinux 更多个人分类: 工具 软件编辑 ...

  6. Linux下 导入导出数据库

    1.怎么找到mysql下的bin? 1.1首先我在网上百度了一些Linux下如何导入导出数据.基本都是用mysqldump命令,但是如果没有到指定目录 下,执行这个命令是没有用的.一开始我还以为要在m ...

  7. Linux下实现mysql数据库每天自动备份

    Linux下实现mysql数据库每天自动备份 1.基本操作步骤 a.创建备份目录 mkdir -m 777 /home/wwwroot/backup b.创建备份脚本sh vim /home/wwwr ...

  8. Linux下重启mysql数据库的方法

    原文地址:Linux下重启mysql数据库的方法作者:于士博的视频教程 方法一: 命令: [root@localhost /]# /etc/init.d/mysql   start|stop|rest ...

  9. linux下搭建mysql数据库

    linux下搭建mysql数据库 1.下载mysql: http://dev.mysql.com/downloads/mysql/5.6.html#downloads wget http://dev. ...

随机推荐

  1. MapReduce:具体解释Shuffle过程

    Shuffle过程是MapReduce的核心,也被称为奇迹发生的地方.要想理解MapReduce, Shuffle是必需要了解的.我看过非常多相关的资料,但每次看完都云里雾里的绕着,非常难理清大致的逻 ...

  2. Openfire 配置连接SQL SERVER(非默认实例)

    安装好Openfire之后,紧接着进行配置. 连接数据库的时候遇上问题. 打算用我本机上的一个SQL SERVER做为数据库.但是,我本机装了几个SQL SERVER实例,现在我打算使用的是那个非默认 ...

  3. jQuery - 广告图片轮播切换

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  4. C语言/C++中如何产生随机数

    C语言/C++中如何产生随机数 作者: 字体:[增加 减小] 类型:转载 时间:2013-10-14我要评论 这里要用到的是rand()函数, srand()函数,和time()函数.需要说明的是,i ...

  5. 【概念的辨异】—— ISO C 与 POSIX C(C standard library 与 C POSIX library)

    ISO C 表示 C Standard Library,也就是 C 标准库. 二者的主要区别在于: POSIX 是 C 标准库的超集(也即是从内容上,C 标准库是 POSIX 库的一部分,POSIX ...

  6. 利用tensorflow实现前向传播

    import tensorflow as tf w1 = tf.Variable(tf.random_normal((2, 3), stddev=1, seed=1))w2 = tf.Variable ...

  7. pom.xml报错:Failure to find org.apache.maven.doxia:doxia-logging-api:jar:1.1 in http://repo.

    在maven本地库中找到对应的地址:org.apache.maven.doxia找到对应的文件:doxia-logging-api发现文件中包含有lastUpdated字样,表示该文件并未下载完成,然 ...

  8. Docker 常用命令和命令集结

    常用命令 查看版本 docker version 查看系统信息 docker info 显示 Docker 系统信息,包括镜像和容器数. 搜索镜像 docker search keyword 从 Do ...

  9. BZOJ 1303

    思路: 水题  竟然不会做 尴尬 比b大的数=1 比b小的数=-1 找到b 统计一下左边比b大x的数有多少 扫右边的时候就查左边的表 就可以了 //By SiriusRen #include < ...

  10. java实现读取yaml文件,并获取值

    首先在项目src目录下新建一个test.yaml的文件. 代码如下: spring: application: name: cruncher datasource: driverClassName: ...