linux下的mongodb数据库原生操作
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数据库原生操作的更多相关文章
- MongoDB和Java(1):Linux下的MongoDB安装
最近花了一些时间学习了下MongoDB数据库,感觉还是比较全面系统的,涉及了软件安装.客户端操作.安全认证.副本集和分布式集群搭建,以及使用Spring Data连接MongoDB进行数据操作,收获很 ...
- linux下MySQL安装登录及操作
linux下MySQL安装登录及操作 二.安装Mysql 1.下载MySQL的安装文件 安装MySQL需要下面两个文件: MySQL-server-4.0.16-0.i386.rpm MySQL-cl ...
- MongoDB数据库简单操作
之前学过的有mysql数据库,现在我们学习一种非关系型数据库 一.简介 MongoDB是一款强大.灵活.且易于扩展的通用型数据库 MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数 ...
- windows下数据库文件使用脚本同步到linux下的mysql数据库中
1.背景 windows server 2008 下 每天会有 *.sql数据文件 需要上传到linux 中的mysql数据库中 而运维人员是在 windows server 下使用 xshell 连 ...
- plsql 连接 虚拟机Linux下的Oracle数据库 失败
plsql 连接 虚拟机Linux下的Oracle数据库 失败2017年09月09日 09:10:23 守望dfdfdf 阅读数:187 标签: oraclelinux 更多个人分类: 工具 软件编辑 ...
- Linux下 导入导出数据库
1.怎么找到mysql下的bin? 1.1首先我在网上百度了一些Linux下如何导入导出数据.基本都是用mysqldump命令,但是如果没有到指定目录 下,执行这个命令是没有用的.一开始我还以为要在m ...
- Linux下实现mysql数据库每天自动备份
Linux下实现mysql数据库每天自动备份 1.基本操作步骤 a.创建备份目录 mkdir -m 777 /home/wwwroot/backup b.创建备份脚本sh vim /home/wwwr ...
- Linux下重启mysql数据库的方法
原文地址:Linux下重启mysql数据库的方法作者:于士博的视频教程 方法一: 命令: [root@localhost /]# /etc/init.d/mysql start|stop|rest ...
- linux下搭建mysql数据库
linux下搭建mysql数据库 1.下载mysql: http://dev.mysql.com/downloads/mysql/5.6.html#downloads wget http://dev. ...
随机推荐
- 【HDOJ 5419】 Victor and Toys (排列组合)
[HDOJ 5419] Victor and Toys n个玩具 m个区间 每一个玩具有一个beauty值 问任选三个区间 三区间的MINleft~MAXright的和的期望值 预处理一个数组 存放每 ...
- 卡尔曼滤波(Kalman Filter) 的进一步讨论
我们在上一篇文章中通过一个简单的样例算是入门卡尔曼滤波了.本文将以此为基础讨论一些技术细节. 卡尔曼滤波(Kalman Filter) http://blog.csdn.net/baimafujinj ...
- luogu1220 关路灯
题目大意 路面上有一些开着的灯,每个灯有功率和它的位置,人在第c个灯处,行走速度1m/s.问怎样关灯能使耗能最小,输出这个耗能. 思路 #include <cstdio> #include ...
- iOS社会化分享(干货)
一.苹果原生集成的社会化分享 1.哪些平台 (1)Twitter (2)FaceBook (3)Flickr (4)Vimeo (5)新浪微博 :iOS6 (6)腾讯微博 : iOS7 2.框架 : ...
- C语言程序判断文件夹是否存在
#include <stdio.h> #include <io.h> int main(void){ if ( !access("C://Users/hui" ...
- selenium3 + python - expected_conditions判断元素
expected_conditions 类 title_is: 判断当前页面的title是否完全等于(==)预期字符串,返回布尔值 title_contains : 判断当前页面的title是否包含预 ...
- 【POJ2248、LOJ#10021】 Addition Chains
事先预警:由于我太蒻了,本做法只能在POJ.LOJ等小数据(N<=100)平台上通过,在UVa(洛谷)上大数据并不能通过 戳我获得更好的观看效果 本题不用看,爆搜就是了,但是纯爆搜显然会爆时间, ...
- Mysql 时间、字符串、时间戳互转
时间转字符串 select date_format(now(),'%Y-%m-%d'); 时间转时间戳 select UNIX_TIMESTAMP(now()); 时间戳转时间 ) :: 时间戳转字符 ...
- MYSQL日期时间字符串互转
--MYSQL date_format(date,'%Y-%m-%d') -------------->oracle中的to_char(); 日期时间转字符串 --MYSQL str_to_da ...
- 《CSS Mastery》读书笔记(3)
第三章 可视化格式模型 三个最重要的CSS概念需要掌握,浮动floating,定位positioning, 框模型(有些书翻译成盒子模型)box model. 这些概念控制了元素在页面中的安放和显示. ...