MongoDB在Linux系统中的安装与配置指南

在这篇文章中,我们将介绍如何在CentOS 7服务器上安装MongoDB,并通过DataX将数据从MongoDB迁移到MySQL数据库。这将包括MongoDB的安装、配置、数据准备以及使用DataX进行数据迁移的详细步骤。

MongoDB简介

MongoDB是一个高性能、开源、无模式的文档型数据库,它在处理大量数据时表现出色,尤其是在需要灵活的数据模型和快速迭代开发的环境中。MongoDB的存储格式是BSON(二进制JSON),这使得它能够存储复杂的数据结构,如数组和嵌套文档。它由C++编写,支持Linux、Windows和macOS等主流操作系统,并通过默认端口27017进行通信。

MongoDB 主要特点

MongoDB 是一个高性能、高可用、易扩展的 NoSQL 数据库,它在现代应用程序中非常受欢迎,特别是在需要处理大量数据和高并发访问的场景中。以下是对 MongoDB 的一些关键特点的更详细描述:

非结构化数据存储

MongoDB 使用 BSON(二进制 JSON)格式存储数据,这种格式不仅支持 JSON 中的所有数据类型,还支持 MongoDB 特有的数据类型,如日期、二进制数据、代码、正则表达式等。这种灵活的数据模型使得 MongoDB 能够存储各种复杂和嵌套的数据结构,非常适合快速发展和频繁变更的数据模型。

动态模式

MongoDB 的文档结构是动态的,这意味着你可以在同一个集合中存储具有不同结构的文档,而不需要预先定义一个固定的模式。这种灵活性允许开发者在应用程序的生命周期中轻松地添加、修改或删除字段,而不会中断服务。

水平扩展性

MongoDB 通过分片(Sharding)技术实现水平扩展,可以将数据分布到多个服务器上,从而提高处理大量数据的能力。分片允许数据库在多个服务器之间自动分配数据,从而提高读写性能和存储容量。

高可用性和复制集

MongoDB 使用复制集(Replica Sets)来提供数据的高可用性和数据冗余。复制集由多个 MongoDB 服务器组成,它们之间会同步数据。如果主节点发生故障,复制集可以自动选举新的主节点,确保数据的持续可用性。

操作简单高效

MongoDB 提供了一个强大的查询语言,支持复杂的查询操作,如聚合框架(Aggregation Framework),它允许用户执行复杂的数据处理和分析任务。索引机制也得到了优化,支持多种类型的索引,如单字段索引、复合索引、全文索引等,以提高查询性能。

灵活性

MongoDB 支持多种查询操作,包括嵌套查询、地理空间查询等,这使得它能够适应各种应用场景,如社交网络、电子商务、物联网等。它还提供了丰富的 API 和驱动程序,支持多种编程语言,使得开发者可以轻松地在应用程序中集成和操作 MongoDB。

跨平台兼容性

MongoDB可以在多种操作系统上运行,支持32位和64位架构。这种跨平台兼容性使得MongoDB能够灵活地部署在不同的硬件和软件环境中。

社区和企业支持

MongoDB拥有一个活跃的开源社区和专业的企业支持。这为用户提供了丰富的资源和工具,帮助他们构建、部署和维护MongoDB数据库

进一步阅读

MongoDB的安装

步骤1:添加MongoDB仓库

首先,我们需要在CentOS 7上添加MongoDB的yum仓库。打开终端并执行以下命令:

bash 复制代码
vi /etc/yum.repos.d/mongodb-org-3.4.repo

在打开的文件中,添加以下内容:

bash 复制代码
[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc

步骤2:安装MongoDB

保存并退出文件后,运行以下命令来安装MongoDB:

bash 复制代码
yum install -y mongodb-org

由于已经安装过了所以显示

软件包 mongodb-org-4.4.29-1.el7.x86_64 已安装并且是最新版本

步骤3:载MongoDB (选做)

bash 复制代码
systemctl stop mongod  关闭
yum erase $(rpm -qa | grep mongodb-org)  卸载
#删除数据及日志
rm -rf /var/log/mongodb
rm -rf /var/lib/mongo

步骤4:修改MongoDB配置文件,允许远程连接

bash 复制代码
vi /etc/mongod.conf

net:
  port: 27017  #数据库端口,如果要远程连接,服务器记得开放端口
  bindIp: 0.0.0.0  # 默认是 127.0.0.1 只限于本机连接,如果要远程连接修改为:0.0.0.0

步骤5:启动MongoDB服务

启动MongoDB服务,并设置为开机自启:

bash 复制代码
service mongod start      centos6的写法
systemctl start mongod    centos7的写法

步骤6:MongoDB的基本操作

sql 复制代码
客户端进入MongoDB: mongo 
创建数据库:        use demo
创建表,并且数据:   db.w_demo.insert({"name":"王明","age":"10","grade":"小学"})

远程连接

MongoDB可视化工具

host为虚拟机名称或者IP地址,由于未设置账号密码所以账号密码为空

连接成功

相关推荐
Elastic 中国社区官方博客几秒前
Elasticsearch:什么是查询语言?
大数据·数据库·elasticsearch·搜索引擎·oracle
听见~41 分钟前
SQL优化
数据库·sql
ROCKY_8171 小时前
Mysql复习(一)
数据库·mysql
夜光小兔纸1 小时前
oracle dblink 的创建及使用
数据库·oracle
WANGWUSAN661 小时前
Python高频写法总结!
java·linux·开发语言·数据库·经验分享·python·编程
Smile丶凉轩1 小时前
MySQL库的操作
数据库·mysql·oracle
我自飞扬临天下1 小时前
Mybatis-Plus快速入门
数据库·mybatis-plus
Marzlam1 小时前
sql server索引优化语句
开发语言·数据库
Zmxcl-0072 小时前
IIS解析漏洞
服务器·数据库·microsoft
明矾java2 小时前
Mysql-SQL执行流程解析
数据库·sql·mysql