mongodb学习01介绍
安装/运行
- 查看当前mongodb运行情况:
pgrep mongo; - 在当前路径下建立数据库:
mkdir -p data/db - 按照一个数据库路径运行
mongod --dbpath ./data/db - 运行数据库之后,使用
mongo; 然后可以进行数据库/表单操作
基本命令
- 成功启动MongoDB后,再打开一个命令行窗口输入
mongo,就可以进行数据库的一些操作。 show dbs:显示数据库列表show collections:显示当前数据库中的集合show users:显示用户use <db name>:切换当前数据库db.foo.find(): foo指的是当前数据库下,一个叫foo的集合(表);对于当前数据库中的foo集合进行数据查找(由于没有条件,会列出所有数据)db.foo.find( { a : 1 } ):对于当前数据库中的foo集合进行查找,条件是数据中有一个属性叫a,且a的值为1
常用命令
help
db.help()db.foo.help()db.foo.find().help()rs.help()
数据表
- 到某个数据库之后执行
db.createCollection("Account")或者db.createCollection("Test",{capped:true, size:10000})capped:true,表示该集合的结构不能被修改;
- size:在建表之初就指定一定的空间大小,接下来的插入操作会不断地按顺序APPEND数据在这个预分配好空间的文件中,如果已经超出空间大小,则回到文件头覆盖原来的数据继续插入。这种结构保证了插入和查询的高效性,它不允许删除单个记录,更新的也有限制:不能超过原有记录的大小。这种表效率很高,它适用于一些暂时保存数据的场合,比如网站中登录用户的session信息,又比如一些程序的监控日志,都是属于过了一定的时间就可以被覆盖的数据。
- 修改数据表名:
db.Account.renameCollection("Account1")
数据库
- 查看当前使用的数据库:
db.getName()或者db - 删除当前使用数据库:
db.dropDatabase(); - 切换数据库:
use <otherdb> - 创建数据库: 先
use <newdb>,然后db.createCollection('user'), 这样就创建来数据库和一个数据表 - 查看数据库结构:
db.status() - 查看数据库版本:
db.version()
数据库其他操作
- 查看当前db的链接机器地址:
db.getMongo(); - 从指定主机上克隆数据库:
db.cloneDatabase(“127.0.0.1”); 将指定机器上的数据库的数据克隆到当前数据库 - 从指定的机器上复制指定数据库数据到某个数据库:
db.copyDatabase("mydb", "temp", "127.0.0.1");将本机的mydb的数据复制到temp数据库中 - 修复当前数据库:
db.repairDatabase(); - 显示当前db所有聚集索引的状态:
db.printCollectionStats();
数据表增/改/删
- 添加
db.users.save({name: ‘test’, age: 23}); - 避免空值: 例子:`db.users.save({email: {type: String, trim: true, unique: true, sparse: true}),`
- 修改:
db.users.update({age: 23}, {$set: {name: 'changeName'}}, false, true);相当于:update users set name = ‘changeName’ where age = 25;db.users.update({name: 'Lisi'}, {$inc: {age: 50}}, false, true);相当于:update users set age = age + 50 where name = ‘Lisi’;db.users.update({name: 'Lisi'}, {$inc: {age: 50}, $set: {name: 'hoho'}}, false, true);相当于:update users set age = age + 50, name = ‘hoho’ where name = ‘Lisi’;
- 删除:
db.users.remove({age: 132});
简介
- 面向文档的数据库
- 以文档模型取代行的概念
- 不再有预定义模式,即文档的键和值不再是固定的类型和大小
- 支持存在时间有限的集合,适用于将在某个时刻过期的数据,如会话
- 不具备一些关系型数据库的普遍功能,如连接和复杂的多行任务
mongodb学习01介绍的更多相关文章
- Android Testing学习01 介绍 测试测什么 测试的类型
Android Testing学习01 介绍 测试测什么 测试的类型 Android 测试 测什么 1.Activity的生命周期事件 应该测试Activity的生命周期事件处理. 如果你的Activ ...
- Redis学习01——介绍与搭建环境
Redis学习01介绍与搭建环境一简介二yum配置已经配置了的可以跳过三安装gcc四安装redis1 上传Redis到linux中2 解压到usrlocal下3 编译redis4 安装redis5 拷 ...
- MongoDB学习笔记—Linux下搭建MongoDB环境
1.MongoDB简单说明 a MongoDB是由C++语言编写的一个基于分布式文件存储的开源数据库系统,它的目的在于为WEB应用提供可扩展的高性能数据存储解决方案. b MongoDB是一个介于关系 ...
- Mongodb学习笔记一(Mongodb环境配置)
Mongodb学习 说明: MongoDB由databases组成,database由collections组成,collection由documents组成,document由fileds组成.Mo ...
- MongoDB学习记录
一.操作符 "$lt" :"<""$lte" :"<=""$gt" :"> ...
- MongoDB学习:(一)MongoDB安装
MongoDB学习:(一)MongoDB安装 MongoDB介绍: 直接百科了: MongoDB安装: 1:下载安装: MongoDB安装:https://www.mongodb.com/do ...
- MongoDB学习(四)客户端工具备份数据库
在上一篇MongoDB学习(三)中讲解了如何在服务器端进行数据的导入导出与备份恢复,本篇介绍下如何利用客户端工具来进行远程服务器的数据备份到本地. 以客户端工具MongoVUE为例来进行讲解: 1.首 ...
- ThinkPhp学习01
原文:ThinkPhp学习01 一.ThinkPHP的介绍 MVC M - Model 模型 工作:负责数据的操作 V - View 视图(模板 ...
- MongoDB学习之--安全和认证
MongoDB学习之--安全和认证 本文主要介绍两部分内容,Mongodb的安全检查配置以及安全认证操作: 虽然确保系统安全是系统管理员的重要工作,但是作为程序员了解其机制也是大有好处的,毕竟不是每个 ...
随机推荐
- PHP安全编程:过滤用户输入
如果你能正确可靠地识别和过滤输入,你的工作就基本完成了.最后一步是使用一个命名约定或其它可以帮助你正确和可靠地区分已过滤和被污染数据的方 法.我推荐一个比较简单的命名约定,因为它可以同时用在面向过程和 ...
- 118. Pascal's Triangle
题目: Given numRows, generate the first numRows of Pascal's triangle. For example, given numRows = 5, ...
- ios cell常用属性
1.设置UITableViewCell的accessoryView 有时候我们需要设置cell的一些样式,比如下图, 这个就是设置了cell的accessory属性的内容,如果我们想在上面显示Swit ...
- [Android Pro] http请求中传输base64出现加号变空格的解决办法
reference to : http://blog.csdn.net/jsjwbxzy/article/details/45970231 try { des = URLEncoder.encode( ...
- Jquery的普通事件和on的委托事件
以click的事件为例: 普通的绑定事件:$('.btn').click(function(){})绑定 on绑定事件:$(documnet).on('click','btn2',function() ...
- Git 操作的一些场景
1. 某些不需要的文件/文件夹,如:/build 之类,在添加对应的gitignore之前Push了,导致每次编译都会产生新的文件 解决方法:直接删掉不需要的文件/文件夹,然后push gitigno ...
- Linux C程序内存空间
linux下内存空间布置: 一个典型的Linux C程序内存空间由如下几部分组成: 代码段(.text).这里存放的是CPU要执行的指令.代码段是可共享的,相同的代码在内存中只会有一个拷贝,同时这个段 ...
- Java -- String、StringBuffer、StringBuilder
原文:http://blog.csdn.net/kingzone_2008/article/details/9220691 String:不可变. StringBuffer(JDK1.0):可变,线程 ...
- WCF分布式开发必备知识(3):Web Service 使用
参考地址:http://www.cnblogs.com/zhili/p/WebService.html 一.WebService概述 SOAP.WSDL.UDDISOAP(Simple Object ...
- 【openGL】四面体