文章目录

  • 一、问题描述
  • 二、解决过程

一、问题描述

    CentOS7安装了mongoDB,并且成功开启服务,本机上可以访问数据库进行CURD,但是通过java或者mongo
数据库管理工具无法连接该数据库。

二、解决过程

    1、可以确定服务已经开启,所以要确认端口号是否正确
    netstat -anp查看端口信息

[root@localhost db]# netstat -anp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 127.0.0.1:27017         0.0.0.0:*               LISTEN      6913/mongod
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      3058/sshd
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      3383/master
tcp        0      0 192.168.3.92:22         192.168.3.123:53765     ESTABLISHED 3920/sshd: root@not
tcp        0      0 192.168.3.92:22         192.168.3.123:52492     ESTABLISHED 4112/sshd: root@not

    由此可以知道,mongo服务的端口确实是27017,端口号并没有错。
    2、可以看到,该服务的Local Address是127.0.0.1:27017。
    Local Address表示访问端口的方式,0.0.0.0 是对外开放端口,127.0.0.1 说明只能对本机访问,外面访问不了此端口;这说明了27017端口对外不开放,需要让防火墙对该端口开放。

//开放27017端口
[root@localhost /]# firewall-cmd --zone=public --add-port=27017/tcp --permanent
success
//查看端口是否开放
[root@localhost /]# firewall-cmd --query-port=27017/tcp
yes
//杀掉进程
[root@localhost /]# kill -9 6913
yes
//后台重启服务
[root@localhost /]# nohup mongo &
yes
[root@localhost /]# netstat -anp | grep mongo
tcp        0      127.0.0.1:27017           0.0.0.0:*               LISTEN      5754/mongod

    开放端口后,local address仍然是127.0.0.1,问题没有解决。
    3、查阅资料,猜测mongo启动时若没有指定配置文件,会默认把bind_ip设为127.0.0.1。为了验证假设,在/etc目录下新建一个mongodb.conf文件。

mongodb.conf

bind_ip_all = true                 # 任何机器可以连接
#bind_ip = 127.0.0.1,192.168.0.3     # 本机和192.168.0.3可以访问
port = 27017                        # 实例运行在27017端口(默认)
dbpath = /usr/local/mongodb/db      # 数据文件夹存放地址(db要预先创建)
logpath = /usr/local/mongodb/logs/27017.log  # 日志文件地址
logappend = true                   # 启动时 添加还是重写日志文件
fork = true                         # 是否后台运行

以配置文件的形式启动

[root@localhost /]# mongod -f /etc/mongodb.conf
about to fork child process, waiting until server is ready for connections.
forked process: 12868
child process started successfully, parent exiting

查询端口信息,local address成功改为0.0.0.0

[root@localhost /]# netstat -anp | grep mongo
tcp        0      0 0.0.0.0:27017           0.0.0.0:*               LISTEN      12868/mongod

现在,java可以访问数据库了。

外部无法连接部署在linux上的MongoDB相关推荐

  1. linux部署node web,nodejs怎么部署到Linux上?

    nodejs怎么部署到Linux上?下面本篇文章就来给大家介绍一下在Linux上部署nodejs的方法,希望对大家有所帮助. nodejs部署到Linux上的方法如下: (建议先安装xshell和xf ...

  2. studio 3t连接linux上的MongoDB

    一.linux上的步骤 用本地wmware上的linux测试,先在linux上启动MongoDB并测试其功能: 留意这句:db.createUser({user:"admin",p ...

  3. 使用scala将数据写入linux上的MongoDB数据库

           这篇主要记录一下数据量较大时使用scala处理数据,运用spark组件连接linux上的MongoDB并创建数据库进行数据写入 import com.mongodb.casbah.com ...

  4. linux服务器怎么连接无线网卡,在linux上怎么安装无线网卡驱动?_网站服务器运行维护,linux,无线网卡...

    怎么查看linux连接wifi的密码?_网站服务器运行维护 查看linux连接wifi密码的方法:首先打开终端输入代码[cd /etc/NetworkManager/system-connection ...

  5. c++ 通过 myodbc连接到 远程linux 上的mysql server

    http://wenku.baidu.com/link?url=-sYO5XFbaG53Ldz-84B6-7OJ7QezriEu_lcphuH96ZV96HkdE-vuhmxsi9JKvdKLj_wy ...

  6. linux 运行go文件路径,go程序部署到linux上运行-Go语言中文社区

    go 语言版本:go1.9.2 开发环境:win10 部署环境:ubuntu 14.04.6 一.win10上的操作 1.在src目录下依次执行set CGO_ENABLED=0.set GOOS=l ...

  7. 使用Ant将windows下开发的Struts2应用直接部署到Linux上

    1. 首先下载ant,网上搜一下即可,我下的是apache-ant-1.9.4 2. 下载SSH支持包 能够通过windows直接将文件复制到Linux上是使用Linux的SSH协议完成的,因此首先需 ...

  8. java 自写项目 war包 部署到linux上 本地可以正常运行,部署正常但访问404问题

    tomcat 成功开启 2.它的端口也没有和其它服务的端口冲突 3.确认访问路径,查看本机 host 中配置的信息也是正确的 4.项目在 idea 上运行的时候,默认是省略项目名的,所以地址栏为:「 ...

  9. 关于asp.net利用mono部署到Linux上的一些说明

    linuxdot.net社区群:102732979(如果你认为你已经在.NET跨平台方面有足够的经验,请参加这个群:103810355). 其中有各种大神,嘿嘿,如果你有问题可以来咨询,完全无偿的免费 ...

最新文章

  1. 推荐7款好用的cmd命令行终端工具
  2. 个人随笔之《我有一个需要妈妈帮我实现的愿望》
  3. Fedora配置网络DHCP
  4. goland 远程调试go_手把手教你学Go语言,基础环境配置和Hello World
  5. DCMTK:将XML文档转换为DICOM文件或数据集
  6. Linux下安装nginx (tar解压版安装) nginx1.16.1
  7. A5.2021年全国数学建模竞赛B题-赛题分析与评阅要点(乙醇偶合制备C4烯烃分析)
  8. vue在个组件中给body加样式,或者给父级组件元素加样式
  9. java synchronized互斥锁使用
  10. Python-爬虫抓取视频
  11. Android花样Text设置神器之SpanableString
  12. 视频太大怎么压缩,视频压缩怎么弄?
  13. 阿里双11突遭断网断电!最惊险一幕刚刚曝光
  14. 无线键盘全国产化电子元件推荐方案
  15. c语言信封大小,A1、B1、C1的国际标准纸张的大小尺寸各是多少啊?
  16. 高品质的3D建模和渲染软件——3Dmax!小白须知!
  17. 017循环的方式定义数组、018循环for each、019方法练习、020实参和形参、021方法的返回值
  18. 计算机网络 - 网络层
  19. 【mysql】mysql 常用建表语句
  20. 基于java大学生就业信息管理系统

热门文章

  1. python导库快捷指令、快速导库、dlib库
  2. 稳压集成块LM78XX LM79XX
  3. (六)R语言生物序列比对——Needleman-Wunsch全局比对算法
  4. matlab如何求照度,基于Matlab GUI的照度测量仿真平台
  5. ZZ 自制低成本3D激光扫描测距仪(3D激光雷达),第二部分
  6. gridlayout计算器java_java新手编写亲戚计算器求助
  7. 计算机蓝屏幕亮度,电脑屏幕亮度怎么调,电脑屏幕亮度调节方法
  8. 如何打包Google扩展程序
  9. java解析ceb文件_读取文件夹内容解析为Tree结构
  10. 快速数论变换与多项式常用运算