MongoDB的安装启动
一 配置及安装
1、下载
地址:https://www.mongodb.com/download-center
2、解压并配置
mongod没有参数的情况下会使用默认数据目录/data/db(Windows为C:\data\db),若目录不存在或者不
可写,服务会启动失败。
MongoDB默认端口为27017
二 启动
1、前台启动
1)linux
运行mongod命令启动数据库服务器
./mongod --dbpath /path/mongodb --bind_ip 10.10.10.10 --port 27021 //启动绑定固定的IP地址、端口
- 1
注:也可以不加端口和ip,服务会使用默认的端口27017,并且可以直接使用./mongo连上本机的 mongoddb,一般用于临时的开发测试
2)windows
执行mongod.exe
2、daemon方式运行
1)命令后加”&”
./mongod --dbpath /path/mongodb --bind_ip 10.10.10.10 --port 27021 &
- 1
2)使用mongo字典的–fork参数
./mongod --dbpath /path/mongodb --bind_ip 10.10.10.10 --port 27021 --fork=true --logpath=/path/mongod.log
- 1
3、用配置文件启动
mongo.conf
port=27018 //绑定的端口
bind_ip=10.10.10.10 //绑定的ip,可绑定多个用","分开
dbpath=/data/db //mongodb数据文件存储路径
logpath=/data/db/mongod.log //mongod的日志路径
pidfilepath=/data/db/mongod.pid
logappend=true //日志使用追加代替覆盖
fork=true
./mongod -f ../conf/mongo.conf
- 1
注:后台运行时如果需要优雅的关闭mongo进程,需要在bind_ip中增加127.0.0.1
4、启动参数详解
dbpath:mongodb的数据文件存储路径
logpath:mongodb的日志路径
logappend:日志使用最佳代替覆盖,boolean值
bind_ip:绑定的IP
port:绑定的端口
journal:write操作首先写入”日志”,是一个数据安全的设置
5、启动警告:WARNING: soft rlimits too low
1)内容
MongoDB shell version: 3.2.11
connecting to: test
Server has startup warnings:
2017-05-09T12:34:19.688-0700 I CONTROL [initandlisten]
2017-05-09T12:34:19.688-0700 I CONTROL [initandlisten] ** WARNING: soft rlimits too low. rlimits set to 1024 processes, 64000 files. Number of processes should be at least 32000 : 0.5 times number of files.
mongodb当前限制:1024 processes, 64000 files
mongodb建议要求:processes = 0.5*files=32000(至少)
所以需要将 processes 从1024 改为 32000 或更大.
2)解决方法
方法一
修改配置文件 /etc/security/limits.d/90-nproc.conf
[root@localhost ~]# vi /etc/security/limits.d/90-nproc.conf
* soft nproc 1024
改为:
* soft nproc 65536
方法二
修改配置文件 /etc/security/limits.conf,添加配置信息:
[root@localhost ~]# vi /etc/security/limits.conf
mongod soft nofile 65536
mongod hard nofile 65536
mongod soft nproc 65536
mongod hard nproc 65536
修改配置文件然后重启 mongod 服务
3)mongoDB推荐配置
-f (file size): unlimited
-t (cpu time): unlimited
-v (virtual memory): unlimited
-n (open files): 64000
-m (memory size): unlimited
-u (processes/threads): 64000
三 Mongo Shell
MongoDB自带JavaScript shell,是一个功能完备的JavaScript解释器
1、进入本地shell
1)linux
新起一个进程,./mongo命令
./mongo [--host] 10.10.10.10:27018
- 1
2)windows
在mongo bin目录执行mongo命令
2、帮助文档
1)查看shell内置的帮助文档
> help
- 1
2)查看数据库级别的帮助文档
> db.help()
3)查看集合级别的帮助文档
> db.foo.help()
4)查看响应函数的JavaScript实现代码
直接在shell输入函数名(函数名后不要输入小括号)
> db.foo.update
5)查看复制集相关的帮助文档
> rs.help()
6)查看集群级别的帮助文档
> sh.help()
3、使用shell执行脚本
mongo shell会依次执行传入的脚本,然后退出
1)使用本地mongod
mongo script1.js script2.js script3.js
2)使用指定的主机/端口上的mongod运行脚本
mongo --quiet server-1:30000/foo script1.js script2.js
3)使用load()函数,从交互式shell中运行脚本
>load("script1.js")
在脚本中可以访问db变量,以及其他全局变量。shell辅助函数不可以在文件中使用
4、mongorc.js文件
如果某些脚本会被频繁加载,可以将它们添加到mongorc.js文件中。这个文件会在启动shell时自动运行。
//禁止删除数据库
db.dropDatabase = DB.prototype.dropDatabase = no;
改变数据库函数时,要确保同时对db变量和DB原型进行改变,如果只改变了其中一个,那么db变量可能没
有改变,或者这些改变在新使用的所有数据库中都不会生效。
四 常用命令
1、连接远程数据库
conn = new Mongo("some-host:port")
db = conn.getDB("");
db为全全局变量,是一个数据库连接,这个变量是通过shell访问MongoDB的主要入口点
2、辅助函数及对应JavaScript函数
use dbname db.getSisterDB("dbname") 切换当前DB
show dbs db.getMongo().getDBs() 列出所有DB
show collections|show tables db.getCollectionNames() 列出当前DB的所有集合
show logs 列出运行日志
show profile 列出当前DB的所有慢查询
show users 列出当前DB的所有用户
3、格式化输出查询结果
> db.users.find().pretty()
五 关闭mongoDB
1、前台运行
默认的情况下,关闭shell,mongodb就停止运行了。
2、后台运行
> use admin;
> db.shutdownServer();
注:此命令值允许在本地,或是一个经过认证的客户端。
3、关闭主从式的复制集群
检查从Mongodb的数据更新时间,如果所有的从MOngodb和主的时间差都超过10,这个时候不会关闭
mongodb(可以通过配置timeoutSecs的方式来让从Mongodb完成数据的更新),如果其中有一个Mongodb
与主服务时间差在10s内,那么主服务器会关闭,并且等待从Mongodb更新完成并关闭
4、强制关闭服务
db.adminCommand({shutdown:1,force:true})|db.shutdownServer({force:true})
5、指定特定超时时间的关闭服务器
db.shutdownServer({force:true,timeoutsec:5})
六 可视化工具
1、MongoChef
下载地址:http://3t.io/mongochef/download/core/platform/
2、NoSQL Manager for MongoDB Professional
下载地址:https://www.mongodbmanager.com/download
使用可视化工具的时候需要在本地把mongodb给启动起来,
1.添加mongodb到环境变量里边,这样就不用每次进入到bin目录去执行mongo.conf的文件了。
2,把mongo添加到windows的本服务里面,直接点击启动也行,这样不能再命令行里面执行了
3,必须以管理员身份运行cmd
配置文件启动mongodb
<-----配置文件----->
#数据库路径
dbpath=E:\MongoDBDATA\data
#日志输出文件路径
logpath=E:\MongoDBDATA\log/mongo.log
#错误日志采用追加模式,配置这个选项后mongodb的日志会追加到现有的日志文件,而不是从新创建一个新文件
logappend=true
#启用日志文件,默认启用
journal=true
#这个选项可以过滤掉一些无用的日志信息,若需要调试使用请设置为false
quiet=true
#端口号 默认为27017
port=27017
#http配置
#httpinterface=true
<-----配置文件----->
把 mongodb放到windows的自带的服务里面
这样开机就等于启动了mongo
删除 collections
db.dropDatabase()
删除集合下面的数据
db.user,drop()
增加,插入数据。
查询数据
更新数据
db.goods.update({name:"2i9",{$set:{class.name:"eeeeee"}) 更新集合下面的对象。。。。
查询文档
db.goods.find({name:'mi6'})
查询文档下面的子文档
db.goods.find({name.class:'mi6'})
删除数据
MongoDB的安装启动相关推荐
- MAC下MongoDB的安装启动及停止
1.到官网下载安装包 地址:https://www.mongodb.com/download-center?jmp=nav#community 下载解压后的文件夹如下: 我们可以将其名称改为mongo ...
- mongodb在windows下安装启动
mongodb安装 mongodb配置 创建几个文件夹具体如下:数据库路径(\data\db\目录).日志路径(\data\log\目录)和日志文件(mongod.log文件) c:\data\log ...
- Linux下MongoDB的安装,通过配置文件启动Mongodb的方式研究,mongodb自启动脚本(Linux),Windows下安装MongoDB服务,集群部署,数据导出和恢复
关于MongoDB的windows的 安装,可以参考: http://www.runoob.com/mongodb/mongodb-window-install.html 关于Linux的安装可以参考 ...
- 1.非关系型数据库(Nosql)之mongodb:mongodb的安装,环境变量配置,数据库服务端启动,客户端启动
1.MongoDB官方网站上下载MongoDB的安装版本.截图如下: 2 安装64位版本的mongodb.将它解压到: E:\Installed\mongodb-win32-x86_64-2.6 ...
- linux使用权限模式启动mongodb,Linux安装MongoDB启动及常见问题解决
MongoDB安装过程以及问题记录 一.MongoDB安装 下载MongoDB 官方地址: 可能需要注册一下我这里是Centos7系统所以选择的是RHEL7.0的TGZ,其他系统自行选择 如果不想注册 ...
- mongodb可视化工具 linux,Linux中安装启动MongoDB与可视化工具
MongoDB 提供了 linux 各发行版本 64 位的安装包,你可以在官网下载安装包. 下载地址:https://www.mongodb.com/download-center#community ...
- MongoDB安装启动教程
MongoDB安装启动教程 简易教程:鉴于第一次大家使用分布式数据库,提供一个简易教程(也可看老师的PPT或者视频) 1.点击安装包(老师给的),安装目录不要更改,否则后面配置需要改,可能导致装不上 ...
- mongodb数据库安装和启动及操作笔记
MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成.MongoDB 文档类似于 JSON 对象.字段值可以包含其他文档,下面linux系统安装方法如下: debi ...
- mongoDB服务端mongod安装启动成功后找不到客户端mongo
mongoDB服务端mongod安装启动成功后找不到客户端mongo mongodb正常安装后,修改环境变量,且mongod能轻松跑同,但是mongo命令无法被正确执行 前往安装目录下/bin目录中, ...
- MongoDB的安装和启动
--- typora-copy-images-to: media --- # MongoDB的安装与启动 MongoDB是一款非关系型数据库,在前端开发中使用较多.但他的安装方式和启动方式在很多情况会 ...
最新文章
- [error]Cannot create __weak reference in file using manual refer XCode7.3
- 循环队列 队空、队满 条件
- C++学习——拷贝构造函数和移动构造函数
- 常用的表单正则表达式
- 局部坐标系和全局坐标系
- (88)FPGA写文件激励(fwrite)
- Windows update一直停留在正在检查更新,为什么
- Visual C#中父窗口和子窗口之间实现控件互操作
- 有人说智能制造装备前景大好,那么智能制造装备产业园的潜力如何?
- web前端基础知识-(六)jQuery-补
- STL容器:list双向链表学习
- atitit 项目注册功能算法attilax总结.docx
- ssh 方式git clone 代码仓库
- 入门系列之在Ubuntu上使用Netdata设置实时性能监控
- 学机器人编程还是计算机编程,为什么要学习机器人编程课程
- 油猴+百度网盘+加速
- Google Earth Engine笔记-计算时间序列hurst指数
- 通过Redis实现数据的交集、并集、补集
- 对于PS选区的初步认识
- UI设计师福利之手把手打造SVG动画应用的微场景