Loading... # Ubuntu等Linux系统详细安装MongoDB教程 在Linux系统上安装 **MongoDB** 数据库可能对新手来说有些挑战。下面将以 **Ubuntu** 系统为例,详细介绍在Linux系统上安装MongoDB的步骤。😊 ## 📌 前言 **<span style="color:red">MongoDB</span>** 是一个基于分布式文件存储的开源NoSQL数据库,被广泛应用于现代应用程序开发中。它以其高性能、高可用性和自动扩展等特性,成为开发者的首选。 ## 🛠 安装步骤概览 ```mermaid flowchart TD A[开始] --> B[导入公钥] B --> C[添加MongoDB源] C --> D[更新包数据库] D --> E[安装MongoDB] E --> F[启动并配置MongoDB] F --> G[测试安装] G --> H[结束] ``` ## 📖 详细安装步骤 ### **步骤一:导入MongoDB公钥🔑** 首先,导入MongoDB官方提供的GPG公钥,以确保安装包的合法性。 ```bash 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官方软件仓库的列表文件。 ```bash 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源。 ```bash sudo apt-get update ``` #### **解释:** - `sudo apt-get update`:以超级用户权限更新包管理器的本地索引。 ### **步骤四:安装MongoDB🚀** 安装最新稳定版本的MongoDB。 ```bash sudo apt-get install -y mongodb-org ``` #### **解释:** - `sudo apt-get install -y mongodb-org`:以超级用户权限安装MongoDB,`-y` 选项表示自动确认安装。 ### **步骤五:启动并配置MongoDB⚙️** #### **1. 启动MongoDB服务** ```bash sudo systemctl start mongod ``` #### **解释:** - `sudo systemctl start mongod`:以超级用户权限启动MongoDB服务。 #### **2. 设置MongoDB服务开机自启** ```bash sudo systemctl enable mongod ``` #### **解释:** - `sudo systemctl enable mongod`:配置MongoDB服务在系统启动时自动运行。 ### **步骤六:验证MongoDB是否成功运行✅** ```bash 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`。 #### **示例:** ```yaml # network interfaces net: port: 27017 bindIp: 0.0.0.0 ``` #### **解释:** - `net.port`:设置MongoDB监听的端口,默认是 **27017**。 - `net.bindIp`:设置MongoDB绑定的IP地址,`0.0.0.0` 表示监听所有网络接口。 ### **重启MongoDB服务** 在修改配置文件后,需要重启服务使配置生效。 ```bash sudo systemctl restart mongod ``` #### **解释:** - `sudo systemctl restart mongod`:以超级用户权限重启MongoDB服务。 ## 🔒 安全性设置 为了确保数据库的安全,建议启用身份验证。 ### **创建管理员用户** ```bash mongo ``` 进入MongoDB Shell后,执行以下命令: ```javascript use admin db.createUser({ user: "admin", pwd: "your_password", roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] }) ``` #### **解释:** - `use admin`:切换到 **admin** 数据库。 - `db.createUser({...})`:创建一个名为 **admin** 的用户,具有在所有数据库上管理用户的权限。 ### **启用身份验证** 在配置文件 `/etc/mongod.conf` 中,找到并修改以下内容: ```yaml security: authorization: enabled ``` #### **解释:** - `security.authorization`:启用后,MongoDB将要求所有客户端进行身份验证。 ### **重启MongoDB服务** ```bash sudo systemctl restart mongod ``` ## 🎯 测试连接 使用新创建的管理员账户连接MongoDB: ```bash mongo -u admin -p your_password --authenticationDatabase admin ``` #### **解释:** - `mongo`:启动MongoDB Shell。 - `-u admin`:指定用户名为 **admin**。 - `-p your_password`:指定密码。 - `--authenticationDatabase admin`:指定认证数据库为 **admin**。 ## 📊 安装流程图 ```mermaid 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为例) ```bash sudo ufw allow 27017 ``` #### **解释:** - `sudo ufw allow 27017`:在UFW防火墙中允许 **27017** 端口的访问。 ## 🚀 卸载MongoDB(可选) 如果需要卸载MongoDB,可以执行以下命令: ```bash 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** 数据库!🎉 --- 最后修改:2024 年 10 月 30 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 如果觉得我的文章对你有用,请随意赞赏