J'ai VPS avec Ubuntu 18.04 LTS avec Mongodb et mon script fonctionnait bien jusqu'à il y a 3 jours, mais soudainement mon serveur d'hébergement a été redémarré (je l'ai acheté auprès d'une société d'hébergement) et lorsque mon serveur a redémarré, J'ai vu que mon site Web ne fonctionnait pas et ne me suis pas connecté à la base de données. Le résultat de systemctl status mongod est :

 mongod.service - MongoDB Database Server
   Loaded: loaded (/lib/systemd/system/mongod.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Thu 2020-10-29 22:47:35 +0330; 17h ago
     Docs: https://docs.mongodb.org/manual
  Process: 2800 ExecStart=/usr/bin/mongod --config /etc/mongod.conf (code=exited, status=14)
 Main PID: 2800 (code=exited, status=14)

Oct 29 22:47:35 MYHOSTNAME systemd[1]: Started MongoDB Database Server.
Oct 29 22:47:35 MYHOSTNAME systemd[1]: mongod.service: Main process exited, code=exited, status=14/n/a
Oct 29 22:47:35 MYHOSTNAME systemd[1]: mongod.service: Failed with result 'exit-code'.

Lorsque je redémarre le service, rien ne se passe. J'ai vérifié /var/log/mongodb/mongod.log et voici le journal :

2020-10-30T15:53:39.251+0330 I REPL     [signalProcessingThread] Stepping down the ReplicationCoordinator for shutdown, waitTime: 10000ms
2020-10-30T15:53:39.458+0330 I CONTROL  [signalProcessingThread] Shutting down the LogicalSessionCache
2020-10-30T15:53:39.460+0330 I NETWORK  [signalProcessingThread] shutdown: going to close listening sockets...
2020-10-30T15:53:39.460+0330 I NETWORK  [signalProcessingThread] removing socket file: /tmp/mongodb-27017.sock
2020-10-30T15:53:39.461+0330 I NETWORK  [signalProcessingThread] Shutting down the global connection pool
2020-10-30T15:53:39.461+0330 I STORAGE  [signalProcessingThread] Shutting down the PeriodicThreadToAbortExpiredTransactions
2020-10-30T15:53:39.462+0330 I REPL     [signalProcessingThread] Shutting down the ReplicationCoordinator
2020-10-30T15:53:39.462+0330 I SHARDING [signalProcessingThread] Shutting down the ShardingInitializationMongoD
2020-10-30T15:53:39.463+0330 I COMMAND  [signalProcessingThread] Killing all open transactions
2020-10-30T15:53:39.463+0330 I -        [signalProcessingThread] Killing all operations for shutdown
2020-10-30T15:53:39.463+0330 I NETWORK  [signalProcessingThread] Shutting down the ReplicaSetMonitor
2020-10-30T15:53:39.463+0330 I CONTROL  [signalProcessingThread] Shutting down free monitoring
2020-10-30T15:53:39.464+0330 I CONTROL  [signalProcessingThread] Shutting down free monitoring
2020-10-30T15:53:39.466+0330 I FTDC     [signalProcessingThread] Shutting down full-time data capture
2020-10-30T15:53:39.466+0330 I FTDC     [signalProcessingThread] Shutting down full-time diagnostic data capture
2020-10-30T15:53:39.470+0330 I STORAGE  [signalProcessingThread] Shutting down the HealthLog
2020-10-30T15:53:39.471+0330 I STORAGE  [signalProcessingThread] Shutting down the storage engine
2020-10-30T15:53:39.472+0330 I STORAGE  [signalProcessingThread] WiredTigerKVEngine shutting down
2020-10-30T15:53:39.472+0330 I STORAGE  [signalProcessingThread] Shutting down session sweeper thread
2020-10-30T15:53:39.472+0330 I STORAGE  [signalProcessingThread] Finished shutting down session sweeper thread
2020-10-30T15:53:39.648+0330 I STORAGE  [signalProcessingThread] shutdown: removing fs lock...
2020-10-30T15:53:39.648+0330 I -        [signalProcessingThread] Dropping the scope cache for shutdown
2020-10-30T15:53:39.648+0330 I CONTROL  [signalProcessingThread] now exiting
2020-10-30T15:53:39.648+0330 I CONTROL  [signalProcessingThread] shutting down with code:0

J'ai fait telnet localhost 27017 et cela fonctionne bien et se connecte (il est fermé pour les connexions à distance).

J'ai supprimé /tmp/mongodb-27017.sock manuellement, vérifié la propriété de /var/log/mongodb et /var/lib/mongodb et tout est correct. J'ai également fait chown -R mongodb:mongodb sur les deux dossiers pour les corriger si une propriété incorrecte s'est produite lors d'un redémarrage soudain, mais rien n'a fonctionné.

Au fait, lorsque j'exécute la commande /usr/bin/mongod --config /etc/mongod.conf, mon site Web s'exécute, je peux me connecter à mon compte utilisateur, etc. Je le fais actuellement dans un screen pour exécuter mon site Web actuellement, mais je ne le fais pas savoir comment trouver le problème et le résoudre.

Pourriez-vous m'aider à vérifier ce qui ne va pas avec MongoDB et comment y remédier ? Comme nginx -t qui teste le fichier de configuration, existe-t-il une commande similaire ? J'ai lu man mongod mais je n'ai rien trouvé.

modifié pour ajouter /etc/mongodb.conf contenus :

# mongod.conf

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

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

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

# network interfaces
net:
  port: 27017
  bindIp: 127.0.0.1


# how the process runs
processManagement:
  timeZoneInfo: /usr/share/zoneinfo

security:
  authorization: enabled

#operationProfiling:

#replication:

#sharding:

## Enterprise-Only Options:

#auditLog:

#snmp:
6
Saeed 30 oct. 2020 à 15:41

2 réponses

Meilleure réponse

J'ai résolu le problème en effectuant une enquête approfondie dans /var/log/syslog avec gripping mongo.

J'ai fait chown -R mongodb:mongodb /var/lib/mongodb/ et terminé ma commande screen, puis redémarré le service mongod, puis vérifié status, donc maintenant le service et mon site Web fonctionnent sans problème.

0
Saeed 13 nov. 2020 à 09:14

Essayez ceci :-a fonctionné pour moi

chown -R mongodb:mongodb /var/lib/mongodb
chown mongodb:mongodb /tmp/mongodb-27017.sock

sudo service mongod restart
0
Arman 8 févr. 2021 à 18:39