Ubuntu 上安装 MongoDB 并启用事务的完整流程
本流程以 Ubuntu 20.04/22.04 为例,安装 MongoDB 7.0,并将其配置为 单节点副本集(Replica Set)以满足事务要求。
阶段一:安装 MongoDB 服务器
1. 导入 MongoDB 公钥
sudo apt update sudo apt install gnupg curl -y curl -fsSL https://pgp.mongodb.com/server-7.0.asc | \ sudo gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg \ --dearmor
2. 创建 MongoDB List 文件
为 APT 添加 MongoDB 仓库源(请根据您的 Ubuntu 版本选择对应的 URL):
# Ubuntu 22.04 (Jammy) echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list # Ubuntu 20.04 (Focal) # echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list
3. 安装 MongoDB Packages
sudo apt update sudo apt install -y mongodb-org
阶段二:配置副本集和外部访问
MongoDB 的配置文件通常是 /etc/mongod.conf。我们必须修改此文件以启用远程访问和副本集功能。
1. 编辑配置文件
使用 sudo 权限编辑配置文件:
# /etc/mongod.conf net: port: 33816 # 【修改点 1】确认端口号是您希望使用的 (例如 33816) bindIp: 0.0.0.0 # 【修改点 2】VITAL: 监听所有 IP 地址,允许外部连接
3. 添加副本集配置 (Replication)
在文件的末尾添加 replication 配置块,指定副本集的名称(例如 rs0)。
# /etc/mongod.conf replication: replSetName: rs0 # 【修改点 3】设置副本集名称,这是启用事务的关键
4. 重启 MongoDB 服务
保存并关闭文件后,使用 systemctl 重启服务以应用更改:
sudo systemctl daemon-reload sudo systemctl restart mongod
阶段三:初始化单节点副本集 (启用事务)
尽管服务器已启动副本集模式,但它尚未被“初始化”。初始化是使节点具备 PRIMARY 状态的关键一步。
1. 连接到 MongoDB Shell
使用您在配置文件中指定的端口连接到本地 MongoDB:
# 如果使用 33816 端口 mongosh --port 33816
2. 初始化副本集
在 Shell 中执行以下命令,将当前节点配置为单成员副本集的主节点:
rs.initiate()
3. 验证状态
等待几秒钟后,运行 rs.status()。
rs.status()
✅ 成功标志: 在输出中,您应该看到 stateStr 字段显示为 PRIMARY。
JavaScript
浙公网安备 33010602011771号