摘要:即使宕机,启动时会先将数据恢复到最近一次的点,然后重放后续的日志来恢复。查看端口状态启动成功后,查看是否处于的状态。在端口连接失败,由此可知,是端口的问题。在命令行使用命令。
初始安装
初始安装很简单,具体过程参考了:https://blog.csdn.net/junshan...,其中最重要的就是mongodb.conf这个文件的配置,具体如下:
port=27017 #端口 dbpath=/u03/mongodb/db #数据库存文件存放目录 logpath=/u03/mongodb/mongodb.log #日志文件存放路径 logappend=true #使用追加的方式写日志 fork=true #不以守护程序的方式启用,即不在后台运行 maxConns=100 #最大同时连接数 auth=true #不启用验证 journal=true #每次写入会记录一条操作日志(通过journal可以重新构造出写入的数据)。 #即使宕机,启动时wiredtiger会先将数据恢复到最近一次的checkpoint点,然后重放后续的journal日志来恢复。 storageEngine=mmapv1 #存储引擎有mmapv1、wiretiger、mongorocks bind_ip = 0.0.0.0 #这样就可外部访问了,例如从win10中去连虚拟机中的MongoDB启动
安装完成后,启动mongodb
mongod --config /u03/mongodb/mongodb.conf
exception in initAndListen: NonExistentPath: Data directory /data/db not found
结果启动报错,找不到/data/db这个路径,/data/db这个路径用于存储数据库相关数据,在安装mongodb时,mongodb.conf内配置的dbpath=/u03/mongodb/db。因此通过
mongod --dbpath /u03/mongodb/db来启动。
启动成功后,查看mongodb是否处于listening的状态。
netstat -lanp | grep "27017"
接下来开始创建 数据库(在服务器上操作)
进入命令行
mongo
创建数据库
use test
创建用户并授权
db.createUser({ user:"test", pwd:"test", roles:[{role:"userAdmin",db:"test"}] })windows连接报错
数据库创建成功后,开始在本地环境远程连接mongodb。结果,又报错了!
Cannot connect to the MongoDB at 192.168.58.131:27017. Error: Network is unreachable.
首先排查mongodb.conf,bind_ip是否为0.0.0.0,端口号是否为27017;
其次查看服务器防火墙是否关闭, systemctl status firewalld ,如果防火墙开启,则关闭防火墙systemctl stop firewalld(关于防火墙的学习来自于 https://www.cnblogs.com/moxia...);
然后又在本地检查27017端口是否开启,telnet 192.168.58.131 27017,第一次提示“telnet不是内部或外部命令”,解决办法: https://blog.csdn.net/haijing...,再次运行,报“无法打开到主机的连接。 在端口 27017: 连接失败”,由此可知,是27017端口的问题。
查遍了所有资源都没有解决,最终在https://blog.csdn.net/hongwei...,在启动命令最后加上--bind_ip_all,mongod --dbpath /u03/mongodb/db --auth --bind_ip_all,终于成功了!
调试过程中其他错误在调整无法连接这个问题时,尝试了各种方法,数据库来回启动了无数次,其中也遇到了一些其他报错,在这里列出:
1.exception in initAndListen: DBPathInUse: Unable to lock the lock file: /u03/mongodb/db/mongod.lock (Unknown error). Another mongod instance is already running on the /u03/mongodb/db directory
这个错误的原因是mongodb上次关闭异常,先通过mongo --repair进行修复,修复后若还有问题,通过rm mongod.lock -rf删除lock文件,rm diagnostic.data/* -rf删除数据文件。
2.Failed to set up listener: SocketException: Address already in use
上个问题解决后又报地址已被使用,ps aux | grep mongod查看进程,kill -9 进程号杀死进程。
附:正确关闭mongodb数据库的方法:
正确的关闭方法:停止Mongodb
查看进程,使用kill命令;不能使用kill -9。
在命令行使用shutdown命令。
robo3 远程连接最后使用robo3连接mongodb,终于成功了!
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/19440.html
摘要:在上安装仅以此文记录一下我在上安装的过程。因为之前百度了一些教程结果并不理想,所以决定自己写一下。因此可能会对的运行产生一些影响。相关文件在默认情况下,将数据文件存储在文件下,将日志文件存储在文件下。可以在文件中配置这两个路径。 在centos上安装mongodb 仅以此文记录一下我在centos上安装mongodb的过程。因为之前百度了一些教程结果并不理想,所以决定自己写一下。本教程...
摘要:本博客猫叔的博客,转载请申明出处本系列教程为项目附带。历史文章如何在安装最新版安装安装最新版的入门教程的入门教程安装流程下载的最新资源包,大家也可以关注我的公众号猫说,回复工具包,获取全部资源工具。或者直接到官网下载,地址下载完成,使用上传 本博客 猫叔的博客,转载请申明出处本系列教程为HMStrange项目附带。 历史文章 如何在VMware12安装Centos7.6最新版 Ce...
摘要:本博客猫叔的博客,转载请申明出处本系列教程为项目附带。历史文章如何在安装最新版安装安装最新版的入门教程的入门教程安装流程下载的最新资源包,大家也可以关注我的公众号猫说,回复工具包,获取全部资源工具。或者直接到官网下载,地址下载完成,使用上传 本博客 猫叔的博客,转载请申明出处本系列教程为HMStrange项目附带。 历史文章 如何在VMware12安装Centos7.6最新版 Ce...
摘要:安装开机自启操作工具用一在安装参考安装登录完一般在新服务器创建后,先升级一下安装编译器安装如提示则解压编译源代码,这个步骤花的时间会很长到这里,就基本上完成了安装过程,可以通过指令查看及版本二安装参考详解切换目录下载安 centOS7安装node+mongoDB+redis+express(开机自启forerver)+nginx+https(Let’s Encrypt) 操作工具用xs...
阅读 801·2019-08-30 15:54
阅读 442·2019-08-30 12:51
阅读 2024·2019-08-29 16:28
阅读 2844·2019-08-29 16:10
阅读 2332·2019-08-29 14:21
阅读 409·2019-08-29 14:09
阅读 2130·2019-08-23 16:13
阅读 1237·2019-08-23 13:59