mongodb 入门
在NOSQL的多个数据库版本中,mongodb相对比较成熟,把学mongodb笔记整理在这,方便以后回顾。
这笔记预计分三部分: 一,基础操作,二、增删改查详细操作,三、高级应用。
一、在linux在安装mongodb,
在linux下安装mongodb其实很简单,到官网上下载mongodb-linux-x86_64-v2.4-latest.tgz 文件,直接解压就可以使用了,为了方便,把解压后的文件放在 /usr/local/mongodb 下,在bin文件下就是我们需要的二进制命令文件。
bsondump mongodump mongoimport mongorestore mongostat
mongo mongoexport mongooplog mongos mongotop
mongod mongofiles mongoperf mongosniff
二、mongodb启动与关闭
与mysql一样,mongodb也需要启动后台进程
/usr/local/mongodb/bin/mongod --dbpath=/usr/local/mongodb/data --logpath=/usr/local/mongodb/dblogs --fork
--dbpath执行数据库存放路径(默认是/data/db)
--fork是以Daemon(进程)方式运行,
mongodb 默认开启的端口号是27017.
跟其他程序一样,关闭mongodb 可以使用 killall mongod 或是 pkill mongod ,但是,最好不好使用kill -9 pid 的形式,因为这样会使mongodb受到损坏,并且下次启动mongodb的时候会出现问题,mongodb 会在data 文件夹下产生一个mongod.lock 的锁文件。 如果你真的使用kill -9 + pid 的形式关闭mongodb ,下次启动前必须先到data 文件夹下删除那个锁文件。
三、mongodb 的简单操作
(1)进入mongodb命令:
[root@local ~]# /usr/local/mongodb/bin/mongo
MongoDB shell version: 2.4.4-pre-
connecting to: test
>
(2)退出命令: exit
(3)查看当前数据库: db
(4)查看表(mongodb中称为collections) show tables 或 show collections
(5)进入admin 数据库: use admin
(6)查看所有用户: show users;
(7) 查看数据库: show dbs;
(8) 帮助命令: help (可以使用这命令,查看所有命令的详细使用方法)
(9) 增:db.collname.insert({name:"user1"});里面的key:value 以json格式
(10)删:db.collname.remove()如果括号里没有条件,则删除collection里所有数据
db.collname.remove({"name":"caida"})
(11)改:db.collname.update({"_id":1},{"name":"nosql"})
(12)查:db.collname.find() 如果括号没有条件,则查找collection里所有数据
db.collname.find({"name":"caida"})
(13)保存:db.collname.save(),如果值改变则更新,否则不变。
(14)新建数据库(如创建一个user数据库)
> use user;
switched to db user
> db.createCollection("user");
mongodb的数据库是隐式创建的,并没有一个命令去创建个数据库。
几个注意事项:
mongodb在插入数据的时候,如果你没有指定_id,这它会自动个你创建个_id,是根据:时间戳|机器| PID | 计数器 来产生的,所以即使跟其他mongodb数据库,它的值也是唯一的。
mongodb的数据结构 database--collection--document
mongodb的数据是以json格式,并且可以循环嵌套,为了系统的高效性,最后不要多层嵌套。
在创建数据库的时候,支持js的语法,可以循环插入多条数据。
32位的版本最多只能存储2.5GB的数据。
如果你的MongoDB实例崩溃了(或者由于OOM挂掉了,或者整个系统都崩溃了),那么谁也无法保证你的数据会怎么样。最好的办法是建立一个replication,
在默认情况下,MongoDB不会进行身份验证,并且,它会监听所有的网络接口。
转载于:https://blog.51cto.com/ahanwu/1200908
相关文章:

springboot 学习笔记(三)
(三)用jar包启动springboot项目 1、首先需要在pom文件中添加依赖,spring-boot-starter-parent包含有打包的默认配置,如果要修改的话要可以进行重新定义,具体内容参考https://docs.spring.io/spring-boot/docs/2.1.1.RE…

搜索:深搜/广搜 获取岛屿数量
题目描述: 用一个二维数组代表一张地图,这张地图由字符“0”与字符“1”组 成,其中“0”字符代表水域,“1”字符代表小岛土地,小岛“1”被 水“0”所包围,当小岛土地“1”在水平和垂直方向相连接时…

2.4.4.1、Django新建APP(acounts)
$django-admin.py startapp accounts 在oss/accounts修改forms.py(新建)和views.py如下: 注:绿字部分为注释 views.py ################################################################ #codingutf-8 from django.core.urlresolvers import reverse f…

vue html引入资源dev下404,webpack vue 项目打包生成的文件,资源文件报404问题的修复方法(总结篇)...
最近在使用webpack vue做个人娱乐项目时,发现npm run build后,css js img静态资源文件均找不到路径,报404错误。。。网上查找了一堆解决办法,总结如下一、首先修改config目录下的index.js文件将其中build的配置项assetsPublicPat…

解决.net webservice的WebClient或HttpWebRequest首次连接缓慢问题
【编程环境】Visual Studio 2010, NET4.0 【开发语言】C#, 理论上VB.NET等依赖.NET Framework框架的语言均受此影响 【问题描述】 使用HttpWebRequest抓取网页内容,但首次请求总是莫名奇妙的阻塞在Request.GetResponse();上,不过一旦这次请求成功,后续的操作就很快了…

2019-1-11
unique的使用: 1. unique是把相邻的重复元素放到最后面。所以在对无序数列使用之前,需要用sort先排序。 2.unique的返回值是不重复区的的最后一个元素加一的地址。 sort(V.begin(), V.end() ); vector<int>::iterator end_unique uniqueÿ…

搜索:广搜 词语阶梯
问题描述以及解决过程如下导图 广搜实现如下 #include <iostream> #include <algorithm> #include <vector> #include <string> #include <queue> #include <set> #include <map>using namespace std;/*判断两个单词是否有连接状态…

float属性html,详解CSS样式中的float属性
详解CSS样式中的float属性。float是 css样式的定位属性。我们在印刷排版中,文本可以按照需要围绕图片。一般把这种方式称为“文本环绕”。在网页设计中,应用了CSS的float属性的页面元素就像在印刷布局里面的被文字包围的图片一样。浮动的元素仍然是网页流…
机房收费系统系列一:运行时错误‘-2147217843(80040e4d)’;用户‘sa’登陆失败...
做机房收费系统的时候,首先在SQL server数据库中添加好charge数据库(在对象资源管理器中,右击数据库,点击附加,找到charge的mdf文件,点击确定),然后用ODBC配置好数据库,把…

JQuery新浪1630个表情插件
1.http://***/Detail.aspx?id131 2.http://***/Detail.aspx?id81转载于:https://www.cnblogs.com/zrp2013/archive/2013/05/17/3082961.html

linux open系统调用的O_DIRECT标记
前言 open系统调用中针对打开的文件描述符,可以增加一个O_DIRECT标记,该标记能够使得针对该文件描述符的写操作绕过操作系统page cache,直接进入通用块设备层,从而减少页缓存对IO效率的影响。 但是针对O_DIRECT标记有一个问题&a…

计算机专业每年都有国企招老吗,这十大专业在国企中最受欢迎,待遇高、前景好,有你的专业吗?...
古语说“三百六十行,行行出状元”这句话一点没错,但是当你报考传说中的“铁饭碗”、“金饭碗”的时候,你会发现,想入对行,首先你得选对专业,不管是对于报考还是以后的职业发展来说,选对专业和嫁…

实现一个基于 SharePoint 2013 的 Timecard 应用(下)
现在,基于 Timecard 数据来一点儿数据分析。 应用需求 对于 Timecard,分析下面 2 个方面: 对于单个项目,分析其中每个成员的工时占比,以此了解工作量分配,为组间人员调度提供参考。对于整个公司,…

新书来了!《ActionScript 3.0游戏设计基础(第2版)》
已经开始预售:猛戳这里!多谢支持!文后附件为译者序。转载于:https://blog.51cto.com/58script/1202944

springcloud-spring cloud config统一配置中心
统一配置中心 为什么需要统一配置中心? 统一配置中心顾名思义,就是将配置统一管理,配置统一管理的好处是在日后大规模集群部署服务应用时相同的服务配置一致,日后再修改配置只需要统一修改全部同步,不需要一个一个服务手动维护 统一配置中心的架构图: 服务者消费者集群&#x…

a-awk外部变量传入,内部变量传出,同时过滤空格及其他字符
变量传递 外部变量传入 lsblk|awk -v A$A -v B$B {print A,B}lsblk | awk {print A,B} A$A B$B 内部变量传出 eval $(lsblk|awk {print "A$1"})eval $(lsblk|awk printf("A%s\n",$1)) 同时过滤空格及其他字符 df -Th|grep ceph- 2>/dev/null|awk -F…

UVa12096.The SetStack Computer
题目链接:http://uva.onlinejudge.org/index.php?optioncom_onlinejudge&Itemid8&pageshow_problem&problem3248 1391605812096The SetStack ComputerAcceptedC0.3022014-07-21 03:43:15The SetStack Computer Background from Wikipedia: \Set theory…

网络设置计算机,怎么重置电脑网络设置
现如今网络已经融入了我们的生活,我们对网络的要求也越来越过了,那么你知道怎么重置电脑网络设置吗?下面是学习啦小编整理的一些关于怎么重置电脑网络设置的相关资料,供你参考。重置电脑网络设置的方法开始→运行→输入:CMD 点击…

centos 学习日记 文件默认权限:umaks
使用方法: [rootkin /]# umask 0022 [rootkin /]# umask -S urwx,grx,orx上面显示的是本机上面文件默认的权限。 第二个好理解。 第一个要注意的是: umask的分值是指"该默认值需要减掉的权限" 第一个数字可以不管他 第二,三&…

linux 基础命令一
linux命令基础 hash:hash操做 shell搜寻到的外部命令的路径结果会缓存至kv(key-value)存储中history:查看历史 history命令:管理命令历史。登录shell时,会读取命令历史文件中记录下的命令:~/.bash_history,而且新执行的命令只会记录在缓存中:…

ceph pool 相关命令
文章目录Pool创建ec pool创建副本pool创建Pool参数创建根故障域及添加osd其他命令Tier相关Pool创建 ec pool创建 创建profile ceph osd erasure-code-profile set $profile_name k$k m$m crush-failure-domainhost crush-root$group_name 创建规则 ceph osd crush rule creat…

临平职高计算机专业高职考大学,临平职高高考再传捷报 本科连续四年蝉联杭州市第一...
又到一年放榜时,几家欢喜几家愁。然而,2018年的高考成绩出来后,可把临平市职业高级中学(以下简称“临平职高”)的师生们乐坏了。正所谓三年寒窗,开出芬芳;三年磨剑,努力未变;三年坚守࿰…

音频编辑大师 3.3 注冊名 注冊码
username:cae3_user000注冊码:beslbFVpFEhxvxA0F23xW7heAeWoWjuWhvBIMN0Je1o我试过了,绝对能够用。转载于:https://www.cnblogs.com/mfrbuaa/p/3858221.html

兰戈 —— Rango
2019独角兽企业重金招聘Python工程师标准>>> 一部西部卡通片,据说恶搞了《正午》这部著名的西部片,可惜我没有看过《正午》。非常喜欢这部片子里的音乐,恢宏大气。 剧情: 兰戈(约翰尼德普 Johnny Depp 配…

C#/.Net判断是否为周末/节假日
判断节假日请求的Api:http://tool.bitefu.net/jiari/ /// <summary>/// 判断是不是周末/节假日/// </summary>/// <param name"date">日期</param>/// <returns>周末和节假日返回true,工作日返回false</retu…

ceph 部署单机集群
文章目录ceph-deploy部署集群ceph-deploy 部署单机ceph-deploy 创建osdceph osd创建资源池ceph创建rbd块设备ceph创建fs文件系统本文档主要参考ceph官方命令进行部署,使用的时侯ceph-deploy原生命令方式进行集群各个组件的创建,删除,后续会增…

hdu-4302-Holedox Eating-线段树-单点更新,有策略的单点查询
一開始实在是不知道怎么做,后来经过指导,猛然发现,仅仅须要记录某个区间内是否有值就可以。 flag[i]:代表i区间内,共同拥有的蛋糕数量。 放置蛋糕的时候非常好操作,单点更新。 ip:老鼠当前的位置 寻找吃哪一…

华南理工计算机基础知识题,华南理工_计算机应用基础_随堂练习答案(2017年)
华南理工_计算机应用基础_随堂练习答案(2017年) (18页)本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!19.9 积分. . . .华南理工-计算机应用基础-随堂练习答案(2017年)第一章 计算机基础知…

python 添加进度条
安装: pip install tqdm使用: from tqdm import tqdm import time for i in tqdm(rang(10)):time.sleep(0.1)转载于:https://www.cnblogs.com/royfans/p/10271496.html

ceph osd 相关命令
混合osd的部署 先部署所有的ssd 在/etc/ceph.conf中最后添加ssd做osd的block大小如下: 比如部署中有两个ssd,则添加 [osd.0] bluestore_block_size xxxx [osd.1] bluestore_block_size xxx 如上的size大小计算如下,如ssd容量为800G&#x…