nano或vim)。wget -qO - https://www.mongodb.org/static/pgp/server-7.0.asc | sudo apt-key add -
注:若使用Ubuntu 20.04,需替换为
server-6.0.asc;Ubuntu 18.04替换为server-5.0.asc。
以Ubuntu 22.04(代号jammy)为例:
echo "deb [ arch=amd64,arm64 ] 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,18.04用bionic)。
sudo apt update
sudo apt install -y mongodb-org
注:
mongodb-org是MongoDB官方提供的社区版包,包含mongod(数据库服务)、mongo(shell工具)等组件。
sudo systemctl start mongod
sudo systemctl enable mongod
sudo systemctl status mongod
若状态显示为
active (running),说明服务已正常启动。
mongosh
若提示
command not found,需单独安装mongosh(MongoDB Shell):curl -s "https://www.mongodb.com/docs/mongodb-shell/install/#std-label-install-mdb-shell-linux" | sudo bash进入Shell后,执行以下命令验证:
show dbs; # 查看数据库列表 use test; # 创建/切换到test数据库 db.version(); # 查看MongoDB版本
MongoDB主配置文件路径:/etc/mongod.conf(使用nano编辑):
sudo nano /etc/mongod.conf
常见修改项:
- 允许远程访问:将
bindIp从127.0.0.1改为0.0.0.0(注意:开放远程访问需配合防火墙设置,增加安全风险);- 修改端口:将
port从27017改为其他端口(如27018);- 设置数据存储路径:修改
storage.dbPath(如/var/lib/mongodb)。
sudo systemctl restart mongod
mongosh
admin数据库并创建管理员用户use admin;
db.createUser({
user: "admin",
pwd: "yourStrongPassword", # 替换为强密码
roles: [ { role: "root", db: "admin" } ] # 赋予root权限(最高权限)
});
编辑/etc/mongod.conf,在security部分添加:
security:
authorization: enabled
sudo systemctl restart mongod
mongosh -u admin -p yourStrongPassword --authenticationDatabase admin
若服务器启用了ufw防火墙,需允许MongoDB端口(默认27017):
sudo ufw allow 27017
以上步骤完成后,MongoDB即可在Ubuntu上稳定运行。生产环境中还需定期备份数据、监控性能(如使用mongostat、mongotop工具),并根据业务需求调整配置。