CentOS 7 MongoDB 安装与配置指南
一、简介
MongoDB 是一个基于文档的 NoSQL 数据库,以其高性能、高可用性和易扩展性在现代应用中扮演了越来越重要的角色,本文将详细介绍如何在 CentOS 7 上安装和配置 MongoDB 4.2.6 版本。
二、准备工作
1. 系统环境检查
在开始之前,需要确保系统是最新的:
sudo yum update y
检查 CentOS 的版本信息:
cat /etc/*release
确认系统内核版本:
uname a
确认系统是否为64位架构:
getconf LONG_BIT
为了确保 MongoDB 正常运行,建议关闭 SELinux 和防火墙:
sudo setenforce 0 sudo systemctl stop firewalld sudo systemctl disable firewalld
2. 安装必要依赖包
MongoDB 需要一些系统库,可以通过以下命令安装:
sudo yum install y mongodborg
这个命令会安装mongodborg
包,该包包含了 MongoDB 的最新稳定版本及其必要的工具和库,如果需要安装特定版本的 MongoDB,可以指定版本号,如mongodborg4.2.6
。
三、安装 MongoDB
1. 下载并解压安装包
从 MongoDB 官方网站下载指定版本的压缩包:
curl O https://fastdl.mongodb.org/linux/mongodblinuxx86_644.2.6.tgz
解压文件:
tar zxvf mongodblinuxx86_644.2.6.tgz
移动到合适的路径,例如/usr/local/mongodb
:
sudo mv mongodblinuxx86_644.2.6 /usr/local/mongodb
创建用户组和用户用于运行 MongoDB 服务:
sudo groupadd mongodb sudo useradd g mongodb m s /bin/bash mongodb
更改文件夹的所属组和所有者:
sudo chown R mongodb:mongodb /usr/local/mongodb
2. 配置环境变量
编辑/etc/profile
文件,添加以下内容:
export PATH=/usr/local/mongodb/bin:$PATH
应用环境变量更改:
source /etc/profile
四、启动 MongoDB 服务
1. 创建日志和数据目录
创建用于存储日志和数据的目录:
sudo mkdir p /var/log/mongodb sudo chown mongodb:mongodb /var/log/mongodb sudo mkdir p /data/db sudo chown mongodb:mongodb /data/db
2. 启动 MongoDB 服务
使用以下命令启动 MongoDB:
mongod dbpath /data/db logpath /var/log/mongodb/mongod.log fork logappend
参数解释:
dbpath
:指定数据库的存储路径。
logpath
:指定日志文件的存储路径。
fork
:允许 MongoDB 在后台运行。
logappend
:日志文件采用追加模式。
3. 验证安装成功与否
检查 MongoDB 服务是否运行正常:
ps ef | grep mongod
尝试连接到 MongoDB:
mongo
如果能够成功进入 MongoDB 的交互式命令行界面,说明 MongoDB 已经安装成功并且运行正常。
五、配置 MongoDB
1. 修改配置文件
MongoDB 的默认配置文件位于/etc/mongod.conf
,可以使用文本编辑器打开该文件进行配置:
sudo nano /etc/mongod.conf
常见的配置项包括:
net.port
:设置监听端口。
bindIp
:绑定 IP 地址,可以设置为0.0.0.0
以允许所有 IP 访问。
security.authorization
:启用基于角色的访问控制。
示例配置:
network interfaces net: port: 27017 bindIp: 0.0.0.0 # 允许所有IP访问 security options security: authorization: enabled
保存并退出后,重启 MongoDB 服务使配置生效:
sudo systemctl restart mongod
2. 创建管理员用户
在 MongoDB shell 中创建管理员用户:
use admin db.createUser({ user: "admin", pwd: "password123", roles: [{ role: "userAdminAnyDatabase", db: "admin" }, { role: "readWriteAnyDatabase", db: "admin" }] })
这会创建一个具有所有数据库管理权限的管理员用户。
六、常见问题及解决措施(FAQs)
问题1:如何更改 MongoDB 数据存储路径?
更改数据存储路径需要在启动 MongoDB 时通过dbpath
参数指定新的路径,或者在配置文件中修改storage.dbPath
选项。
storage: dbPath: /new/data/path
然后重启 MongoDB 服务:
sudo systemctl restart mongod
问题2:如何启用 MongoDB 的日志记录功能?
MongoDB 默认启用日志记录功能,日志文件的位置可以通过logpath
参数指定,如果需要更改日志配置,可以在配置文件中设置systemLog
选项:
systemLog: destination: file path: /var/log/mongodb/mongod.log logAppend: true
保存并退出后,重启 MongoDB 服务使配置生效:
sudo systemctl restart mongod