记一次MongoDB的重启操作

背景

前同事之前做的一个数据分析Web应用使用的是MongoDB,但是这个DB今天突然间连接不上了,导致我们每天自动发送的运营日报邮件没有按时发出。这个日报运营团队每天都会查阅用于分析社区用户数据。如果漏掉一天的话,那明天再看数据时就没有办法计算环比数据了。所以我尝试并完成了对数据库服务的重启操作。

解决方案

  1. 找到配置文件
    MongoDB数据库连接不上,我第一反应是:数据库服务挂了。果然ps aux | grep mongo,并没有找到mongo的进程,那数据库无疑是挂了。
    MongoDB我之前也没有部署和启动过,所以第一反应就是查阅一下如何重启以及如何启动,查到了下面两种方式:
1. systemctl restart mongod
2. mongod -f /etc/mongod.conf

看了一下mongod的help文档,了解到-f是指定MongoDB相应的配置文件。同时上面这个文件也是CentOS中MongoDB的默认配置文件。打开这个配置文件发现这里面是MongoDB启动所需要的全部配置信息。

# mongod.conf

# for documentation of all options, see:
#   http://docs.mongodb.org/manual/reference/configuration-options/

# where to write logging data.
systemLog:
  destination: file
  logAppend: true
  path: /var/log/mongodb/mongod.log

# Where and how to store data.
storage:
  dbPath: /var/lib/mongo
  journal:
    enabled: true
#  engine:
#  mmapv1:
#  wiredTiger:

# how the process runs
processManagement:
  fork: true  # fork and run in background
  pidFilePath: /var/run/mongodb/mongod.pid  # location of pidfile
  timeZoneInfo: /usr/share/zoneinfo

# network interfaces
net:
  port: 27017
  bindIp: 0.0.0.0  # Enter 0.0.0.0,:: to bind to all IPv4 and IPv6 addresses or, alternatively, use the net.bindIpAll setting.

从上面的内容可以看到几个数据库的主要信息:

  • 日志文件的存储路径
  • 数据库文件的存储路径
  • 进程运行方式

接下来我去数据库文件路径看了一下,发现db文件都在(还好,长出了一口气…)。

  1. 使用systemctl重启
    既然数据库文件都在,那应该尝试着重启服务就可以继续使用了。接下来使用 systemctl restart mongo来进行重启,发现以下错误:
2022-01-18T15:40:54.289+0800 I CONTROL  [main] Automatically disabling TLS 1.0, to force-enable TLS 1.0 specify --sslDisabledProtocols 'none'
2022-01-18T15:40:54.491+0800 I CONTROL  [main] ERROR: Cannot write pid file to /var/run/mongodb/mongod.pid: Unknown error
2022-01-18T15:56:32.965+0800 I CONTROL  
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值