mongodb安装教程(一)
4.0.6版本的网盘地址:
链接:https://pan.baidu.com/s/14oXqAuJZplcq2RoDTLn6-Q
提取码:e572
1下载: https://www.mongodb.com/download-center/community?jmp=nav
3.4.4 的网盘下载地址 https://pan.baidu.com/s/1mhPejwO#list/path=%2Fwindows soft
教程 http://www.imooc.com/article/18438
这里我下载了4.0.6的
2 双击下载后的安装程序,选择“Complete”安装完整版本。这个过程非常简单,除了“下一步”就是最后的“完成”。
安装好以后接下来是配置
3.配置
3.1 创建D:\mongodb\data\log目录,用来存放日志文件;
3.2 在D:\mongodb\data\log目录里新建mongodb.log,用来存放日志信息;
3.3 创建D:\mongodb\data\db目录,用来存放数据库数据,
3.4 并在D:\mongodb目录下创建mongo.config,在文件内部复制如下文本:
##数据文件 此处=后对应到数据所存放的目录
dbpath=d:\mongodb\data\db
##日志文件 此处=后对应到日志文件所在路径
logpath=d:\mongodb\data\log\mongodb.log
##错误日志采用追加模式,配置这个选项后mongodb的日志会追加到现有的日志文件,而不是从新创建一个新文件
logappend=true
#启用日志文件,默认启用
journal=true
#这个选项可以过滤掉一些无用的日志信息,若需要调试使用请设置为false
quiet=true
#端口号 默认为27017
port=27017
4.测试是否安装成功
进入C:\Program Files\MongoDB\Server\3.4\bin文件夹下,点击mongod.exe,如果闪一下退出,说明安装正常
5.安装服务
用管理员权限打开cmd命令行,输入如下命令安装mongodb服务
sc create MongoDB binPath= "C:\Program Files\MongoDB\Server\3.4\bin\mongod.exe --service --config=D:\mongodb\mongo.config"
或先进入C:\Program Files\MongoDB\Server\3.4\bin文件夹,使用如下命令:
mongod --config D:\mongodb\mongo.config --install --serviceName "MongoDB"
或先进入C:\Program Files\MongoDB\Server\3.4\bin文件夹,使用如下命令:
mongod --logpath "D:\mongodb\data\log\mongodb.log" --logappend --dbpath "D:\mongodb\data\db" --serviceName "MongoDB" --install
在cmd.exe上输入services.msc打开服务管理器,找到MongoDB服务,设置成自动启动,并启动
如果启动不成功,先删除服务,使用如下命令:
sc delete MongoDB
然后再从第3步开始重新排查各种配置项及操作
6.配置环境变量(可省略)
6.1如果不配置环境变量可进入C:\Program Files\MongoDB\Server\3.4\bin,然后把mongo.exe发送桌面作为快捷方式
6.2 还可以通过设置环境变量的方式,让mongo命令在所有文件夹内都可以访问
在系统变量中找到path,window7或window8双击打开后在变量值中的末尾增加
;C:\Program Files\MongoDB\Server\3.4\bin\配置成之后,可以在任何目录下去调用mongo命令,打开如下图:
注意:Window10 可新建一个选项,输入C:\Program Files\MongoDB\Server\3.4\bin即可!
7.推荐使用的图形化工具
Robo 3T 下载地址:
https://robomongo.org/
MongoBooster 下载地址:
http://www.softpedia.com/get/Internet/Servers/Database-Utils/MongoBooster.shtml
一些命令
以下命令是必须掌握的:
mongo
运行mongo
db
显示当前的数据库名称
show dbs
显示当前服务器下数据库(非空的数据库)列表
use test
如果test数据库不存在,则创建test数据库
如果test已存在,则切换到test数据库
show collections
显示当前数据库下所包含的集合(表)列表
db.users.insert({name:'zhangsha'})
向users集合中插入数据
如果users集合存在,则直接插入数据,如果不存在,则创建users集合再插入数据
db.createCollection('products')
创建一个空集合products
db.products.insert([{name:'lishi'},{name:'wangwu'}])
一次插入多个数据
db.products.find()
查询products集合中所有的数据
db.products.find({name:'苹果手机'})
查询stu集合中name='苹果手机'的数据
db.products.find({name:{$eq:'苹果手机'}})
同上,$eq=>等号,建议使用上面的方式,易记,易输入
eq = equal
db.products.find({price:{$gt:18}})
查询stu集合中age>18的数据
把$gt换成如下的符号试试:
$gt=>大于 great
$gte=>大于等于 great equal
$lt=>小于 less than
$lte=>小于等于 less than equal
$ne=>不等于 not equal
$in=>在范围内
$nin=>不在范围内
以上几个符号格式总结为:{ field: {符号: value}}
db.products.find({name:/^华为/})
查找stu集合中name域中以“华为”字符的开头的数据
db.products.find({name:{$in:['手机1','手机2']}})
查询stu集合中name='手机1'和name='手机2'的数据
$in=>在范围内
$nin=>不在范围内
以上两个符号格式为:{ field:{符号:[value1,value2,....]}}
db.products.find({name:"华为手机",price:800})
查找name="华为手机"并且price:800的数据
db.products.find({$or:[{name:'华为手机'},{price:{$lt:1000}}]})
查询products集合中name='华为手机' 或者 price<1000的数据
$or=>或者 注意$or:[{},{},....]
$and=>并且 格式同$or, 例:{$and:[{},{},....]}
$nor=>not or 与$or相反, 格式同$or
db.products.find({price:{$not:{$gt:100}}})
查询products集合中price<=100的数据,不存在price属性的数据也会查询出来
$not=>取反
db.products.find({price:{$exists: true}})
查询products集合中包含域名称为price的数据
db.products.find({name:{$type:2}})
查询products集合中name属性为字符串类型的数据
db.products.find({
$where: function(){
return this.name == '华为手机'
}
})
查询products集合中name='华为手机’的数据
db.products.find({
$where: function(){
return this.name.indexOf('华为手机') > -1;
}
})
查询products集合中name域中包含“华为手机”字符的数据
db.products.update({name:'华为手机'},{$set:{price:2000}},{
upsert: true,
multi:false
})
把products集合中name='华为手机'的那条数据,把price属性设置成2000,其它属性保留
$set是指更改的属性列表,不在列表中其他属性会被保留,如果不加此符号,其它属性会被丢弃(_id属性比较特殊,不会丢失)
upsert:true如果没有符号条件的更新时,则插入一条,为false时,则不会插入, 默认是false
multi:false一次只能更新一条数据,为true时,可更新多条,默认是false
db.students.remove({})
清空集合students
db.products.remove({name:'abc'})
删除products集合中name='abc'的数据,注意,即使把集合products中的所有数据都删除了
products集合仍然存在, remove()是用来删除数据的,而drop()不仅会删除数据,还会把
集合的结构给删除
db.products.drop()
把stu集合彻底从当前数据中删除,集合stu不再存在,注意与remove()的区别
db.dropDatabase()
删除当前数据库
db.users.distinct('name')
查询users集合中不重复的name属性,返回的是数组
db.stu.count({name:'zhangshan'})
查询stu集合中name='zhangshan'的数据数量
db.stu.find().limit(5)
查询stu集合中前5条数据
db.stu.find().skip(5)
查询stu集合中跳过前5条后的数据
db.stu.find().sort({name:1})
查询stu集合中的全部数据,并按name属性正序排列 注:1:正序 -1: 倒序
由于mongodb的api接口方法很多,除以上命令外,其他的命令请多看官方文档
要求:根据官方文档中的方法原型,能够操作相应的方法
mongodb安装教程(一)的更多相关文章
- MongoDB 安装教程
前言: MongoDB是一个基于分布式文件存储的数据库.由C++旨在为WEB应用提供可扩展的高性能数据存储解决方案. 官方网站:https://www.mongodb.com/ 本次教程只针对wind ...
- mongodb安装教程
MongoDB 下载及安装 MongoDB 提供了可用于 32 位和 64 位系统的预编译二进制包,你可以从MongoDB官网下载安装,MongoDB 预编译二进制包下载地址:https://www. ...
- mongodb安装教程(亲测有效)
网上太多教程了,都是说的不明不白,所以自己整理一份 #参考官网: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat ...
- windows中mongoDB安装教程
下载路径:http://downloads.mongodb.org/win32/mongodb-win32-i386-1.7.0.zip 将一个DB文件夹 我是放到D盘,路径:Ddb 解压mongod ...
- contos7 mongodb安装教程
通过yum安装mongodb 1.创建文件mongodb.repo文件, cd /etc/yum.repos.d/ vi mongodb.repo 复制如下代码: [mongodb-org-3.4] ...
- 最简单实用的MongoDB安装教程:在CentOS中使用 yum 安装MongoDB及服务器端配置详解
一.准备工作: 运行yum命令查看MongoDB的包信息 [root@vm ~]# yum info mongo-10gen (提示没有相关匹配的信息,) 说明你的centos系统中的yum源不包含M ...
- mongodb安装失败与解决方法(附安装教程)
安装mongodb遇到的一些坑 浪费了大量的时间 在此记录一下 主要是电脑系统win10企业版自带的防火墙 当然还有其他的一些坑 一般的问题在第6步骤都可以解决,本教程的安装步骤不够详细的话 ...
- Linux下mongodb安装及数据导入导出教程
Linux下mongodb安装及数据导入导出教程 #查看linux发行版本 cat /etc/issue #查看linux内核版本号 uname -r 一.Linux下mongodb安装的一般步骤 1 ...
- MongoDB安装启动教程
MongoDB安装启动教程 简易教程:鉴于第一次大家使用分布式数据库,提供一个简易教程(也可看老师的PPT或者视频) 1.点击安装包(老师给的),安装目录不要更改,否则后面配置需要改,可能导致装不上 ...
随机推荐
- redis 设置密码 laravel框架配置redis
* 参考资料 redis文档 http://www.redis.cn/documentation.html, http://redisdoc.com/index.html r ...
- requests接口自动化-excel参数化
在数据量大的时候,需要使用文件参数化. excel文件是其中一种. 安装xlrd读取excel文件.(这里是在pycharm安装) 发现选择豆瓣安装失败,阿里云安装成功. 准备excel文件,放在te ...
- shell 一些常用命令
一般自己虚拟机新安装的centos才需要此配置 setenforce 是Linux的selinux防火墙配置命令 执行setenforce 0 表示关闭selinux防火墙. getenforce 查 ...
- 对帧率、I/P率、I帧间隔的理解
码率就是数据传输时单位时间传送的数据位数,一般我们用的单位是kbps即千位每秒.通俗一点的理解就是取样率,单位时间内取样率越大,精度就越高,处理出来的文件就越接近原始文件,但是文件体积与取样率是成正比 ...
- AT4996-[AGC034F]RNG and XOR【FWT,生成函数】
正题 题目链接:https://www.luogu.com.cn/problem/AT4996 题目大意 给出一个\(0\sim 2^n-1\)下标的数组\(p\),\(p_i\)表示有\(p_i\) ...
- truncate表时报“唯一/主键被启用的外部关键字引用”解决办法
前言:清空表时提示"唯一/主键被启用的外部关键字引用"这一警告信息 原因:是因为主键被子表引用,所以对主键进行更改就好了 解决: 使用 alter table table_name ...
- Python - poetry(1)包管理利器的入门介绍
Python 虚拟环境详解 https://www.cnblogs.com/poloyy/p/15266382.html poetry 官方介绍 github:https://github.com/p ...
- oracle 不能用上下键调用sql语句
在Linux的sqlplus中运行SQL语句之后,想用上下键把历史命令找出来,发现不支持. 安装rlwrap 重启sqlplus 3,使用rlwrap,rlwrap sqlplus / as sysd ...
- 八大排序算法之基数排序(python实现)
[写在前面] 参考文章: https://blog.csdn.net/nrsc272420199/article/details/82691596[给出的示例图,简单易懂,但是对于没一轮循环没有讲解的 ...
- Linux常用命令,查看树形结构、删除目录(文件夹)、创建文件、删除文件或目录、复制文件或目录(文件夹)、移动、查看文件内容、权限操作
5.查看树结构(tree) 通常情况下系统未安装该命令,需要yum install -y tree安装 直接使⽤tree显示深度太多,⼀般会使⽤ -L选项⼿⼯设定⽬录深度 格式:tree -L n [ ...