Ubuntu 18.0.4安装Mongodb
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的更多相关文章
- Ubuntu 18.0.4安装docker
第一步:如果之前安装过docker,执行下面命令删除 apt-get remove docker docker-engine docker.io 删除后执行sudo apt-get update更新软 ...
- 如何在Ubuntu 18.04上安装Pip
一.简介: Pip是一个软件包管理系统,它简化了用Python编写的软件包(如Python包索引(PyPI)中的软件包)的安装和管理. 在Ubuntu 18.04上缺省没有安装Pip,但安装非常简单. ...
- Ubuntu 12.04上安装 MongoDB并运行
Ubuntu 12.04上安装 MongoDB并运行 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 在Terminal输入 sudo apt-key ...
- 如何在Ubuntu 18.04上安装Django
Django是一个免费的开源高级Python Web框架,旨在帮助开发人员构建安全,可扩展和可维护的Web应用程序. 根据您的需要,有不同的方法来安装Django.它可以使用pip在系统范围内安装或在 ...
- 如何在Ubuntu 18.04上安装和配置Apache 2 Web服务器(转)
如何在Ubuntu 18.04上安装和配置Apache 2 Web服务器 什么是Apache Web Server? Apache或Apache HTTP服务器是一个免费的开源Web服务器,由Apac ...
- 转:ubuntu 18.04 LTS 安装 java10(JDK) 及问题说明
原文地址:ubuntu 18.04 LTS 安装 java10 及问题说明 1.下载相应的安装包,例如jdk-10.0.1_linux-x64_bin.tar.gz.下载地址: http://www. ...
- 在Ubuntu 18.04上安装Tensorflow
我们将经历几个阶段,安装cuda-9.0,cudnn和tensorflow cpu以及tensorflow gpu版本.最后我们将用cuda-9.0安装pytorch.在MARVEl电影中黑寡妇的“我 ...
- Ubuntu 18.04上安装 phpMyAdmin
我们将安装 phpMyAdmin 在 Ubuntu18.04 上配合 Apache 一起工作. 在安装 phpMyAdmin 之前需要已经安装了LAMP栈并提供了web页面. 如果没有安装可以参照 U ...
- Ubuntu 18.04上安装Apache, MySQL, PHP, LAMP
1.安装 Apache $ sudo apt update && sudo apt install apache2 中间会遇到停顿询问是否继续, 输入 y 然后 回车. 2.测试 Ap ...
随机推荐
- redis make编译失败的原因
make clean redis编译失败可能是: 1.未安装gcc,gcc-c++ yum install gcc yum install gcc-c++ 2.未安装tcl yum install t ...
- Spark 基础之SQL 快速上手
知识点 SQL 基本概念 SQL Context 的生成和使用 1.6 版本新API:Datasets 常用 Spark SQL 数学和统计函数 SQL 语句 Spark DataFrame 文件保存 ...
- CSS3实现投影效果
Webkit引擎定义了-webkit-box-reflect属性,该属性能够实现投影效果,具体语法如下: -webkit-box-reflect: <direction> <offs ...
- Install_WordPress_In_CentOS_7
1 – Install Apache Http Server# yum install httpd.x86_64 2 – Install php# yum install php.x86_64 3 – ...
- cmd中sudo以后显示password不能输入密码
文本界面还是图形界面下输入密码都不会有回显,这是为了安全考虑. 其实你不是不能输入密码只是你看不到而已,事实上你已经输入进去了,回车后就能看到效果了. 来源于:https://zhidao.baidu ...
- 【python原理解析】gc原理初步解析
python的gc是会用到:引用计数.标记-清除和分代收集,首先说明一下什么是引用计数 可以通过sys模块中的getrefcount()方法获取某个对象的引用计数 python本身的数据类型有基础类型 ...
- [leetcode]16. 3Sum Closest最接近的三数之和
Given an array nums of n integers and an integer target, find three integers in nums such that the s ...
- charles本地调试之map和rewrite功能
charles是一款mac下代理调试工具,对于前端开发同学来说是相当方便的一个调试接口的工具:不过charles需要收费,不过在天朝几乎收费的软件都能找到破解方法: 使用charles前,需要将cha ...
- day 6 元组、字典、字符串
本节内容 : 1,元组 2,字典 3,字符串作业 produce = [('mac', 9000), ('bicycle', 800), ('computer', 8000), ('book', 50 ...
- 《C#从现象到本质》读书笔记(五)第5章字符串第6章垃圾回收第7章异常与异常处理
<C#从现象到本质>读书笔记(五)第5章字符串 字符串是引用类型,但如果在某方法中,将字符串传入另一方法,在另一方法内部修改,执行完之后,字符串的只并不会改变,而引用类型无论是按值传递还是 ...