服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - MongoDB - Mac下安装配置mongodb并创建用户的方法

Mac下安装配置mongodb并创建用户的方法

2020-05-17 16:45ZARR MongoDB

最近在在学习nodejs,相比mysql,mongodb与nodejs搭配更合适,存储数据格式也比较接近JS对象。下面这篇文章主要给大家介绍了关于在Mac下安装配置mongodb并创建用户的相关资料,需要的朋友可以参考下

前言

mongodb数据库相信不用多介绍,大家都不陌生,好久之前曾经安装过mongodb,在一个偶然的情况下被一个大佬直接登陆进来了,刚开始惊呼还有这种操作,后来才发现自己并没有给数据库上锁,并且在安装完mongodb默认启动的时候默认是任何ip都可以不需要密码直接访问的。

好了,废话不多说,开始今天的正文

安装mongodb

安装mongodb有三种方式:

1、直接下载安装

MongoDB 提供了 OSX 平台上 64 位的安装包,你可以在官网下载安装包。

下载地址:[https://www.mongodb.com/download-center#community][1]

2、通过mac自带的curl安装

?
1
2
3
4
5
6
7
8
# 进入 /usr/local
cd /usr/local
# 下载
sudo curl -O https://fastdl.mongodb.org/osx/mongodb-osx-x86_64-3.4.2.tgz
# 解压
sudo tar -zxvf mongodb-osx-x86_64-3.4.2.tgz
# 重命名为 mongodb 目录
sudo mv mongodb-osx-x86_64-3.4.2 mongodb

3、通过brew安装

?
1
sudo brew install mongodb

新建日志文件,mongodb配置文件和数据库存放路径

(如果以下的文件夹创建不成功或者提示没有权限的话在命令前面加上sudo)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#进入mac根目录
cd /mongoData
 
#新建文件夹mongoData
mkdir mongoData
 
#新建三个文件夹分别是db(存放数据库数据),etc(mongodb配置文件),logs(日志文件)
mkdir db etc logs
 
在etc和log下分别创建配置文件和日志文件
cd etc
touch mongo.conf
cd logs
touch mongo.log

接下来修改mongodb的配置文件

?
1
2
#vim编辑配置文件
vim mongo.conf

mongdb的配置文件字段有好多,我展示一下我的配置文件

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#数据库路径
dbpath=/mongoData/db/
 
#日志输出文件路径
logpath=/mongoData/logs/mongo.log
 
#错误日志采用追加模式,配置这个选项后mongodb的日志会追加到现有的日志文件,而不是从新创建一个新文件
logappend=true
 
#启用日志文件,默认启用
journal=true
 
#这个选项可以过滤掉一些无用的日志信息,若需要调试使用请设置为false
quiet=false
 
#是否后台启动,有这个参数,就可以实现后台运行
fork=true
 
#端口号 默认为27017
port=27017
 
#指定存储引擎(默认不需要指定)
#storageEngine=mmapv1
 
#开启认证
auth = true

将上面的配置字段复制进去并且保存

启动mongodb

?
1
2
3
4
5
#进入mongdb安装目录
cd /usr/local/mongodb/bin
 
#通过配置文件的方式启动mongdb
./mongod -f /mongoData/etc/mongo.conf

如果出现successful就表示服务已经启动成功

配置超级用户和用户

?
1
2
3
4
5
6
7
8
#进入mongodb
./mongo
 
#使用admin数据库
use admin
 
#查看有所有数据库
show dbs

不出意外的话会提示没有权限,因为我们是以配置文件启动的mongodb,并且配置文件中我们开启了认证将auth字段设置成了true

这个时候我们就应该开始配置用户

创建超级管理员用户

?
1
2
3
4
use admin
db.createUser({user:"admin",pwd:"password",roles:["root"]}) //admin这个数据库是系统自带的数据库,他的用户可以访问任何其他数据库的数据,也叫做超级管理员
db.auth("admin","password") // => 1 表示验证通过 0表示验证失败
show dbs //=>admin 0.000GB blog 0.000GB config 0.000GB

这样就展示出所有的数据库了

创建普通用户(某个数据库的用户)

?
1
2
3
4
5
use admin //=>进入admin数据库
db.auth("admin","password") //=> 通过超级管理员验证
use blog
db.createUser({user: "blog", pwd: "password", roles: [{ role: "dbOwner", db: "blog" }]})
show dbs => admin 0.000GB blog 0.000GB config 0.000GB local 0.000GB

这样就创建了单独关于blog这个数据库的账户了,账号是blog,密码是password

这里我们要注意一点,给创建普通数据库用户的时候要是在超级管理员验证完之后创建

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对服务器之家的支持。

原文链接:https://segmentfault.com/a/1190000014740252

延伸 · 阅读

精彩推荐
  • MongoDBMongoDB系列教程(五):mongo语法和mysql语法对比学习

    MongoDB系列教程(五):mongo语法和mysql语法对比学习

    这篇文章主要介绍了MongoDB系列教程(五):mongo语法和mysql语法对比学习,本文对熟悉Mysql数据库的同学来说帮助很大,用对比的方式可以快速学习到MongoDB的命...

    MongoDB教程网3252020-05-01
  • MongoDBMongoDB查询之高级操作详解(多条件查询、正则匹配查询等)

    MongoDB查询之高级操作详解(多条件查询、正则匹配查询等)

    这篇文章主要给大家介绍了关于MongoDB查询之高级操作(多条件查询、正则匹配查询等)的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者...

    w田翔3872020-12-19
  • MongoDBWindows下MongoDB配置用户权限实例

    Windows下MongoDB配置用户权限实例

    这篇文章主要介绍了Windows下MongoDB配置用户权限实例,本文实现需要输入用户名、密码才可以访问MongoDB数据库,需要的朋友可以参考下 ...

    MongoDB教程网3082020-04-29
  • MongoDBMongodb索引的优化

    Mongodb索引的优化

    MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。接下来通过本文给大家介绍Mongodb索引的优化,本文介绍的非常详细,具有参考借鉴价值,感...

    MRR3252020-05-05
  • MongoDBMongoDB多条件模糊查询示例代码

    MongoDB多条件模糊查询示例代码

    这篇文章主要给大家介绍了关于MongoDB多条件模糊查询的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用MongoDB具有一定的参考学习价值...

    浅夏晴空5902020-05-25
  • MongoDBmongodb数据库基础知识之连表查询

    mongodb数据库基础知识之连表查询

    这篇文章主要给大家介绍了关于mongodb数据库基础知识之连表查询的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用mongodb具有一定的参...

    ZJW02155642020-05-22
  • MongoDB在mac系统下安装与配置mongoDB数据库

    在mac系统下安装与配置mongoDB数据库

    这篇文章主要介绍了在mac系统下安装与配置mongoDB数据库的操作步骤,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪...

    CXYhh1219312021-11-14
  • MongoDBMongoDB的索引

    MongoDB的索引

    数据库中的索引就是用来提高查询操作的性能,但是会影响插入、更新和删除的效率,因为数据库不仅要执行这些操作,还要负责索引的更新 ...

    MongoDB教程网2532020-05-12