Mac和Linux安装Mongodb教程

Mac教程

在mongodb的官网中有mac环境的安装配置说明

在mac上安装mongodb有两种方式:

(1)使用Homebrew来安装,如果电脑中有Homebrew,安装起来就比较简单,如果没有可以安装一个,以后安装其他的也用的到。

(2)如果电脑没有Homebrew且不想安装,那么直接用压缩包的形式安装也可。

我比较懒不想安装Homebrew,所以本文就介绍以如何压缩包的形式安装并配置mongodb,本文会在官网教程的基础上做了一些说明和补充。

下载解压

可以直接在官网下载压缩包。

也可以在终端中执行:

curl -O https://fastdl.mongodb.org/osx/mongodb-osx-x86_64-3.2.8.tgz

下载后先解压压缩包

tar -zxvf mongodb-osx-x86_64-3.2.8.tgz

然后将内容拷贝到你指定mongo目录下(解压的文件就可以删掉了)

mkdir -p mongodb
cp -R -n mongodb-osx-x86_64-3.2.8/ mongodb

配置环境变量

Mac上配置环境变量有多个文件,我一般使用 ~/.bash_profile这个文件,在文件结尾加上

export PATH=/bin:$PATH

这样配置好后保存退出,然后将终端完全关闭再打开,这时配置就生效了。在终端中使用mongo命令就不会提示-bash: mongo: command not found了。

开启服务

先创建数据库存放目录,如下:

mkdir -p /data/db

然后我们启动mongo,命令如下:

mongod --dbpath

这里的dbpath就是刚才我们创建的数据库目录

看的终端中有类似waiting for connections on port 27017这样的消息就说明启动成功了。

这时我们在浏览器中访问http://localhost:27017/ 就会看到

在这里插入图片描述

说明mongo启动成功了。

连接数据库

保持开启服务的终端不被关闭,开启另外一个终端,执行mongo命令就可以连接到数据库了。

或者可以将mongo以服务的形式启动,这样就可以不用一直保持第一个终端开启了。

Linux教程

在mongodb的官网中有linux各个系统的安装配置说明,本文以CentOS(RedHat)为例,结合官方说明,并加以补充。

配置yum

首先需要配置mongo的yum,这样才能用yum进行安装

创建 /etc/yum.repos.d/mongodb-org-3.2.repo,并添加内容

[mongodb-org-3.2]

name=MongoDB Repository

baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/

gpgcheck=1

enabled=1

gpgkey=https://www.mongodb.org/static/pgp/server-3.2.asc

安装mongo

配置好yum后,就可以通过yum按照mongo了

sudo yum install -y mongodb-org

这时如果出现Could not resolve host: repo.mongodb.org; Unknown error这样的错误,是因为访问国外的网站不稳定,重试即可。

配置防火墙

还需要禁用SELinux和配置防火墙,否则无法访问

如果没有 semanage需要先安装

yum -y install policycoreutils-python

然后配置防火墙开放27017端口

semanage port -a -t mongod_port_t -p tcp 27017

最后关闭SELinux,修改/etc/selinux/config文件

SELINUX=disabled

启动Mongo

安装完成后自动生成mongo的配置文件/etc/mongod.conf,在其中可以查看数据库地址和日志地址。默认数据库路路径/var/lib/mongo,默认日子路径/var/log/mongodb/mongod.log

我们也可以自己重新配置,mongod.conf内容如下:

#processManagement:
# fork: true
net:
   bindIp: 127.0.0.1
   port: 27017

storage:
   dbPath: /mnt/mongo

systemLog:
   destination: file
   path: "/mnt/mongodb/mongodb.log"
   logAppend: true

storage:
   journal:
      enabled: true

修改dbPath和systemLog下的path即可。

然后启动Mongo服务

sudo service mongod start

也可以直接通过mongo命令启动,如下:

/usr/bin/mongod -dbpath=/mnt/mongo -logpath=/mnt/mongodb/mongodb.log -logappend -port=27017 -fork --maxConns=20000 --bind_ip=127.0.0.1 --wiredTigerCacheSizeGB=0.2

注意:这条命令后面加上–bind_ip=127.0.0.1,这样可以禁止外网访问,如果不加默认外网是可以访问的,这样如果没有启动账号密码验证,很容易被攻击。但是如果想外网访问,就不能加,那样就最好启动账号密码验证预防攻击。

连接数据库

在终端中执行mongo,如果进入数据库,即表示安装启动成功。

至于widnow上如何安装mongodb,可以看我的另外一篇博客《windows下安装配置mongodb》

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/3326.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【C++学习】多态

🐱作者:一只大喵咪1201 🐱专栏:《C学习》 🔥格言:你只管努力,剩下的交给时间! 多态🍕多态🍟构成多态的条件🍟C11 final override🍟重…

thinkphp+vue水果购物商城网站

需要解决的主要问题: 1、网页编程环境和工具。 2、后台数据库的管理。 3、网站的基本功能建设。 4、对比实际应用中的购物网站的功能和运作流程,完善程序功能。 水果购物商城系统的主要使用者分为管理员;个人中心、用户管理、水果分类管理…

支持RT-Thread最新版本的瑞萨RA2E1开发板终于要大展身手了

支持RT-Thread最新版本的瑞萨RA2E1开发板终于要大展身手了 熟悉RT-Thread和瑞萨MCU的朋友都知道,当前RT-Thread仓库的主线代码是不支持RA2E1这个BSP的。刚好,最近我在联合瑞萨推广一个叫《致敬未来的攻城狮计划》,使用的就是RA2E1开发板&…

ES6技术总结与测试用例

一、介绍 ES6全称是ECMAScript ECMAScript 和 JavaScript 的关系 一个常见的问题是,ECMAScript 和 JavaScript 到底是什么关系? 要讲清楚这个问题,需要回顾历史。1996 年 11 月,JavaScript 的创造者 Netscape 公司&#xff0c…

连接数据库的方法和方式

前景说明: 在我们刚开始使用数据库的时候,发现只能在mysql编辑器里面使用sql语句来完成对数据库的操作,那我们怎么来通过Java来操控数据库呢?这个时候就有了JDBC的出现。 1.什么是JDBC JDBC 指java数据库连接&#xff08…

c#文案语音配图片一键生成视频

高手略过吧,功能太简单,我自己都不好意思。。 这个是我自己的需要,做产品类的短视频,东搞西搞剪辑啊啥的,特别麻烦,所以先搞这个最简版,以后再一步步丰富功能。 需求:几张图片生成…

网络安全行业0-5年规划,零基础如何入门网络渗透?

前言 网络安全这个行业优势有:需求量大,人才紧急,门槛低,工资高。对于许多未曾涉足IT行业「小白」来说,深入地学习网络安全是一件十分困难的事。 关于我 本人是一位90后奇安信驻场网络安全工程师。上海交通大学软件…

Web前端学习:章四 -- JavaScript初级(四)-- BOM

138:Object数据格式简介 1、object对象 JS中独有 的一种数据格式 名字可以随便取,值一般就那几种数据格式 139:BOM - JS跳转页面 BOM Browser Object Model:浏览器对象模型 使用JavaScript控制浏览器交互 控制浏览器里面的内…

【数据结构与算法】队列和栈的相互实现以及循环队列

目录🌔一.用队列实现栈🌙1.题目描述🌙2.思路分析🌙3.代码实现⛈二.用栈实现队列☔1.题目描述☔2.思路分析☔3.代码实现🌈三.实现循环队列🌔一.用队列实现栈 🌙1.题目描述 我们先看一下题目链接…

大数据技术之Hive SQL题库-初级

第一章环境准备1.1 建表语句hive>-- 创建学生表 DROP TABLE IF EXISTS student; create table if not exists student_info(stu_id string COMMENT 学生id,stu_name string COMMENT 学生姓名,birthday string COMMENT 出生日期,sex string COMMENT 性别 ) row format delim…

STM32学习(九)

IWDG的本质 Independent watchdog,即独立看门狗。 本质是:能产生系统复位信号的计时器。 递减的计数器。时钟由独立的RC振荡器提供(不是来自于主时钟HSE或HSI),可在待机或者停止模式下运行。看门狗被激活后&#xff…

【云原生 • Docker】cAdvisor+Prometheus+Grafana 10分钟搞定Docker容器监控平台

文章目录cAdvisorPrometheusGrafana 10分钟搞定Docker容器监控平台cAdvisor部署Prometheus部署Grafana部署cAdvisorPrometheusGrafana 10分钟搞定Docker容器监控平台 cAdvisor(Container Advisor) 是 Google 开源的一个容器监控工具,可用于对容器资源的使用情况和性…

【网络安全必备知识】本地提权漏洞分析

0. 前言 CVE-2023-21752 是 2023 年开年微软第一个有 exploit 的漏洞,原本以为有利用代码会很好分析,但是结果花费了很长时间,难点主要了两个:漏洞点定位和漏洞利用代码分析,欢迎指正。 1. 漏洞简介 根据官方信息&a…

【数据结构】二叉树的遍历以及基本操作

目录 1.树形结构 1.概念 2.二叉树 2.1概念 2.2 两种特殊的二叉树 2.3二叉树的存储 2.4二叉树的基本操作 1.手动快速创建一棵简单的二叉树 2.二叉树的遍历 (递归) 3.二叉树的层序遍历 4.获取树中节点的个数 5.获取叶子节点的个数 6.获取第K层节点的个数 7.获取二叉…

Python深度学习实战:人脸关键点(15点)检测pytorch实现

引言 人脸关键点检测即对人类面部若干个点位置进行检测,可以通过这些点的变化来实现许多功能,该技术可以应用到很多领域,例如捕捉人脸的关键点,然后驱动动画人物做相同的面部表情;识别人脸的面部表情,让机…

线程池的讲解和实现

🚀🚀🚀🚀🚀🚀🚀大家好,今天为大家带来线程池相关知识的讲解,并且实现一个线程池 🌸🌸🌸🌸🌸🌸🌸🌸…

DM的学习心得和知识总结(一)|DM数据库Real Application Testing之Database Reply实操(一)

目录结构 注:提前言明 本文借鉴了以下博主、书籍或网站的内容,其列表如下: 1、达梦数据库产品及解决方案,点击前往 2、达梦技术文档,点击前往 3、武汉达梦数据库有限公司 官网首页,点击前往 1、本文内容全部…

OpenFeign#1 - FeignClient 是如何注册的?

文章目录EnableFeignClientsFeignClientsRegistrarregisterDefaultConfigurationregisterFeignClientsFeignClientFeignClientFactoryBeanFeignContextfeign(FeignContext)EnableFeignClients 该注解会导致 FeignClientsRegistrar 的注入. Retention(RetentionPolicy.RUNTIME…

如何用canvas制作一个华容道小游戏(乞丐版)

我大抵是废了φ(..) ,横竖都学不进去,上课知识不进脑子,学习光想划水摸鱼,心中仅剩的良知告诉我这样下去是铁定不行的哇,既然学不进去,何不打把游戏,既然要打游戏&#x…

HTML5 Video(视频)

HTML5 Video(视频) 在本节内容中,你将了解到在HTML5中视频是如何工作的、主流浏览器支持的视频格式以及如何对网页中的视频进行控制。 很多站点都会使用到视频. HTML5 提供了展示视频的标准。 检测您的浏览器是否支持 HTML5 视频: Web站点上的视频 直…