linux mongodb 安装、自启动

本文介绍如何在Linux环境下使用非root用户部署MongoDB数据库服务,包括创建用户、安装MongoDB、配置启动参数、设置开机启动等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

可以使用root用户进行mongodb的管理(启动、停止…),但对于追求卓越的人来说,我们新非root用户管理mongo更好。

在linux下创建用户、修改密码

useradd mongod
passwd mongod
...

安装mongodb

cd /home/mongod

curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.2.6.tgz

tar -zxvf mongodb-linux-x86_64-3.2.6.tgz

mv mongodb-linux-x86_64-3.2.6.tgz mongodb
分配宿主
chown -R mongod.mongod *

切换root用户, 
cd ~ 
vi .bashrc 并追加
MONGODB_HOME=/home/mongod/mongodb 
PATH=$PATH:$MONGODB_HOME/bin

创建数据文件目录,及日志目录

mkdir /home/mongod/data
mkdir /home/mongod/data/db
mkdir /home/mongod/log

编辑启动脚本

vi mongodb/mongo.conf
内容:
dbpath=/home/mongod/data/db
logpath=/home/mongod/log/mongodb.log
logappend=true
fork=true
port=27017

测试启动

启动
/home/mongod/mongodb/bin/mongod -f /home/mongod/mongodb/mongo.conf

停止
/home/mongod/mongodb/bin/mongod -f /home/mongod/mongodb/mongo.conf --shutdown  

配置开启启动

cd /etc/init.d/

#!/bin/sh
#
#chkconfig: 2345 80 90
#description: mongodb

if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
   echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
   echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi

start() {
    /home/mongod/mongodb/bin/mongod -f /home/mongod/mongodb/mongo.conf
}

stop() {
  /home/mongod/mongodb/bin/mongod -f /home/mongod/mongodb/mongo.conf --shutdown
}

case "$1" in
  start)
    start
    ;;
  stop)
    stop
    ;;
  restart)
    stop
    start
    ;;
  *)
 echo $"Usage: $0 {start|stop|restart}"
 exit 1
esac

使其生效

chkconfig --add mongodb  
chmod +x  mongodb  
chkconfig mongodb on  
### 配置 MongoDBLinux 系统下的开机自启 为了使 MongoDB 能够在 Linux 系统中实现开机自动启动,可以按照以下方法操作: #### 创建服务文件 首先,在 `/lib/systemd/system/` 目录下创建名为 `mongodb.service` 的服务文件。可以通过命令编辑该文件: ```bash sudo vim /lib/systemd/system/mongodb.service ``` 在此文件中定义 MongoDB 服务的相关参数[^1]。 以下是 `mongodb.service` 文件的一个典型配置示例: ```ini [Unit] Description=High-performance, schema-free document-oriented database After=network.target [Service] User=mongodb Group=mongodb ExecStart=/usr/bin/mongod --config /etc/mongod.conf Restart=on-failure [Install] WantedBy=multi-user.target ``` #### 设置权限与加载服务 保存并退出后,重新加载 systemd 配置以应用更改: ```bash sudo systemctl daemon-reload ``` 接着启用 MongoDB 服务以便于系统启动时自动运行: ```bash sudo systemctl enable mongodb ``` 此命令会将 MongoDB 添加到系统的启动项列表中[^2]。 #### 测试服务状态 完成上述步骤之后,可尝试重启计算机来验证 MongoDB 是否能够正常随系统一起启动。或者手动测试服务的状态: ```bash sudo systemctl status mongodb ``` 如果一切设置无误,则应显示 MongoDB 正常运行的信息。 另外,也可以通过如下方式分别控制 MongoDB 服务的手动启动和停止: ```bash sudo service mongodb start # 手动启动 MongoDB 服务 sudo service mongodb stop # 手动停止 MongoDB 服务 ``` 以上过程涵盖了从创建服务文件至最终确认服务能否成功开启的所有必要环节[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值