在Linux系统上安装 MongoDB 数据库可能对新手来说有些挑战。下面将以 Ubuntu 系统为例,详细介绍在Linux系统上安装MongoDB的步骤。?
? 前言
<span style="color:red">MongoDB</span> 是一个基于分布式文件存储的开源NoSQL数据库,被广泛应用于现代应用程序开发中。它以其高性能、高可用性和自动扩展等特性,成为开发者的首选。
? 安装步骤概览
flowchart TD
A[开始] --> B[导入公钥]
B --> C[添加MongoDB源]
C --> D[更新包数据库]
D --> E[安装MongoDB]
E --> F[启动并配置MongoDB]
F --> G[测试安装]
G --> H[结束]
? 详细安装步骤
步骤一:导入MongoDB公钥?
首先,导入MongoDB官方提供的GPG公钥,以确保安装包的合法性。
wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -
解释:
wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc
:使用wget
命令以静默模式下载MongoDB 6.0版本的公钥,并将输出定向到标准输出。sudo apt-key add -
:以超级用户权限将标准输入中的公钥添加到系统的可信任密钥列表。步骤二:添加MongoDB源?
创建一个指向MongoDB官方软件仓库的列表文件。
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu $(lsb_release -sc)/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
解释:
echo "..."
:输出一段字符串。deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu $(lsb_release -sc)/mongodb-org/6.0 multiverse
:指定了MongoDB软件包的下载地址。arch=amd64,arm64
:适用于64位系统。$(lsb_release -sc)
:获取Ubuntu的代号,如focal
。sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
:将输出内容写入到指定的列表文件中。步骤三:更新本地包数据库?
更新系统的包列表,以识别新添加的MongoDB源。
sudo apt-get update
解释:
sudo apt-get update
:以超级用户权限更新包管理器的本地索引。步骤四:安装MongoDB?
安装最新稳定版本的MongoDB。
sudo apt-get install -y mongodb-org
解释:
sudo apt-get install -y mongodb-org
:以超级用户权限安装MongoDB,-y
选项表示自动确认安装。步骤五:启动并配置MongoDB⚙️
1. 启动MongoDB服务
sudo systemctl start mongod
解释:
sudo systemctl start mongod
:以超级用户权限启动MongoDB服务。2. 设置MongoDB服务开机自启
sudo systemctl enable mongod
解释:
sudo systemctl enable mongod
:配置MongoDB服务在系统启动时自动运行。步骤六:验证MongoDB是否成功运行✅
sudo systemctl status mongod
解释:
sudo systemctl status mongod
:查看MongoDB服务的运行状态。如果显示为 active (running),则表示启动成功。? 重要配置说明
修改配置文件
MongoDB的默认配置文件位于
/etc/mongod.conf
。根据需要,可以修改以下配置:- 绑定IP地址:默认情况下,MongoDB只监听本地
127.0.0.1
。如果需要远程连接,需要修改为0.0.0.0
。示例:
# network interfaces net: port: 27017 bindIp: 0.0.0.0
解释:
net.port
:设置MongoDB监听的端口,默认是 27017。net.bindIp
:设置MongoDB绑定的IP地址,0.0.0.0
表示监听所有网络接口。重启MongoDB服务
在修改配置文件后,需要重启服务使配置生效。
sudo systemctl restart mongod
解释:
sudo systemctl restart mongod
:以超级用户权限重启MongoDB服务。? 安全性设置
为了确保数据库的安全,建议启用身份验证。
创建管理员用户
mongo
进入MongoDB Shell后,执行以下命令:
use admin db.createUser({ user: "admin", pwd: "your_password", roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] })
解释:
use admin
:切换到 admin 数据库。db.createUser({...})
:创建一个名为 admin 的用户,具有在所有数据库上管理用户的权限。启用身份验证
在配置文件
/etc/mongod.conf
中,找到并修改以下内容:security: authorization: enabled
解释:
security.authorization
:启用后,MongoDB将要求所有客户端进行身份验证。重启MongoDB服务
sudo systemctl restart mongod
? 测试连接
使用新创建的管理员账户连接MongoDB:
mongo -u admin -p your_password --authenticationDatabase admin
解释:
mongo
:启动MongoDB Shell。-u admin
:指定用户名为 admin。-p your_password
:指定密码。--authenticationDatabase admin
:指定认证数据库为 admin。? 安装流程图
flowchart LR A[开始安装] --> B[导入公钥] B --> C[添加MongoDB源] C --> D[更新包数据库] D --> E[安装MongoDB] E --> F[启动MongoDB服务] F --> G{是否需要远程连接?} G -- 是 --> H[修改配置文件] H --> I[重启MongoDB服务] G -- 否 --> J[直接测试] I --> J[测试MongoDB] J --> K[安装完成]
? 注意事项
- <span style="color:red">防火墙配置</span>:如果需要远程连接,确保防火墙开放了 27017 端口。
- <span style="color:red">数据备份</span>:定期备份数据库数据,防止意外丢失。
? 防火墙设置(以UFW为例)
sudo ufw allow 27017
解释:
sudo ufw allow 27017
:在UFW防火墙中允许 27017 端口的访问。? 卸载MongoDB(可选)
如果需要卸载MongoDB,可以执行以下命令:
sudo apt-get purge mongodb-org* sudo rm -r /var/log/mongodb sudo rm -r /var/lib/mongodb
解释:
sudo apt-get purge mongodb-org*
:卸载MongoDB包及其配置文件。sudo rm -r /var/log/mongodb
:删除MongoDB的日志文件。sudo rm -r /var/lib/mongodb
:删除MongoDB的数据文件。希望本教程能帮助您在 Ubuntu 等Linux系统上成功安装和配置 MongoDB 数据库!?
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...