centos 安装mongodb
以下是在CentOS系统上安装MongoDB的详细步骤指南,涵盖版本选择、安装配置、服务管理及验证流程:
---
### 一、版本选择与系统兼容性
- **推荐版本**:
根据资料显示,官方推荐通过Yum仓库安装最新稳定版(如7.0)。若需特定版本(如4.4或6.0),需调整仓库配置。
- **系统要求**:
- CentOS 7及以上支持MongoDB 4.0~7.0版本。
- MongoDB 5.0+需CPU支持AVX指令集,若安装失败提示“Illegal instruction”,需降级至4.4版本。
---
### 二、通过Yum仓库安装MongoDB(推荐)
#### 1. 配置Yum仓库
```bash
# 创建MongoDB仓库文件(以6.0版本为例)
sudo vi /etc/yum.repos.d/mongodb-org-6.0.repo
```
输入以下内容(其他版本需替换版本号和URL):
```ini
[mongodb-org-6.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/6.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-6.0.asc
```
#### 2. 安装MongoDB
```bash
# 安装MongoDB及其组件
sudo yum install -y mongodb-org
```
- 此命令将安装`mongod`(服务端)、`mongos`(分片路由)、`mongo shell`等组件。
#### 3. 启动服务并设置开机自启
```bash
# 启动服务
sudo systemctl start mongod
# 设置开机自启
sudo systemctl enable mongod
# 检查服务状态
sudo systemctl status mongod
```
- 若状态显示`active (running)`表示启动成功。
---
### 三、配置MongoDB
#### 1. 修改配置文件
```bash
sudo vi /etc/mongod.conf
```
- **远程访问**:将`bindIp: 127.0.0.1`改为`0.0.0.0`。
- **启用认证**(可选):添加以下内容以启用密码验证:
```yaml
security:
authorization: enabled
```
#### 2. 开放防火墙端口(若需远程访问)
```bash
sudo firewall-cmd --zone=public --add-port=27017/tcp --permanent
sudo firewall-cmd --reload
```
#### 3. 重启服务应用配置
```bash
sudo systemctl restart mongod
```
---
### 四、验证安装与基本操作
#### 1. 检查版本
```bash
mongod --version
# 输出应包含类似 "db version v6.0.x"
```
#### 2. 连接MongoDB Shell
```bash
mongo
```
- 执行简单命令验证数据库操作:
```js
> show dbs // 显示所有数据库
> use testdb // 切换到testdb数据库
> db.users.insertOne({name: "John", age: 30}) // 插入文档
> db.users.find() // 查询数据
```
#### 3. 查看日志确认服务状态
```bash
tail -f /var/log/mongodb/mongod.log
```
- 日志中出现`Waiting for connections`表示服务正常运行。
---
### 五、高级配置(可选)
#### 1. 创建管理员用户(启用认证后)
```js
use admin
db.createUser({
user: "admin",
pwd: "securePassword",
roles: ["root"]
})
```
- 重启服务后需使用`mongo -u admin -p --authenticationDatabase admin`登录。
#### 2. 数据目录与日志管理
- **默认路径**:
- 数据目录:`/var/lib/mongo`
- 日志文件:`/var/log/mongodb/mongod.log`
- **自定义路径**:在`/etc/mongod.conf`中修改`storage.dbPath`和`systemLog.path`。
---
### 六、常见问题解决
1. **依赖缺失**:
若安装失败,确保已安装`libcurl`、`openssl`等依赖:
```bash
sudo yum install libcurl openssl xz-libs
```
2. **SELinux限制**:
临时禁用或配置SELinux策略允许MongoDB运行:
```bash
sudo setenforce 0 # 临时禁用
# 或永久修改/etc/selinux/config为disabled
```
3. **旧版本残留冲突**:
完全卸载旧版本后再安装新版本:
```bash
sudo yum remove mongodb-org*
sudo rm -rf /var/lib/mongo /var/log/mongodb
```
---
### 七、引用资料
- 仓库配置与安装命令:
- 服务管理:
- 配置文件修改:
- 验证步骤:
- 高级配置与问题解决:
通过以上步骤,可顺利完成CentOS系统下MongoDB的安装与配置。根据实际需求调整版本和安全设置,并参考官方文档保持最佳实践。