ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

MongoDB从入门到实战(二):MongoDB安装

2021-04-10 21:02:37  阅读:185  来源: 互联网

标签:实战 mongod 入门 admin MongoDB 数据库 db mongodb test


一:下载并解压

https://www.mongodb.com/try/download/community 或者 https://www.mongodb.com/download-center/community/releases

在这里插入图片描述

在mongodb根目录下创建config、data/db、log文件夹。
在这里插入图片描述

二:启动服务

2.1 方式一

在命令行中指定启动参数。

cd ~/Softwares/mongodb-4.4.5
# 启动服务
./bin/mongod --dbpath ./data/db

# 查看是否启动成功
ps -ef | grep mongod

2.2 方式二(推荐)

在配置文件(mongodb-4.4.5/config/mongod.conf)中指定启动参数。

systemLog:
  # MongoDB发送所有日志输出的目标指定为文件
  destination: file
  #mongod或mongos应向其发送所有诊断日志记录信息的日志文件的路径
  path: "/Users/mengday/Softwares/mongodb-4.4.4/log/mongod.log"
  #当mongos或mongod实例重新启动时,mongos或mongod会将新条目附加到现有日志文件的末尾
  logAppend: true
storage:
  #mongod实例存储其数据的目录。storage.dbPath设置仅适用于mongod。
  #The directory where the mongod instance stores its data.Default Value is "/data/db".
  dbPath: "/Users/mengday/Softwares/mongodb-4.4.4/data/db"
  journal:
    #启用或禁用持久性日志以确保数据文件保持有效和可恢复。
    enabled: true
net:
  #服务实例绑定的IP,默认是localhost,多个用逗号分隔
  #bindIp: 127.0.0.1
  #绑定的端口,默认是27017
  port: 27017
setParameter:
  enableLocalhostAuthBypass: false
./bin/mongod -f ./config/mongod.conf
或
./bin/mongod --config ./config/mongod.conf

# 查看是否启动成功
ps -ef | grep mongod

三:MongoDB Shell

3.1 启动Shell

# 1. 启动MongoDB Shell
mongo
或
mongo --host=127.0.0.1 --port=27017

# 数据库 帮助命令
db.help()
# 集合 帮助命令
db.collection.help()

3.2 为数据库创建用户名

mongodb密码和传统数据如mysql等有些区别: mongodb的用户名和密码是基于每个数据库的,而不是基于整个数据库实例的。所以所有数据库db都需要设置自己的密码。

# 2.查看所有数据库
> show dbs
admin   0.000GB
config  0.000GB
local   0.000GB

# 3.切换数据库,进入admin数据库
> use admin

# 4.在admin数据库上创建管理员账户
# mongodb中的用户是基于身份role的,该管理员账户的role是userAdminAnyDatabase。
# admin用户用于管理账号,不能进行关闭数据库等操作。
> db.createUser({ 
	user: "admin", 
    pwd: "admin", 
    roles: [{ role: "userAdminAnyDatabase", db: "admin" }] 
})


# 5.在admin数据库上创建root用户
# 创建完admin管理员,创建一个超级管理员root。角色root, root角色用于关闭数据库 db.shutdownServer()。
> db.createUser({
	user: "root",
	pwd: "root", 
	roles: [ { role: "root", db: "admin" } ]
})


# 6. 切换到自己的test数据库,数据库可以存在也可以是不存在的
> use test

# 7. 为test数据库添加账号为test,密码为test
# role: "dbOwner"代表数据库所有者角色,拥有最高该数据库最高权限。
# 比如新建索引等当账号管理员和超级管理员,可以为自己的数据库创建用户了。
# 注意:在创建自定义用户时,一定要切换到所在数据库上去创建用户,不然创建的用户还是属于admin。
# 如果是读写角色的话,权限设置为role: "readWrite"
> db.createUser({
	user: "mongo",
	pwd: "123456", 
	roles: [ { role: "dbOwner", db: "test" } ]
})

# 8.查看用户
> show users
{
	"_id" : "test.mongo",
	"userId" : UUID("003e7cec-0d8a-4ce1-b09c-b6730be53570"),
	"user" : "mongo",
	"db" : "test",
	"roles" : [
		{
			"role" : "dbOwner",
			"db" : "test"
		}
	],
	"mechanisms" : [
		"SCRAM-SHA-1",
		"SCRAM-SHA-256"
	]
}


# 退出mongo shell
> exit

四:MongoDB Compass

Compass是MongoDB退出的一款客户端工具,类似于MySQL中的Navicat一样, 可以创建数据库、创建集合、修改文档等操作。下载地址:https://www.mongodb.com/products/compass

在这里插入图片描述

在这里插入图片描述

标签:实战,mongod,入门,admin,MongoDB,数据库,db,mongodb,test
来源: https://blog.csdn.net/vbirdbest/article/details/115583008

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有