linux + MongoDB 安装 + 部署 + 讲解 (满满干货看完记得收藏噢)
话不多说开始了!
安装
安装就依据菜鸟教程的进行安装 传送门 => https://www.runoob.com/mongodb/mongodb-linux-install.html
好啦!现在你应该已经安装完毕了,你应该也可以在小黑框进行CURD(增删改查)了吧!
安装是安装好了,这时候你有没有赶脚怪怪的?
mongodb难道直接输入 mongo 就开始使用?
难道就没有用户名密码吗?
答案是当然有了,你在链接mongo的时候有没有发现这一句话 => Server has startup warnings:

这就是权限的问题 也就是你在开启mongod服务的时候没有开启 auth 的模式
这时候就要杀死当前的mongod的进程

如果没有的话就自己编写一个
vim mongodb.conf dbpath=/www/server/mongodb/data
logpath=/www/server/mongodb/log/mongodb.log
logappend=true
port=27017
fork=true
#auth=true 这个必须在你设置好角色后在进行开启(因为如果你没有直接开启这个而没有用户你会非常尴尬,只能看着而不能进行操作)(初学的话最好设置一个root角色)
也就是先不要开启 然后添加一个use test库设置一个root权限(最nb的权限)
然后kill mongod的进程id 然后取消auth的#注释
然后使用./mongod -f mongodb.conf 重新安装配置文件开启mongod服务
如果你想了解配置文件各个参数的问题 可以去这里 传送门=> https://www.cnblogs.com/zhoujinyi/p/3130231.html
如果你不会设置用户权限可以去这里讲的这两个都很详细 传送门=> https://www.cnblogs.com/henuadtc/p/3814928.html https://www.cnblogs.com/xiaoqian1993/p/5944039.html
把上面讲的都操作过了那么基本的mongodb的使用你就了解了。
它的特点是高性能、易部署、易使用,存储数据非常方便。主要功能特性有:
*面向集合存储,易存储对象类型的数据。*模式自由。*支持动态查询。*支持完全索引,包含内部对象。*支持查询。*支持复制和故障恢复。*使用高效的二进制数据存储,包括大型对象(如视频等)。*自动处理碎片,以支持云计算层次的扩展性。*文件存储格式为BSON(一种JSON的扩展)。*可通过网络访问。
了解MongoDB
首先,我来告诉你一些MongoDB与传统的Mysql的区别吧!
Mysql:
1.关系型数据库。
2.在不同的引擎上有不同 的存储方式。
3.查询语句是使用传统的sql语句,拥有较为成熟的体系,成熟度很高。
4.开源数据库的份额在不断增加,mysql的份额页在持续增长。
5.缺点就是在海量数据处理的时候效率会显著变慢。
MongoDB:
1.非关系型数据库(nosql ),属于文档型数据库。先解释一下文档的数据库,即可以存放xml、json、bson类型系那个的数据。这些数据具备自述性(self-describing),呈现分层的树状数据结构。数据结构由键值(key=>value)对组成。
2.存储方式:虚拟内存+持久化。
3.查询语句:是独特的Mongodb的查询方式。
4.适合场景:事件的记录,内容管理或者博客平台等等。
5.架构特点:可以通过副本集,以及分片来实现高可用。
6.数据处理:数据是存储在硬盘上的,只不过需要经常读取的数据会被加载到内存中,将数据存储在物理内存中,从而达到高速读写(直接读写内存)。
7.成熟度与广泛度:新兴数据库,成熟度较低,Nosql数据库中最为接近关系型数据库,比较完善的DB之一,适用人群不断在增长。
优势:
1).快速!在适量级的内存的Mongodb的性能是非常迅速的,它将热数据存储在物理内存中,使得热数据的读写变得十分快,
2).高扩展!
3).自身的Failover机制!
4).json的存储格式!
Mysql和MongoDB的应用场景
如果需要将mongodb作为后端db来代替mysql使用,即这里mysql与mongodb 属于平行级别,那么,这样的使用可能有以下几种情况的考量: (1)mongodb所负责部分以文档形式存储,能够有较好的代码亲和性,json格式的直接写入方便。(如日志之类) (2)从data models设计阶段就将原子性考虑于其中,无需事务之类的辅助。开发用如nodejs之类的语言来进行开发,对开发比较方便。 (3)mongodb本身的failover机制,无需使用如MHA之类的方式实现。
将mongodb作为类似redis ,memcache来做缓存db,为mysql提供服务,或是后端日志收集分析。 考虑到mongodb属于nosql型数据库,sql语句与数据结构不如mysql那么亲和 ,也会有很多时候将mongodb做为辅助mysql而使用的类redis memcache 之类的缓存db来使用。 亦或是仅作日志收集分析。
linux + MongoDB 安装 + 部署 + 讲解 (满满干货看完记得收藏噢)的更多相关文章
- 怎么在linux上安装部署jenkins
怎么在linux上安装部署jenkins 作为一个非科班出身自学的小白,踩过很多的坑,特此留下记录 以下在虚拟机上示例 系统:linux(centos7) 操作方式:xshell连接终端操作 教程之前 ...
- linux下安装部署ansible
linux下安装部署ansible 介绍 Ansible是一种批量部署工具,现在运维人员用的最多的三种开源集中化管理工具有:puppet,saltstack,ansible,各有各的优缺点,其中sal ...
- Kibana在Linux上安装部署及使用说明
Kibana安装及使用说明 Kibana是一个针对Elasticsearch的开源分析及可视化平台,用来搜索.查看交互存储在Elasticsearch索引中的数据. 官方地址:https://www. ...
- asp.net core2.1 部署centos7/linux系统 -- 安装部署(一)
原文:asp.net core2.1 部署centos7/linux系统 -- 安装部署(一) 1.安装dotnet sdk(添加产品秘钥与yum源) 添加yum源:sudo rpm -Uvh htt ...
- MongoDB安装部署(一)
前言 MongoDB是一个由C++语言编写的基于分布式文件存储的数据库,是当前NoSQL数据库中比较热门的一种,旨在为Web应用提供可扩展的高性能数据存储解决方案. MongoDB 简介 MongoD ...
- MongoDB C Driver and APIinstances linux MongoDB安装配置
<一,linux平台MongoDB安装配置>在这我们使用的Centos6 yum部署的,你想搞编译,自个干!
- Linux下安装部署Samba共享盘的操作手册
简述 Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的 ...
- Linux Tomcat安装部署项目
一.上传Tomcat服务器
- 快速掌握mongoDB(一)——mongoDB安装部署和常用shell命令
1.mongoDB简介 mongoDB 是由C++语言编写的,是一种分布式的面向文档存储的开源nosql数据库.nosql是Not Only SQL的缩写,是对不同于传统的关系型数据库的数据库管理系统 ...
随机推荐
- Allegro PCB 转 PADS Layout 之后的修修补补
操作系统:Windows 10 x64 工具:PADS Layout VX.2.3 参考:Allegro转PADS以及后续修改 我们可以看到转换后的PCB文件,乱糟糟的,所以还需要我们手动修改一下. ...
- 利用TfidfVectorizer进行中文文本分类(数据集是复旦中文语料)
1.对语料进行分析 基本目录如下: 其中train存放的是训练集,answer存放的是测试集,具体看下train中的文件: 下面有20个文件夹,对应着20个类,我们继续看下其中的文件,以C3-Art为 ...
- Nginx(五)、http反向代理的实现
上一篇nginx的文章中,我们理解了整个http正向代理的运行流程原理,主要就是事件机制接入,header解析,body解析,然后遍历各种checker,以及详细讲解了其正向代理的具体实现过程.这已经 ...
- ThreeJS系列1_CinematicCameraJS插件详解
ThreeJS系列1_CinematicCameraJS插件详解 接着上篇 ThreeJS系列1_CinematicCameraJS插件介绍 看属性的来龙去脉 看方法作用 通过调整属性查看效果 总结 ...
- JavaScript按钮排他思想
要求: 有一系列按钮,要求每单击其中一个,该按钮改变样式(以背景颜色为例),其他按钮恢复保持默认样式. 实现思路: 获取所有按钮元素 首先先把其他按钮的背景颜色去掉 再单独设置自己的样式 代码实现: ...
- Springcloud技术分享
Springcloud技术分享 Spring Cloud 是一套完整的微服务解决方案,基于 Spring Boot 框架,准确的说,它不是一个框架,而是一个大的容器,它将市面上较好的微服务框架集成进来 ...
- 【python】python返回结果多了none(递归时)
把每个返回值的print使用return替代即可 例子: def trim(s): if s[:1]==" ": s=s[1:] retrim(s) elif s[-1:]==&q ...
- Java Map转成xml标签字符串
一个简单的java实现,供参考: package com.trilogy.session.data; import java.lang.reflect.Field; import java.util. ...
- python numpy输出排名
python numpy排序后输出排名 问题: 假设某班的成绩为: 姓名 成绩 名次 小红 95 小黑 67 小白 58 小绿 82 小蓝 76 小橙 79 小可爱 99 请根据表格,输出对应的名次 ...
- Vue实例中封装api接口的思路 在页面中用async,await调用方法请求
一般我们写小型的项目是用不到封装axios实例 但是当我们写大型项目时 接口有时候多到有上百个接口,那我们在请求一次调用一次接口,接口上好多都是重复的,这个时候我们就可以封装axios实例,既节省了 ...