MongoDB常见问题

问题一

还原报错:
[root@mongodb bin]# mongorestore -h 127.0.0.1:27017 -d runoob --directoryperdb /data/db/runoob
2022-12-19T19:47:23.909-0800 error parsing command line options: --dbpath and related flags are not supported in 3.0 tools.
See http://dochub.mongodb.org/core/tools-dbpath-deprecated for more information
2022-12-19T19:47:23.909-0800 try ‘mongorestore --help’ for more information

原因:在mongodb 3.0版本以后 还原备份文件时 指定备份路径不需要加参数 --dbpath--directoryperdb
解决:去掉–directoryperdb
mongorestore -h 127.0.0.1:27017 -d runoob  /data/db/runoob

问题二

还原报错:
[root@mongodb log]# mongorestore
2022-12-19T21:34:51.654-0800 using default ‘dump’ directory
2022-12-19T21:34:51.654-0800 see mongorestore --help for usage information
2022-12-19T21:34:51.654-0800 Failed: mongorestore target ‘dump’ invalid: stat dump: no such file or directory

原因:没有找到mongorestore命令
解决:该命令需要在/usr/mongodb/bin 目录下执行

问题三

启动报错:
[root@mongodb bin]# ./mongo
MongoDB shell version v4.0.0
connecting to: mongodb://127.0.0.1:27017
2022-12-19T21:57:36.129-0800 E QUERY [js] Error: couldn’t connect to server 127.0.0.1:27017, connection attempt failed: SocketException: Error connecting to 127.0.0.1:27017 :: caused by :: Connection refused :
connect@src/mongo/shell/mongo.js:251:13
@(connect):1:6
exception: connect failed

原因:
一般产生原因是mongodb由于不正常关闭产生了一个mongo.lock文件,只要找到并删除这个lock文件,执行repair命令并重新启动mongodb就好了.
mongod.lock路径一般是在mongo的存放地址中:/usr/mongodb/db/mongod.lock
解决:
删除mongod.lock文件:rm -rf mongod.lock
使用mongod命令修复:./mongod --repair
重新启动MongoDB:./bin/mongod --config mongodb.conf
进入MongoDB:./mongo

问题四

如果报如下错误:ERROR: child process failed, exited with error number 1
很可能是 mongodb.conf 中配置的路径不一致问题;

如果报如下错误:ERROR: child process failed, exited with error number 100
很可能是没有正常关闭导致的,那么可以删除 mongod.lock 文件

问题五

这个报错是我编写mongodb.service时发生的
[root@mongodb mongodb]# systemctl daemon-reload
[root@mongodb mongodb]# systemctl start mongodb.service
Job for mongodb.service failed because the control process exited with error code. See “systemctl status mongodb.service” and “journalctl -xe” for details.

分析:
一般产生这种报错的大概率是两种原因:
    1.该服务脚本写的有问题,处理办法就是检查脚本,重点检查文件路径;
    2.该服务正在启动,不能再次启动
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值