2.21更新:

安装后本地通过robo 3T连接正常,但是其它机器通过IP连接时报错,继续查找,解决方案在这里(传送门),原因是mongodb安装完成后默认监听本地地址,也就是127.0.0.1,这样只能通过localhost或127.0.0.1连接,通过其它IP就不行了,改下配置文件即可。在/etc目录下的mongod.conf文件中,修改bindIp为0.0.0.0,如下:

这样就能通过本机IP连接了。

1.28更新:

事实证明,前面完全错了,根本没找到问题所在乱解决,根据前面的安装虽然能用,但是装的是Ubuntu提供的mongo包,官网(传送门)上说的很清楚,非官方提供,不提供支持,并且装的是3.6.3而不是4.0.5,真是被自己蠢哭!

最后我根据官网上的安装说明装的,装完后使用

sudo service mongod start

这时去监控/var/log/mongodb.log下面的日志,发现其实报错了

提示/var/lib/mongodb是只读的,现在尝试写,不允许,最初搜资料说给这个文件夹设置写权限,我用777设置了,不行,于是按他们说的第二种方法,把这个文件夹的用户更改为当前用户loki,依然不行,最后发现

这个文件夹拥有者所在的组是mongodb,之前好像看过说服务启动时是以mongodb用户启动的,于是

sudo chown -R mongodb mongodb

把文件夹拥有者改为mongodb,再次启动mongod服务,成功!

为什么会出现这个问题呢?还不确定,不知道 是不是因为之前安装时留下的坑,后面我再在一台新的虚拟机上装下试试,但是前面安装问题很大,没找到根本原因就直接瞎解决,最终啥也没解决,这一点需要好好反思!

1.28下午更新:

在新的虚拟机上又安装了一遍,根据官方的步骤安装一切正常,所以上面的权限问题应该是之前安装留下的坑。

1.23安装记录

我是用的安装包安装的,下载地址:https://www.mongodb.com/download-center/community

选择Server后再选择Ubtuntu 18.04 64bit即可,安装不提,很简单。

安装完成后并不能用,首先在终端输入mongo命令时提示要安装mongo-client,于是执行如下命令安装:

sudo apt install mongodb-clients

安装完后再输入mongo命令,发现可以连了,正要开心,却发现提示无法连接到服务器- -

大概提示是connect refused,搜资料,在这里发现说是服务器没起来,链接如下:大佬1

于是执行mongod命令,却发现启动不起来,继续看上面的链接,发现是要指定数据库的路径,于是执行如下命令:

mongod -dbpath "/var/lib/mongodb/"

原以为能正常启动,却发现太天真,提示还要装一个server-core,于是装:

sudo apt install mongodb-server-core

再次执行mongod命令,服务终于正常启动,再打开一个终端输入mongo也能连了,但是跟上面链接说的一样,服务窗口不能关啊,一关服务就停了,这很坑啊

我先是尝试把服务配成系统服务,让它后台运行,于是执行下面命令:

sudo systemctl enable mongod.service

却提示找不到这个文件:Unit file mongod.service does not exist

于是我根据这个链接:大佬2

在/etc/systemd/system下新建了一个mongod.service文件,内容如下:

[Unit]
Description=High-performance, schema-free document-oriented database After=network.target [Service]
User=mongodb
ExecStart=/usr/bin/mongod --quiet --config /etc/mongod.conf [Install]
WantedBy=multi-user.target

之后将mongod设置为系统服务,

sudo systemctl enable mongod
sudo systemctl daemon-reload
sudo service mongod start

没报错,好像是设置成功了,但是执行mongo命令依然连接不上,没办法,只好使用上面大佬1的方法了,把mongod服务设置成后台运行,命令如下:

mongod -fork -f /etc/mongod.conf

这样窗口关掉也能连接mondodb了,暂时这样搞了。后面看看服务到底怎么设置。

Ubuntu 18.0.4安装Mongodb的更多相关文章

  1. Ubuntu 18.0.4安装docker

    第一步:如果之前安装过docker,执行下面命令删除 apt-get remove docker docker-engine docker.io 删除后执行sudo apt-get update更新软 ...

  2. 如何在Ubuntu 18.04上安装Pip

    一.简介: Pip是一个软件包管理系统,它简化了用Python编写的软件包(如Python包索引(PyPI)中的软件包)的安装和管理. 在Ubuntu 18.04上缺省没有安装Pip,但安装非常简单. ...

  3. Ubuntu 12.04上安装 MongoDB并运行

    Ubuntu 12.04上安装 MongoDB并运行 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 在Terminal输入 sudo apt-key ...

  4. 如何在Ubuntu 18.04上安装Django

    Django是一个免费的开源高级Python Web框架,旨在帮助开发人员构建安全,可扩展和可维护的Web应用程序. 根据您的需要,有不同的方法来安装Django.它可以使用pip在系统范围内安装或在 ...

  5. 如何在Ubuntu 18.04上安装和配置Apache 2 Web服务器(转)

    如何在Ubuntu 18.04上安装和配置Apache 2 Web服务器 什么是Apache Web Server? Apache或Apache HTTP服务器是一个免费的开源Web服务器,由Apac ...

  6. 转:ubuntu 18.04 LTS 安装 java10(JDK) 及问题说明

    原文地址:ubuntu 18.04 LTS 安装 java10 及问题说明 1.下载相应的安装包,例如jdk-10.0.1_linux-x64_bin.tar.gz.下载地址: http://www. ...

  7. 在Ubuntu 18.04上安装Tensorflow

    我们将经历几个阶段,安装cuda-9.0,cudnn和tensorflow cpu以及tensorflow gpu版本.最后我们将用cuda-9.0安装pytorch.在MARVEl电影中黑寡妇的“我 ...

  8. Ubuntu 18.04上安装 phpMyAdmin

    我们将安装 phpMyAdmin 在 Ubuntu18.04 上配合 Apache 一起工作. 在安装 phpMyAdmin 之前需要已经安装了LAMP栈并提供了web页面. 如果没有安装可以参照 U ...

  9. Ubuntu 18.04上安装Apache, MySQL, PHP, LAMP

    1.安装 Apache $ sudo apt update && sudo apt install apache2 中间会遇到停顿询问是否继续, 输入 y 然后 回车. 2.测试 Ap ...

随机推荐

  1. sonar gitlab+jenkins配置

    sonar.projectKey=test-news-activitysonar.projectName=test-news-activitysonar.projectVersion=$BUILD_N ...

  2. as3.0 当fla里面有TLF文本的时候,加载声音会出现错误

    问题描述 1.现有制作好的mp3加载包,这个包是相对路径 2.如果fla里面没有TLF文本,可以正常运行 解题思路 1.音频的相对路径和加载TLF文本的路径不一样,fla会优先选择TLF文件,这样mp ...

  3. ExecuteReader()获得数据

    ExecuteReader用于实现只进只读的高效数据查询.ExecuteReader:返回一个SqlDataReader对象,可以通过这个对象来检查查询结果,它提供了只进只读的执行方式,即从结果中读取 ...

  4. swift 设置阴影和圆角

    1.正常view设置阴影 func setShadow(view:UIView,sColor:UIColor,offset:CGSize, opacity:Float,radius:CGFloat) ...

  5. 英雄联盟lol登录错误:登录服务器未响应、您可能遇到了一个网络问题、请检查您的网络。

    第一方法cmd 用管理员命令打开,输入  netsh winsock reset.重启 第二种方法  win+r 输入 regedit  在 HKEY_CURRENT_USER\Software\Mi ...

  6. android studio 关闭SVN关联

    <?xml version="1.0" encoding="UTF-8"?> <project version="4"&g ...

  7. 使用虚拟机VM12安装REHL7

    转载https://blog.csdn.net/qq_19467623/article/details/52869108 转载http://www.07net01.com/2016/03/141198 ...

  8. [杂谈]杂谈章1 问几个JAVA问题

    1.面向对象.面向过程 区别 2.Java 如何实现的平台无关 和C/C++不同的是,Java语言提供的编译器不针对特定的操作系统和CPU芯片进行编程,而是针对Java虚拟机把Java源程序编译成称为 ...

  9. php5.6 phpmystudy 版本出问题

    No input file specified的解决方法 https://jingyan.baidu.com/article/f7ff0bfccce11c2e26bb1381.html

  10. Netsharp总体介绍

    作者:秋时   日期:2014年02月05日   转载须说明出处  Netsharp交流群:338963050(请有详细的请求说明) Netsharp系列文章目录结构 Netsharp是一款免费的基于 ...