Ubuntu 安装配置 Mongodb

首先去官网下载对应的包,这里是针对 Ubuntu 系统的 mongodb-linux-x86_64-ubuntu1604-4.2.8.tgz 包

官网地址:https://www.mongodb.com/try/download/community

1.安装

为了能做到全局控制,这里使用 tgz 包方式安装

# 解包
$ tar -zxvf mongodb-linux-x86_64-ubuntu1604-4.2.8.tgz

# 移动到 /usr/local/mongodb 下
$ mv xxx /usr/local/mongodb

2.配置

2.1配置 Mongodb 启动参数

配置文件我这里放在 mongodb 安装目录下

# 详细记录输出
verbose = true

# 绑定IP
bind_ip = 0.0.0.0
# 指定服务端口号
port = 27017

# 指定日志文件,注意是指定文件不是目录
logpath = /var/log/mongodb/logs/mongodb.log
# 使用追加方式写日志
logappend = true

# 指定数据库路径
dbpath = /var/lib/mongodb/db
# 设置每个数据库将被保存在一个单独的目录
directoryperdb = true

# 启用验证
auth = true

# 以守护进程的方式运行MongoDB,创建服务器进程
fork = true
# 安静退出
quiet = true

auth 字段需要配合数据库账户一起使用

2.2配置自动启动服务

# 创建自启动服务文件
$ cd /etc/systemd/system
$ vim mongodb.service

自动启动配置内容

# 自动启动配置
[Unit]
Description=High-performance, schema-free document-oriented database
After=network.target
 
[Service]
# 注意这个地方是个坑,如果你的mongodb配置文件中设置的作为守护线程运行,下面这一行一定要加上
Type=forking
User=star
ExecStart=/usr/local/mongodb/bin/mongod -f /etc/mongod.conf
 
[Install]
WantedBy=multi-user.target

2.3链接测试

启用验证之后,链接数据库就需要账户密码认证了

# 连接数据库
$ mongo
# 认证数据库
$ db.auth("user", "password")

3.卸载清除

当不需要,或者出现问题,需要卸载重装,必须先清空之前的软件和数据

# 卸载软件包
$ apt-get purge <package-name>

# 清空数据
$ dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P

4.忘记密码的处理

Mongodb忘记密码的处理办法较mysql等数据库而言方法显得更加暴力,处理方式如下:

4.1修改配置文件

# 查看配置文件路径,通过查看进程的方式查看配置文件
$ ps -ef|grep mongod
# 编辑配置文件
$ vim /usr/local/mongodb/mongodb.conf

...

# 修改 2.1 节配置文件,将其中的auth=true用户验证的配置注释掉,关闭认证
#auth = true

4.2重启Mongodb

如果部署了mongodb服务,可以直接重启服务

# 重启mongodb
service mongodb stop
service mongodb start

4.3修改密码

此时这时候登录就不需要密码认证,可以进行修改密码的处理,这里是将原有用户全部删除,然后重建

# 链接数据
$ mongo 

$ use admin
# 查看现有用户
$ db.system.users.find()
# 删除现有用户
$ db.system.users.remove({})

# 创建超管账户
$ db.createUser({"user": "root", "pwd": "你自己的密码", "roles":["root"]})

# 切换到自己需要控制的数据库
$ use vmmatch
# 创建普通账户
$ db.createUser({"user": "match", "pwd": "123456", "roles": [{"role": "readWrite", "db": "vmmatch"}]})

4.4还原配置并重启

密码修改后再将配置文件还原,使用认证方式登录

再如第2步的方式重启Mongodb即可

注: 在处理过程中建议先备份数据库,之后再进行操作。另外例子中是删除了所有用户,之后需要还原或者重建需要的用户。

穿裤衩闯天下

穿裤衩闯天下

👨‍🌾‍爱生活 👨‍💻‍爱编程 🎨爱画画 🍙爱动漫 🎮爱游戏 👨‍💻‍Android 攻城狮 😎个人名言:慢慢来,一步一个脚印 👣
地球

@吐槽交流