从0学习mongodb4运维与开发-学习视频教程-腾讯课堂https://ke.qq.com/course/3854528?saleToken=2635699&from=pclink

一、linux安装MongoDB:安装MongoDB社区版

1、下载MongoDB Community Server

下载地址:MongoDB Community Download | MongoDB

2、环境准备:linux系统: centos7

#下载MongoDB wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.4.9.tgz tar -zxvf mongodb-linux-x86_64-rhel70-4.4.9.tgz

启动MongoDB Server

#创建dbpath和logpath

mkdir -p /mongodb/data /mongodb/log

#进入mongodb目录,启动mongodb服务

bin/mongod --port=27017 --dbpath=/mongodb/data --logpath=/mongodb/log/mongodb.log \ --bind_ip=0.0.0.0 --fork

--dbpath :指定数据文件存放目录

--logpath :指定日志文件,注意是指定文件不是目录

--logappend :使用追加的方式记录日志

--port:指定端口,默认为27017

--bind_ip:默认只监听localhost网卡

--fork: 后台启动

--auth: 开启认证模式

启动成功

添加环境变量

修改/etc/profile,添加环境变量,方便执行MongoDB命令

export MONGODB_HOME=/usr/local/soft/mongodb

PATH=$PATH:$MONGODB_HOME/bin

然后执行source /etc/profile 重新加载环境变量

利用配置文件启动服务

编辑/mongodb/conf/mongo.conf文件,内容如下:注意:一定要yaml格式

systemLog:destination: filepath: /mongodb/log/mongod.log # log pathlogAppend: true
storage:dbPath: /mongodb/data # data directoryengine: wiredTiger  #存储引擎journal:            #是否启用journal日志enabled: true
net:bindIp: 0.0.0.0port: 27017 # port
processManagement:fork: true

启动mongod(-f 选项表示将使用配置文件启动mongodb)

mongod -f /mongodb/conf/mongo.conf

关闭MongoDB服务

方式1:

mongod --port=27017 --dbpath=/mongodb/data --shutdown

方式2:

进入mongo shell

use admin

db.shutdownServer()

二、Mongo shell 使用

mongo是MongoDB的交互式JavaScript Shell界面,它为系统管理员提供了强大的界面,并为开发人员提供了直接测试数据库查询和操作的方法。

bin/mongo --port=27017

bin/mongo localhost:27017

--port:指定端口,默认为27017

--host:连接的主机地址,默认127.0.0.1

JavaScript支持

mongo shell是基于JavaScript语法的,MongoDB使用了SpiderMonkey作为其内部的JavaScript解释器引擎,这是由Mozilla官方提供的JavaScript内核解释器,该解释器也被同样用于大名鼎鼎的Firefox浏览器产品之中。SpiderMonkey对ECMA Script标准兼容性非常好,可以支持ECMA Script 6。可以通过下面的命令检查JavaScript解释器的版本:

mongo shell常用命令

命令

说明

show dbs | show databases

显示数据库列表

use 数据库名

切换数据库,如果不存在创建数据库

db.dropDatabase()

删除数据库

show collections | show tables

显示当前数据库的集合列表

db.集合名.stats()

查看集合详情

db.集合名.drop()

删除集合

show users

显示当前数据库的用户列表

show roles

显示当前数据库的角色列表

show profile

显示最近发生的操作

load("xxx.js")

执行一个JavaScript脚本文件

exit | quit()

退出当前shell

help

查看mongodb支持哪些命令

db.help()

查询当前数据库支持的方法

db.集合名.help()

显示集合的帮助信息

db.version()

查看数据库版本

数据库操作

#查看所有库

show dbs

# 切换到指定数据库,不存在则创建

use test

# 删除当前数据库

db.dropDatabase()

集合操作

#查看集合

show collections

#创建集合

db.createCollection("emp")

#删除集合

db.emp.drop()

创建集合语法

db.createCollection(name, options)

options参数(注意: 当集合不存在时,向集合中插入文档也会创建集合)

字段

类型

描述

capped

布尔

(可选)如果为true,则创建固定集合。固定集合是指有着固定大小的集合,当达到最大值时,它会自动覆盖最早的文档。

size

数值

(可选)为固定集合指定一个最大值(以字节计)。

如果 capped 为 true,也需要指定该字段。

max

数值

(可选)指定固定集合中包含文档的最大数量。

三、 安全认证

创建管理员账号

# 设置管理员用户名密码需要切换到admin库
use admin
#创建管理员
db.createUser({user:"fox",pwd:"fox",roles:["root"]})
# 查看当前数据库所有用户信息
show users
#显示可设置权限
show roles
#显示所有用户
db.system.users.find() 

常用权限

权限名

描述

read

允许用户读取指定数据库

readWrite

允许用户读写指定数据库

dbAdmin

允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile

dbOwner

允许用户在指定数据库中执行任意操作,增、删、改、查等

userAdmin

允许用户向system.users集合写入,可以在指定数据库里创建、删除和管理用户

clusterAdmin

只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限

readAnyDatabase

只在admin数据库中可用,赋予用户所有数据库的读权限

readWriteAnyDatabase

只在admin数据库中可用,赋予用户所有数据库的读写权限

userAdminAnyDatabase

只在admin数据库中可用,赋予用户所有数据库的userAdmin权限

dbAdminAnyDatabase

只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限

root

只在admin数据库中可用。超级账号,超级权限

重新赋予用户操作权限

db.grantRolesToUser( "fox" , [ { role: "clusterAdmin", db: "admin" } ,{ role: "userAdminAnyDatabase", db: "admin"},{ role: "userAdminAnyDatabase", db: "admin"},{ role: "readWriteAnyDatabase", db: "admin"} ])

删除用户

db.dropUser("fox")
#删除当前数据库所有用户
db.dropAllUser()

用户认证,返回1表示认证成功

创建应用数据库用户

use appdb
db.createUser({user:"appdb",pwd:"fox",roles:["dbOwner"]})

默认情况下,MongoDB不会启用鉴权,以鉴权模式启动MongoDB

mongod -f /mongodb/conf/mongo.conf --auth

启用鉴权之后,连接MongoDB的相关操作都需要提供身份认证。

mongo 192.168.65.174:27017 -u fox -p fox --authenticationDatabase=admin

从0学习mongodb4运维与开发-学习视频教程-腾讯课堂https://ke.qq.com/course/3854528?saleToken=2635699&from=pclink​​​​​​​

Linux 安装MongoDB数据库及命令使用相关推荐

  1. Linux安装mongodb数据库最新版(全网最细)

    Linux安装mongodb数据库最新版 一.下载安装包 二.安装mongodb 1.使用Xftp将压缩包上传到指定目录下: 2.创建mongodb数据存储文件和日志文件 3.将mongodb服务加入 ...

  2. Linux安装MongoDB及简单命令

    1.MongoDB简介 MongoDB是一个基于分布式文件存储的文档数据库,介于关系数据库和非关系数据库之间,是非关系数据库当中功能最丰富.最像关系数据库的一种NoSQL数据库.MongoDB支持的数 ...

  3. windows/Linux 安装 MongoDB 3.6.5

    windows 安装 MongoDB 3.6.5 1.环境说明 安装环境:windows10 64位 安装版本:3.6.5 安装包名称:mongodb-win32-x86_64-2008plus-ss ...

  4. 数据库sql linux,linux安装mysql数据库

    linux安装mysql数据库 环境如下: Linux:CentOS release 6.7(Final) 64位 Mysql:mysql-5.6.31-linux-glibc2.5-x86_64.t ...

  5. mongodb 启动_程序员看过来:如何下载和安装MongoDB数据库?

    我们将介绍如何下载安装MongoDB数据库以及如何在Windows上对该数据库进行访问. A.1 下载并安装MongoDB数据库 请访问MongoDB官网查找并下载适用于你的操作系统的MongoDB数 ...

  6. 安装mongodb数据库

    如何安装mongodb数据库 1.官网下载.msi文件安装包,根据提示安装(这里安装在D盘mongodb文件夹下) 2.在mongodb文件夹中创建一个data文件夹,在data文件夹中再创建一个db ...

  7. mac安装mongodb数据库

    Mac苹果电脑 上如何安装 MongoDb数据库(环境变量配置.数据库配置) 一.下载安装文件 1. 官网下载mongodb数据库安装包 https://www.mongodb.com/downloa ...

  8. linux安装DM7数据库和初始化实例--无图形界面

    linux安装DM7数据库和初始化实例–无图形界面 1.创建安装用户,用户组 #1.创建安装用户组 groupadd -g 12349 dinstall #2.创建安装用户dmdba useradd ...

  9. linux 安装五笔拼音命令

    linux 安装五笔拼音命令 sudo apt install fcitx-table-wubi fcitx-table-wbpy posted on 2017-08-25 16:59 lbsjs 阅 ...

最新文章

  1. ip协议分析实验报告_入门工业通讯之EtherNet/IP协议分析
  2. CentOS6 vsftpd 安装及优化方法
  3. axios delete有请求体吗_封装 axios 取消重复请求
  4. python 并行计算库_Python 大规模数据存储与读取、并行计算:Dask库简述
  5. cocos2d-x初探学习笔记(16)--LayerColor
  6. [Z]POJ 计算几何入门题目推荐[转PKKJ]
  7. Linux下部署多个Tomcat
  8. 【MATLAB】饼图
  9. 别人的Linux私房菜(19)认识与分析日志文件
  10. Kibana和logstash实时日志查询、收集与分析系统
  11. USB SERVER网络远程管理U盾
  12. 【TBSchedule】TBSchedule应用实战手册
  13. indesign怎么拼图_用R来拼图和排版,告别AI和PS(二):调节宽度和高度
  14. 甬台温、温福铁路动车组时刻表
  15. 解决无线路由器wds桥接频繁掉线的办法
  16. TTL expired in transit
  17. EChat(简易聊天项目)七、保存聊天记录
  18. Python开发爬虫之动态网页抓取篇:爬取博客评论数据——通过浏览器审查元素解析真实网页地址...
  19. 北美CS求学找工指南
  20. java猜单词游戏_Java_初级编程,猜英文单词游戏

热门文章

  1. 常用java APl
  2. bootstrap4日期选择器插件tempusdominus-bootstrap-4具体实例
  3. 日本之行(京都、大阪、奈良)
  4. 图-贝尔曼福特(Bellman-Ford)算法详解(含全部代码)
  5. Python exec函数用法
  6. mac自带的备忘录用法
  7. 关于access_log 日志文件以及ip、uv和pv的定义
  8. MySQL(08)——MySQL事务管理
  9. 赢在中国主题曲《在路上》
  10. 马斯克开造人形AI 变形金刚要成真?