MongoDB
3.0新特性
WiredTiger
MMAPv1
可插拔引擎API
基于web的可视化管理工具

查看版本号
mongod --version
启动数据库

mongod --dbpath $dbpath --logpath $logpath --logappend --fork --port=

$dbpath 数据目录
$logpath 是log文件的路径 不是目录路径
logappend 日志追加方式
--fork 后台运行

在win下
添加到系统服务中

mongod --dbpath $dbpath --logpath $logpath --logappend --install/remove --serviceName "MongoDb"

可以用 服务再启动
net start/stop MongoDB

mongod --dbpath ./data --logpath ./log/mongo.log --logappend --fork

操作

启动

mongod --dbpath /usr/local/mongodb/data --logpath /usr/local/mongodb/log/mon.log --logappend --fork --port=

默认端口 27017
连接
mongo 远程主机ip或DNS:MongoDB端口号/数据库名 -u user -p password
mongo 127.0.0.1:27000
mongo --port=27017
查询所有数据库
show databases
关闭
在一个已经连接上的客户端
use admin
db.shutdownServer()

根据配置文件来启动

建立mongodb.conf

#设置数据目录
dbpath=/usr/local/mongodb/data
#设置日志文件位置
logpath=/usr/local/mongodb/log/mon.log
#打开日志输出操作
logappend=true
#不使用用户管理验证
noauth=true
port=

指定配置文件来启动
mongod -f /usr/local/mongodb/mongodb.conf

-----------------------------------

基本操作

1.使用hk数据库
> use hk
switched to db hk
> show databases
admin 0.000GB
local 0.000GB
当没有实际的数据操作时,use 不会创建数据库

2.创建集合

db.createCollection("stu")

> db.createCollection("stu")
{ "ok" : }
> show databases
admin .000GB
hk .000GB
local .000GB

这时hk数据库才会被真正创建

查看集合里所有的数据
db.stu.find()

3.插入数据
db.stu.insert({"name":'hk','age':10,'class':20});

> db.stu.find()
> db.stu.insert({"name":'hk','age':,'class':});
WriteResult({ "nInserted" : })
> db.stu.find()
{ "_id" : ObjectId("59295c842e2070afc7e34f3e"), "name" : "hk", "age" : , "class" : }

查看集合
> show collections
stu

4.查看hk表数据
db.集合名称.find({若干条件})
插入不同结构的数据

var data={
"name":"张三",
"sex":"男",
"hobby":"足球",
"english":89
};
db.stu.insert(data);
> db.stu.find()
{ "_id" : ObjectId("59295c842e2070afc7e34f3e"), "name" : "hk", "age" : 10, "class" : 20 }
{ "_id" : ObjectId("59295e3e2e2070afc7e34f3f"), "name" : "张三", "sex" : "男", "hobby" : "足球", "english" : 89 }

mongodb每一条记录会生成_id
组成=时间戳+机器码+PID+计数器

5.查看单独的文档信息

> db.stu.findOne()
{
"_id" : ObjectId("59295c842e2070afc7e34f3e"),
"name" : "hk",
"age" : 10,
"class" : 20
}

6.删除数据

db.stu.remove({"_id" : ObjectId("59295c842e2070afc7e34f3e")});
> db.stu.remove({"_id" : ObjectId("59295c842e2070afc7e34f3e")});
WriteResult({ "nRemoved" : 1 })
> db.stu.find()
{ "_id" : ObjectId("59295e3e2e2070afc7e34f3f"), "name" : "张三", "sex" : "男", "hobby" : "足球", "english" : 89 }

7.更新数据

var data={
"name":"张三",
"sex":"女",
"hobby":"跳舞",
"english":99
};
db.stu.update({ "_id" : ObjectId("59295e3e2e2070afc7e34f3f")},data);

操作示例

> var data={
... "name":"张三",
... "sex":"女",
... "hobby":"跳舞",
... "english":
... };
> db.stu.update({ "_id" : ObjectId("59295e3e2e2070afc7e34f3f")},data);
WriteResult({ "nMatched" : , "nUpserted" : , "nModified" : })
> db.stu.find()
{ "_id" : ObjectId("59295e3e2e2070afc7e34f3f"), "name" : "张三", "sex" : "女", "hobby" : "跳舞", "english" : }
完全不同结构的文档更新
> var data={
... "a":'ajax'
... }
> db.stu.update({ "_id" : ObjectId("59295e3e2e2070afc7e34f3f")},data);
WriteResult({ "nMatched" : , "nUpserted" : , "nModified" : })
> db.stu.find()
{ "_id" : ObjectId("59295e3e2e2070afc7e34f3f"), "a" : "ajax" }

8.删除集合

db.stu.drop()
> db.stu.drop()
true
> show collections

9.删除数据库(删除删除当前所在的数据库,先切换再操作)

db.dropDatabase()

mongodb配置和基本操作的更多相关文章

  1. MongoDB的安装配置、基本操作及Perl操作MongoDB

    MongoDB的安装配置.基本操作及Perl操作MongoDB http://www.myhack58.com/Article/60/63/2014/42353.htm

  2. linux下MongoDB客户端shell基本操作

    MongoDB 是一款NoSql数据库,没有固定的模式,即同一个集合中的不同文档结构可以不同,如:第一条记录{name:”xiaoming”},第二条记录:{name:”xiaoli”,age:15} ...

  3. phonegap环境配置与基本操作

    一.开发环境配置: 1.工具环境安装: 安装java sdk 1.6以上版本号,Android Development Tools.ant,系统变量 Path后面加入 新增名稱 JAVA_HOME 值 ...

  4. hadoop生态搭建(3节点)-13.mongodb配置

    # 13.mongodb配置_副本集_认证授权# ==================================================================安装 mongod ...

  5. MongoDB入门_shell基本操作

    使用shell客户端连接mongoDB数据库 [root@localhost mongodb_simple]# ./bin/mongo /admin mongoDB的简单基本操作 1. mongoDB ...

  6. MongoDB数据库(一):基本操作

    1.NoSQL的概念 "NoSQL"一词最早于1998年被用于一个轻量级的关系数据库的名字 随着web2.0的快速发展,NoSQL概念在2009年被提了出来 NoSQL最常见的解释 ...

  7. centos中docker mongodb 配置

    安装docker,对于Centos7,如下: $ sudo yum update$ sudo yum -y install docker$ sudo systemctl start docker 首先 ...

  8. 把Mongodb配置成windows服务

    在mongodb/bin 下运行命令窗口需要配置日志和db路径,如下:mongod --logpath d:\mongo\logs\logfilename.log --logappend --dbpa ...

  9. spring data mongodb 配置遇到的几个问题

    一. mongodb 2.2版本以上的配置 spring.data.mongodb.uri = mongodb://newlook:newlook@192.168.0.109:27017/admin ...

随机推荐

  1. Binder机制-简单用法(一)

    Binder算是android里面比较难懂的部分了,但是非常重要,基本上,当我们深入到进程交互的阶段,Binder都是一个绕不开的槛,所以我也希望帮助大家更浅显地了解到这个知识点.笔者想通过3篇博文简 ...

  2. 从TensorFlow 到 Caffe2:盘点深度学习框架

    机器之心报道 本文首先介绍GitHub中最受欢迎的开源深度学习框架排名,然后再对其进行系统地对比 下图总结了在GitHub中最受欢迎的开源深度学习框架排名,该排名是基于各大框架在GitHub里的收藏数 ...

  3. 学习mybatis时出现了java.io.IOException: Could not find resource EmployeeMapper.xml

    使用mybatis时出现了Could not find resource EmployeeMapper.xml和Could not find resource mybatis-config.xml两种 ...

  4. mysql数据库优化课程---6、mysql结构化查询语言有哪些

    mysql数据库优化课程---6.mysql结构化查询语言有哪些 一.总结 一句话总结:主要分为四类 1.DCL 数据控制语言1)grant2)commit3)rollback 2.DDL 数据定义语 ...

  5. 解决Python字符串处理出现错误UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xe4 in position 108: ordinal not in range(128)

    今天做课程设计遇到了和数据库交互的地方,sqlite数据库设置成utf-8格式编码,插入到数据库中是正确的,但是当读取出来的时候就会出错,原因就是Python的str默认是ascii编码,搜集网上的资 ...

  6. spring3: 对JDBC的支持 之 Spring提供的其它帮助 SimpleJdbcInsert/SimpleJdbcCall/SqlUpdate/JdbcTemplate 生成主键/批量处理

    7.4  Spring提供的其它帮助 7.4.1  SimpleJdbc方式 Spring JDBC抽象框架提供SimpleJdbcInsert和SimpleJdbcCall类,这两个类通过利用JDB ...

  7. nyoj-1316-二分

    acm.nyist.edu.cn/JudgeOnline/problem.php?pid=1316题目链接 Interval 时间限制:2000 ms  |  内存限制:65535 KB 难度:3 描 ...

  8. Stylus的基础用法

    介绍 在学习一个 Vue.js 项目的过程中,注意到源码中样式的部分并没有用熟悉的 .css 样式文件,而是发现了代码长得和 CSS 相像的 .styl 文件.这个 .styl 以前没见过啊,你是谁? ...

  9. 【Hive】自定义函数

    Hive的自定义函数无法满足实际业务的需要,所以为了扩展性,Hive官方提供了自定义函数来实现需要的业务场景. 1.定义 (1)udf(user defined function):  自定义函数,特 ...

  10. C/C++开发android应用

    (转自:http://blog.csdn.net/srplab1/article/details/7617963) 在某些情况下,比如原来与很多c/c++的代码, 可能希望采用c/c++编写andro ...