参考:
https://blog.csdn.net/yzh_1346983557/article/details/81735755
安装环境
CentOS 7.6.1810,mongodb 4.0.12
安装步骤
1 下载安装包
mongdb下载路径为:https://www.mongodb.com/dr/fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.12.tgz/download
或在centos上直接下载(国内下载的很慢)
curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.12.tgz # 下载
2 安装mongodb和Studio3T安装
2.1 安装mongodb
mondb压缩包已经进行编译,解压即可运行。
假定
解压mongodb安装包并移动至安装目录
tar -zxvf mongodb-linux-x86_64-4.0.12.tgz # 解压
mv mongodb-linux-x86_64-4.0.12/ # 将解压包拷贝到指定目录
2.2 安装studio3T
Studio3T下载路径(Windows版本):https://studio3t.com/download-thank-you/?OS=win64
3 环境变量及配置文件
3.1 环境变量
运行命令
vim /etc/profile
在文件末尾新增环境变量
#mongodb
export PATH=$PATH:/bin
3.2 配置文件设置
新建数据文件目录
mkdir /data/mongodb/db #新增数据库存储目录
mkdir /data/mongodb/logs #新增日志存储目录
在
cd /bin #进入bin目录下
vim mongodb.conf #创建配置文件并编辑
向mongo.conf写入以下配置
#数据文件存放目录
dbpath = /data/mongodb/db
#日志文件存放目录
logpath = /data/mongodb/logs/mongodb.log
#错误日志采用追加模式
logappend=true
#启用日志文件,默认启用
journal=true
#这个选项可以过滤掉一些无用的日志信息,若需要调试使用请设置为false
quiet=true
#端口
port = 27017
#以守护程序的方式启用,即在后台运行
fork = true
#需要认证。如果放开注释,就必须创建MongoDB的账号,使用账号与密码才可远程访问,第一次安装建议注释
#auth=true
#允许远程访问,或者直接注释,127.0.0.1是只允许本地访问
bind_ip=0.0.0.0
#设置内存大小
wiredTigerCacheSizeGB=1
若不设置wiredTigerCacheSizeGB大小,mongodb服务会根据本机内存设置内存大小:
Starting in 3.4, the WiredTiger internal cache, by default, will use the larger of either:
50% of RAM minus 1 GB, or
256 MB.
4 启停Mongodb服务
4.1 启动Mongodb
#进入bin目录下
cd /bin
##加载配置文件方式启动
./mongod -f mongodb.conf
4.2 停止Mongodb服务
(1)mongod命令关闭
./mongod --shutdown --dbpath=/data/mongodb/db
注意:使用--shutdown会使用默认的/data/db作为dbpath的路径,因此要指定--dbpath=/data/mongodb/db才能使--shutdown生效
mongod 命令的 shutdown 选项能干净的关闭 MongoDB 服务,会释放内存中MongoDB占用的内存,推荐。
(2)kill进程
ps -ef |grep mongo
kill -9 进程号
强制杀死mongodb进程,有时可能会出现错误关不掉时就可使用这种强制方式,但注意这种方式可能并不会马上释放内存中MongoDB占用的内存,且如果这时候有数据往MongoDB新增可能会导致数据丢失。
(3)使用命令
pkill mongodb
5 创建用户账号
初次创建用户账号的的时候,最好注释mongodb.conf中auth属性。
在admin数据库下创建全局的超级管理员账号,此账号可以管理所有数据库
cd /bin
#j进入mongodb管理命令行
./mongo
#进入admin数据库
use admin
#创建超级管理员账号,生产上用户名密码应该比较复杂
db.createUser(
{
user:"root",
pwd:"root",
roles:[{role:"root",db:"admin"}]
}
)
退出命令行
exit
在mongodb.conf增加
//开启账号验证
auth=true
重新启动mongodb服务
进入mongodb命令行
./mongo
使用root账号授权
#前一个参数用户名,后一个参数密码
db.auth("root","root")
这样就可以使用root权限操作数据库了