下载地址(rhel7):https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.4.26.tgz
其他平台到官网:https://www.mongodb.com/try/download/community下载对应的安装包
上传安装包到服务器并解压
tar -xf mongodb-linux-x86_64-rhel70-4.4.26.tgz -C /opt/
mv /opt/mongodb-linux-x86_64-rhel70-4.4.26 /opt/mongodb4.4.26
删除没用的文件(单机部署不需要mongos,生产环境不建议使用install_compass安装mongodb)【mongo、mongod、mongos的区别】
rm -f /opt/mongodb4.4.26/bin/{mongos,install_compass}
创建所需的目录
mkdir /opt/mongodb4.4.26/{config,logs,data}
自定义配置文件【参考官方文档:https://www.mongodb.com/docs/v4.4/reference/configuration-options/】
cat > /opt/mongodb4.4.26/config/mongod.conf <<'EOF'
processManagement:
fork: true # 启用mongod的守护进程模式
net:
bindIp: 0.0.0.0
port: 27017
storage:
dbPath: /opt/mongodb4.4.26/data # mongodb存储数据的位置
journal:
enabled: true # 启用日志功能。64位版本的mongod默认启用日志功能。因此,该设置可能是多余的。
systemLog:
destination: file
path: "/opt/mongodb4.4.26/logs/mongod.log" # mongodb启动日志
logAppend: true
security:
authorization: enabled # 启用MongoDB内的授权系统
EOF
/opt/mongodb4.4.26/bin/mongod -f /opt/mongodb4.4.26/config/mongod.conf
/opt/mongodb4.4.26/bin/mongo --port 27017 <<'EOF'
use admin;
db.createUser({user:'admin',pwd:'Admin.com!2',roles:[{role:'userAdminAnyDatabase',db:'admin'}]});
db.auth('admin','Admin.com!2');
db.createUser({user:'root',pwd:'Root.com!2',roles:['root']});
db.auth('root','Root.com!2');
EOF
/opt/mongodb4.4.26/bin/mongo -u admin -p 'Admin.com!2' --host 127.0.0.1 --port 27017 <<'EOF'
use testdb1;
db.createUser({user:'testu1',pwd:'testpwd',roles:[{role:'readWrite',db:'testdb1'}]});
db.auth('testu1','testpwd');
EOF
/opt/mongodb4.4.26/bin/mongo -u 'testu1' -p 'testpwd' --host 127.0.0.1 --port 27017 --authenticationDatabase testdb1
/opt/mongodb4.4.26/bin/mongo -u 'testu1' -p 'testpwd' --host 127.0.0.1 --port 27017 --authenticationDatabase admin
/opt/mongodb4.4.26/bin/mongod -f /opt/mongodb4.4.26/config/mongod.conf --shutdown