MongoDB基础(安装及多实例)

MongoDB简介

MongoDB是一跨平台、面向文档的数据库。可以实现高性能、高可用性,并且能够轻松扩展。是一个基于分布式文件存储的开源数据库系统,在高负载的情况下,添加更多的节点,可以保证服务器性能。
MongoDB也是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。不采用关系模型主要是为了获得更好的扩展性,MongoDB不再有“行”(row)的概念,其运行方式主要基于两个概念:集合(collection)与文档(document)。

MongoDB的特点

MongoDB的特点包括面向集合存储、模式自由、丰富的查询语句和多级索引、复制集机制、易于水平扩展、可插入存储引擎、跨平台多语言支持等。
MongoDB安装简单,提供了面向文档存储功能,操作起来比较容易。
MongoDB提供了复制、高可用性和自动分片功能。如果负载增加(需要更多的存储空间和更强的处理能力),它可以分布在计算机网络中的其他节点上,这就是所谓的分片。
MongoDB支持丰富的查询表达式。查询指令使用JSON形式的标记,可轻易查询文档中内嵌的对象及数组。
MongoDB支持各种变成语言:Ruby、Python、Java、C++、PHP、C#等多种语言。

MongoDB适用领域

MongoDB可以为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB主要适用领域有网站数据、分布式场景、数据缓存和JSON文档格式存储。适合大数据量、高并发、弱事务的互联网应用,其内置的水平扩展机制提供了几百万到十亿级别的数据处理能力,可以很好的满足Web2.0和移动互联网应用数据存储的要求。

MongoDB常用术语及说明

SQL术语 MongoDB术语 解释/说明
database database 数据库
table collection 数据库表/集合
row document 数据记录行/文档
column field 数据字段/域
index index 索引
table joins 表连接,MongoDB不支持
primary key primary key 主键,MongoDB自动将_id字段设置为主键

数据库:一个MongoDB 实例可以承载多个数据库。它们之间可以看作相互独立,每个数据库都有独立的权限控制。在磁盘上,不同的数据库存放在不同的文件中。MongoDB 中存在以下系统数据库。

  • Admin 数据库:一个权限数据库,如果创建用户的时候将该用户添加到admin 数据库中,那么该用户就自动继承了所有数据库的权限。
  • Local 数据库:这个数据库永远不会被负责,可以用来存储本地单台服务器的任意集合。
  • Config 数据库:当MongoDB 使用分片模式时,config 数据库在内部使用,用于保存分片的信息。

集合:集合就是一组文档,类似于关系数据库中的表。集合是无模式的,集合中的文档可以是各式各样的。在MongoDB中集合用collections表示,每个
collection用一个名字标识,需要注意以下几点:

  • 名字不允许是空字符串""
  • 名字不能包含\0字符,因为它表示名字的结束
  • 不能创建以system.开头的

文档:文档是 MongoDB 中数据的基本单位,类似于关系数据库中的行(但是比行复杂)。多个键及其关联的值有序地放在一起就构成了文档。

  • 文档中的键/值对是有序的。
  • 文档中的值不仅可以是在双引号里面的字符串,还可以是其他几种数据类型(甚至可以是整个嵌入的文档)。
  • MongoDB区分类型和大小写。
  • MongoDB的文档不能有重复的键。
  • 文档的键是字符串。除了少数例外情况,键可以使用任意UTF-8字符。

安装MongoDB

1.配置YUM源仓库

cd /etc/yum.repos.d/
vim mongodb-org.repo
[mongodb-org]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.6/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.6.asc

2.在线安装MongoDB

yum install -y mongodb-org

3.修改配置文件

vim /etc/mongod.service
  1 # mongod.conf
  2
  3 # for documentation of all options, see:
  4 #   http://docs.mongodb.org/manual/reference/configuration-options/
  5
  6 # where to write logging data.
  7 systemLog:
  8   destination: file
  9   logAppend: true       //使用追加方式写日志
 10   path: /var/log/mongodb/mongod.log     //日志文件路径
 11
 12 # Where and how to store data.
 13 storage:
 14   dbPath: /var/lib/mongo        //数据存储目录
 15   journal:
 16     enabled: true
 17 #  engine:
 18 #  mmapv1:
 19 #  wiredTiger:
 20
 21 # how the process runs
 22 processManagement:
 23   fork: true  # fork and run in background后台运行
 24   pidFilePath: /var/run/mongodb/mongod.pid  # location of pidfile
 25   timeZoneInfo: /usr/share/zoneinfo
 26
 27 # network interfaces
 28 net:
 29   port: 27017           //默认服务器端口号
 30   bindIp: 0.0.0.0  //监听地址
 31
 32
 33 #security:
 34
 35 #operationProfiling:
 36
 37 #replication:
 38

4.关闭防火墙和增强安全功能并开启数据库

systemctl stop firewalld.service
setenforce 0
systemctl start mongod.service
netstat -anpt | grep mongod
tcp        0      0 0.0.0.0:27017           0.0.0.0:*               LISTEN      15252/mongod

5.进入数据库并进行简单的查看

mongo                 //进入数据库
>db.version()          //查看数据库版本
>show dbs              //查看所有库
>db.getMongo()         //查看当前数据库机器的连接地址

开启多实例

在单台服务器资源充分的情况下,可以使用多实例,以便充分使用服务器资源。操作如下:

cp -p /etc/mongod.conf /etc/mongod2.conf
vim /etc/mongod2.conf
   ...
   path: /data/mongodb/mongod2.log
   dbPath: /data/mongodb/mongo
   ...
   port: 27018
   ...
mkdir -p /data/mongodb
mkdir /data/mongodb/mongo       //创建对应的数据存储目录
touch /data/mongodb/mongod2.log     //创建日志文件
chmod 777 mongod2.log
开启mongodb2:
#mongod -f /etc/mongod2.conf
#mongo --port 27018
MongoDB shell version v3.6.6
...
>
#netstat -ntap
tcp        0      0 0.0.0.0:27017           0.0.0.0:*               LISTEN      15252/mongod
tcp        0      0 0.0.0.0:27018           0.0.0.0:*               LISTEN      3649/mongod

原文地址:http://blog.51cto.com/13625810/2147042

时间: 2024-08-02 10:50:56

MongoDB基础(安装及多实例)的相关文章

MongoDB基础安装(实战部署)

MongoDB基础安装 MongoDB概述 (1)MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案. (2)MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的.它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型.Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分

MongoDB基础安装、操作

内容要点: MongoDB介绍 linux系统安装MongoDB MongoDB基础操作 一.MongoDB : (1)MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案. (2)MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的.它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型.Mongo最大的特点是它支持的查询语言非常强大,其语法有点

MongoDB基础--安装与问题

W7下安装: 安装mongoDB 解压mongodb; 新建文件夹C:\DATA\DB,这是mongoDB的默认数据文件夹; 添加path; 运行 cmd打开运行mongod 打开新的cmd运行mongo

MongoDB安装及多实例启动

MongoDB安装及多实例启动 MongoDB简介 MongoDB是一款跨平台.面向文档的数据库.可以实现高性能.高可用性,并且能够轻松扩展,是一个基于分布式文件存储的开源数据库系统,在高负载的情况下,添加更多的节点可以保证服务器的性能. 在大数据时代中,大数据量的处理已经成了考量一个数据库最重要的原因之一.MongoDB的一个主要目标就是尽可能的让数据库保持卓越的性能,这很大程度地决定了MongoDB的设计.MongoDB选择了最大程度而利用内存资源用作缓存来换取卓越的性能,并且会自动选择速度

mongodb安装与添加实例

说明:MongoDB是一款跨平台.面向文档的数据库.可以实现高性能.高可用性,并且能够轻松扩展. 是一个基于分布式文件存储的开源数据库系统,在高负载的情况下,添加更多的节点,可以保证服务器性能.MongoDB也是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的.不采用关系模型主要是为了获得更好的扩展性,MongoDB不再有"行"的概念,其运行方式主要基于两个概念:集合与文档...实验环境:centos 7 ..实验步骤如下:..1 . 配置yu

MongoDB基础之MongoDB安装

安装MongoDB之前,首先要下载MongoDB软件安装包, MongoDB社区版官网下载地址:https://www.mongodb.com/download-center?jmp=nav#community 下载后,双击msi安装文件进行安装,点击"Next">> 勾选同意相关协议规定,点击"Next">> 点击"Custom"-->"Browse"进行自定义目录安装,建议安装在C:\Mong

手把手教你写Dockerfile, 附赠MongoDB和Nginx Dockerfile编写实例

手把手教你写Dockerfile, 附赠MongoDB和Nginx Dockerfile编写实例 基础镜像可以用于创建Docker容器.镜像可以非常基础,仅仅包含操作系统:也可以非常丰富,包含灵巧的应用栈,随时可以发布.当你在使用 Docker构建镜像的时候,每一个命令都会在前一个命令的基础上形成一个新层.这些基础镜像可以用于创建新的容器.本篇文章将手把手教您如何从基础镜 像,一步一步,一层一层的从Dockerfile构建容器的过程. Docker简介 Docker项目提供了构建在Linux内核

MongoDB学习--安装与管理

一.简介 MongoDB是一种强大.灵活,且易于扩展的通用型数据库.他能扩展出非常多的功能.如二级索引(secondary index).范围查询(range query).排序.聚合(aggregation),以及地理空间索引(geospatial index). 1.易于使用 MongoDB是一个面向文档(document-oriented)的数据库,而不是关系型数据库.面向文档的数据库不在有"行(row)"的概念,取而代之的是更为灵活的"文档(document)&quo

非关系数据库------MongoDB的安装与使用

MongoDB概述 MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的.它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型.Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引. MongoDB特点 面向集合存储,易存储对象类型的数据: 模式自由.支持查询.支持动态查询: 支持完全索引,包含内部对象:

windows下mongodb基础玩法系列二CURD操作(创建、更新、读取和删除)

windows下mongodb基础玩法系列 windows下mongodb基础玩法系列一介绍与安装 windows下mongodb基础玩法系列二CURD操作(创建.更新.读取和删除) 简单说几句 在mongodb中3元素:db(数据库).collection(集合).document(文档) 其中collection类似于数据库中的表,document类似于行,这样一来我们就将内容对比起来记忆学习了. 数据格式 MongoDB documents是BSON格式(一种类json的一种二进制形式的存