前言
mongodb数据库相信不用多介绍,大家都不陌生,好久之前曾经安装过mongodb,在一个偶然的情况下被一个大佬直接登陆进来了,刚开始惊呼还有这种操作,后来才发现自己并没有给数据库上锁,并且在安装完mongodb默认启动的时候默认是任何ip都可以不需要密码直接访问的。
好了,废话不多说,开始今天的正文
安装mongodb
安装mongodb有三种方式:
1、直接下载安装
MongoDB 提供了 OSX 平台上 64 位的安装包,你可以在官网下载安装包。
下载地址:[https://www.mongodb.com/download-center#community][1]
2、通过mac自带的curl安装
# 进入 /usr/localcd /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安装
sudo brew install mongodb
新建日志文件,mongodb配置文件和数据库存放路径
(如果以下的文件夹创建不成功或者提示没有权限的话在命令前面加上sudo)
#进入mac根目录cd /mongoData#新建文件夹mongoDatamkdir mongoData#新建三个文件夹分别是db(存放数据库数据),etc(mongodb配置文件),logs(日志文件)mkdir db etc logs在etc和log下分别创建配置文件和日志文件cd etctouch mongo.confcd logs touch mongo.log
接下来修改mongodb的配置文件
#vim编辑配置文件vim mongo.conf
mongdb的配置文件字段有好多,我展示一下我的配置文件
#数据库路径dbpath=/mongoData/db/#日志输出文件路径logpath=/mongoData/logs/mongo.log#错误日志采用追加模式,配置这个选项后mongodb的日志会追加到现有的日志文件,而不是从新创建一个新文件logappend=true#启用日志文件,默认启用journal=true#这个选项可以过滤掉一些无用的日志信息,若需要调试使用请设置为falsequiet=false#是否后台启动,有这个参数,就可以实现后台运行fork=true#端口号 默认为27017port=27017#指定存储引擎(默认不需要指定)#storageEngine=mmapv1#开启认证auth = true
将上面的配置字段复制进去并且保存
启动mongodb
#进入mongdb安装目录cd /usr/local/mongodb/bin#通过配置文件的方式启动mongdb./mongod -f /mongoData/etc/mongo.conf
如果出现successful就表示服务已经启动成功
配置超级用户和用户
#进入mongodb./mongo#使用admin数据库use admin#查看有所有数据库show dbs
不出意外的话会提示没有权限,因为我们是以配置文件启动的mongodb,并且配置文件中我们开启了认证将auth字段设置成了true
这个时候我们就应该开始配置用户
创建超级管理员用户
use admindb.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
这样就展示出所有的数据库了
创建普通用户(某个数据库的用户)
use admin //=>进入admin数据库db.auth("admin","password") //=> 通过超级管理员验证use blogdb.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
这里我们要注意一点,给创建普通数据库用户的时候要是在超级管理员验证完之后创建
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对武林网的支持。
新闻热点
疑难解答