- 一、安装并启动MongoDB数据库
- 二、使用配置文件的方式启动MongoDB数据库
- 三、使用MongoDB数据库
- 四、添加数据库用户、安全认证
- 五、MongoDB数据库连接
- 六、Navicat工具连接MongoDB数据库
记录在服务器上面配置MongoDB数据库,以源文件的方式安装MongoDB数据库,制作配置文件,开启MongoDB数据库安全认证,使用远程连接工具连接
正文内容:
一、安装并启动MongoDB数据库
-
使用
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.4.3.tgz
命令直接下载Linux版本的MongoDB,如果下载速度过慢,可以先下载好文件,然后上传到服务器 -
使用
tar -zxvf mongodb-linux-x86_64-rhel62-3.4.3.tgz
解压缩命令将文件解压到指定目录 -
使用
mkdir -p data/db/
命令创建数据目录,mkdir logs/
命令创建日志目录 此时的目录结构如下:
- 使用
vim /etc/profile
命令配置环境变量
在配置文件的末尾添加如下信息(环境变量需要根据主机MongoDB安装目录改变)
export PATH=/usr/local/mongodb/bin:$PATH
- 使用
source /etc/profile
命令让配置文件生效 - 使用下面的命令启动mongoDB
mongod --dbpath=/usr/local/mongodb/data/db/ --logpath=/usr/local/mongodb/logs/mongologs.log -fork
成功启动如下所示:
二、使用配置文件的方式启动MongoDB数据库
注意
:如果跟着笔者安装完MongoDB数据库,此时MongoDB数据库已经启动,需要先关闭MongoDB数据库
使用如下命令关闭MongoDB数据库:
ps -ef|grep mongod
kill -2 进程号
- 使用下面的命令创建配置文件
touch mongod.conf
- 使用下面的命令编辑配置文件(也可以直接使用下面命令进入vim编辑器,编辑完配置文件直接保存)
vim mongod.conf
将如下配置信息编辑到配置文件(请根据自己的MongoDB数据库安装目录更改path和dbPath目录信息)
#数据库路径
dbpath=/usr/local/mongodb/data/db/
#日志输出文件路径
logpath=/usr/local/mongodb/logs/mongodb.log
#错误日志采用追加模式
logappend=true
#启用日志文件,默认启用
journal=true
#这个选项可以过滤掉一些无用的日志信息,若需要调试使用请设置为false
quiet=true
#端口号 默认为27017
port=27017
#允许远程访问
bind_ip=0.0.0.0
#开启子进程
fork=true
#开启认证,必选先添加用户,先不开启(不用验证账号密码)
#auth=true
- 使用下面的命令启动MongoDB服务
mongod -f /usr/local/mongodb/mongod.conf
3-1:如果看见下面图示情况,恭喜你启动失败
出现这样子的情况是因为我们没有正常关闭MongoDB服务,解决方案是:
使用下面的命令正常关闭MongoDB服务即可
输入命令:mongo
,进入到MongoDB命令行
输入命令db.shutdownServer()
即可正常关闭MongoDB服务
输入命令exit
退出MongoDB命令行
3-2:如果看见下面图示情况,恭喜你启动成功
三、使用MongoDB数据库
输入命令mongo
进入MongoDB命令行
此时已经成功进入MongoDB数据库,默认进入的是test数据库,show dbs 查看当前所有数据库
此时我们如果想退出命令行,直接输入exit
命令即可
四、添加数据库用户、安全认证
对于服务器来讲,数据库对外直接暴露是一件不友好的事情,所以我们需要为MongoDB数据库添加用户,增加安全认证
MongoDB副本集默认会创建local、admin数据库,local数据库主要存储副本集的元数据,admin数据库则主要存储MongoDB的用户、角色等信息
也就是说当MongoDB启用auth选项时,用户需要创建数据库帐号,访问时根据帐号信息来鉴权,而数据库帐号信息就存储在admin数据库下
现在我们开始添加数据库用户、安全认证:
- 输入
mongo
命令进入MongoDB命令行 - 输入
use admin
命令使用admin数据库 - 输入
db.createUser({user:"root",pwd:"123456",roles:[{role:"root",db:"admin"}]})
命令添加用户与角色信息到admin数据库 - 输入
db.shutdownServer()
命令正常关闭MongoDB数据库服务 - 输入
vim mongodb.conf
编辑配置文件 开启auth认证
auth=true
配置好后完整的配置文件如下:
#数据库路径
dbpath=/usr/local/mongodb/data/db/
#日志输出文件路径
logpath=/usr/local/mongodb/logs/mongodb.log
#错误日志采用追加模式
logappend=true
#启用日志文件,默认启用
journal=true
#这个选项可以过滤掉一些无用的日志信息,若需要调试使用请设置为false
quiet=true
#端口号 默认为27017
port=27017
#允许远程访问
bind_ip=0.0.0.0
#开启子进程
fork=true
#开启认证,必选先添加用户,先不开启(不用验证账号密码)
auth=true
至此,已经将MongoDB数据库配置完毕
五、MongoDB数据库连接
- 使用如下命令开启MongoDB数据库
mongo -f /usr/local/mongodb/mongodb.conf
正常启动如下图所示
-
使用命令
mongo
进入MongoDB数据库命令行 -
此时我们在命令行输入
show dbs
,此时已经显示没有权限执行命令,说明刚才的添加数据库用户、安全认证操作成功
登录MongoDB数据库
-
使用账户密码登录MongoDB数据库
-
输入命令
use admin
使用admin数据库 -
输入命令
db.auth("root","123456")
进入MongoDB数据库
显示结果会出现1则说明已经成功进入MongoDB数据库,如图所示:
六、Navicat工具连接MongoDB数据库
使用Navicat远程工具连接MongoDB数据库的时候,需要先将云服务器与linux系统防火墙放行端口
云服务器放行端口需要登录运营商云服务器管理平台设置
云服务器设置防火墙只需要添加规则即可,如下图所示:
linux7.6系统防火墙相关设置
- 使用如下命令检验防火墙是否启动
firewall-cmd --state
- 使用如下命令检查系统已经开放的所有端口
firewall-cmd --permanent --zone=public --list-ports
- 使用如下命令开启 27017 端口:
firewall-cmd --zone=public --add-port=27017/tcp --permanent
- 使用如下命令重新启动防火墙
firewall-cmd --reload
- 使用如下命令验证27017 端口是否生效
firewall-cmd --zone=public --query-port=27017/tcp
防火墙的启动与关闭
systemctl start firewalld #启动防火墙
systemctl stop firewalld #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
systemctl enable firewalld.service #设置开机启用防火墙
开启linux7.6系统防火墙命令运行结果如下图所示:
打开Navicat工具输入MongoDB数据库相关信息,测试连接,显示连接成功,则说明所有的配置无误,已经生效,如下图所示: