Linux系统MongoDB配置步骤是什么
导读:Linux系统MongoDB配置步骤 1. 安装MongoDB 方法一:使用包管理器安装(推荐,适用于Ubuntu/Debian、CentOS/RHEL等主流发行版) Ubuntu/Debian:sudo apt update sud...
Linux系统MongoDB配置步骤
1. 安装MongoDB
-
方法一:使用包管理器安装(推荐,适用于Ubuntu/Debian、CentOS/RHEL等主流发行版)
- Ubuntu/Debian:
sudo apt update sudo apt install -y mongodb-org - CentOS/RHEL:
sudo yum update sudo yum install -y mongodb-org
- Ubuntu/Debian:
-
方法二:手动编译安装(适用于需要特定版本的场景)
- 安装依赖:
sudo apt install -y build-essential libssl-dev(Ubuntu/Debian)或sudo yum install -y gcc openssl-devel(CentOS/RHEL)。 - 下载并解压源码:
wget https://fastdl.mongodb.org/src/mongodb-src-r4.4.6.tar.gz→tar -zxvf mongodb-src-r4.4.6.tar.gz→cd mongodb-src-r4.4.6。 - 编译安装:
mkdir build & & cd build→cmake ..→make→sudo make install。
- 安装依赖:
2. 配置MongoDB
-
创建数据与日志目录
sudo mkdir -p /var/lib/mongodb # 数据存储目录 sudo mkdir -p /var/log/mongodb # 日志存储目录 sudo chown -R mongodb:mongodb /var/lib/mongodb # 修改所有者(包管理器安装后默认用户为mongodb) sudo chown -R mongodb:mongodb /var/log/mongodb -
编辑配置文件
配置文件路径通常为/etc/mongod.conf(包管理器安装)或/usr/local/mongodb/mongod.conf(手动编译安装),需修改以下关键参数:storage: dbPath: /var/lib/mongodb # 数据目录 journal: enabled: true # 启用日志(确保数据安全) systemLog: destination: file path: /var/log/mongodb/mongod.log # 日志路径 logAppend: true # 追加日志(避免重启覆盖) net: port: 27017 # 默认端口 bindIp: 0.0.0.0 # 绑定所有IP(允许远程访问,生产环境建议限制为特定IP) security: authorization: enabled # 启用身份验证(必须步骤,提升安全性) -
设置环境变量(可选)
若手动编译安装,需将MongoDB可执行文件目录加入环境变量:echo 'export PATH=/usr/local/mongodb/bin:$PATH' > > ~/.bashrc source ~/.bashrc -
启动MongoDB服务
sudo systemctl start mongod # 启动服务 sudo systemctl enable mongod # 设置开机自启 -
验证配置
连接到MongoDB Shell,检查连接状态:mongo --eval 'db.runCommand({ connectionStatus: 1 } )'若返回结果中
"authenticated": true,则表示认证已启用;若为false,需检查security.authorization配置是否正确。
3. 安全配置(必做)
-
创建管理员用户
连接到MongoDB Shell,切换到admin数据库并创建管理员账号:mongo use admin db.createUser({ user: "admin", pwd: "your-strong-password", # 使用强密码 roles: [ { role: "userAdminAnyDatabase", db: "admin" } , "readWriteAnyDatabase" ] } )退出Shell:
exit。 -
启用认证
确保配置文件中security.authorization: enabled已开启,重启服务使配置生效:sudo systemctl restart mongod -
测试认证
使用创建的管理员账号连接:mongo -u admin -p your-strong-password --authenticationDatabase admin
4. 性能优化(可选但推荐)
-
Linux内核优化
- 调整文件描述符限制(避免连接数过多导致拒绝服务):
ulimit -n 64000 # 临时生效 echo "mongodb soft nofile 64000" | sudo tee -a /etc/security/limits.conf # 永久生效 - 启用大页(提升内存管理效率):
echo 1 | sudo tee /proc/sys/vm/nr_hugepages
- 调整文件描述符限制(避免连接数过多导致拒绝服务):
-
MongoDB配置优化
- 调整WiredTiger存储引擎缓存大小(根据服务器内存调整,建议为物理内存的50%):
storage: wiredTiger: engineConfig: cacheSizeGB: 4 # 示例:4GB - 开启慢查询分析(定位性能瓶颈):
operationProfiling: mode: slowOp # 记录慢查询 slowOpThresholdMs: 100 # 慢查询阈值(毫秒)
- 调整WiredTiger存储引擎缓存大小(根据服务器内存调整,建议为物理内存的50%):
-
索引优化
为常用查询字段创建索引,提升查询速度:use your_database db.your_collection.createIndex({ field_name: 1 } ) # 1表示升序索引,-1表示降序
注意事项
- 生产环境中,建议将
bindIp设置为服务器实际IP(而非0.0.0.0),并通过防火墙限制访问端口(如ufw allow 27017)。 - 定期备份数据(使用
mongodump工具),避免数据丢失。 - 监控MongoDB运行状态(使用
mongostat、mongotop或第三方工具如Prometheus+Granafa)。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Linux系统MongoDB配置步骤是什么
本文地址: https://pptw.com/jishu/735710.html
