MongoDB分布式存储数据库系列(二)------下载与安装

本文涉及的产品
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
日志服务 SLS,月写入数据量 50GB 1个月
简介: 下载 ForLinux 平台的 MongoDB

一、 MongoDB 的下载与安装

1 下载 MongoDB

下载地址:MongoDB Community Download | MongoDB

2 安装 MongoDB

2.1.1 下载 ForLinux 平台的 MongoDB

2345_image_file_copy_273.jpg

2.2 Linux 安装

在 Linux 平台的 MongoDB 为解压版。我们只要解压 tgz 文件就可以使用。

2.2.1 将下载的 tgz 包上传到 Linux 环境中

我将 tgz 包上传到了自己创建的 temp 目录中。该目录位于/root 目录中。

2345_image_file_copy_274.jpg

2.2.2 解压 tgz 文件

通过 tar 命令对 tgz 文件做解压处理。

2345_image_file_copy_275.jpg

2.2.3 移动 MongoDB

我们将解压完的 MongoDB 目录移动到/usr/local 目录中并改名为 mongodb。

2345_image_file_copy_276.jpg

2.2.4 创建数据库目录

      MongoDB 的数据存储在 data 目录的 db 目录下,但是这个目录在安装过程不会自动创建,需要手动创建 data 目录,并在 data 目录中创建 db 目录。data 目录可以创建在任何位置。本套视频中,我们将 data 目录创建在 mongodb 的根目录下。

2345_image_file_copy_278.jpg

2345_image_file_copy_279.jpg

至此 Linux 平台中的 MongoDB 就已经安装完毕。

3 MongoDB 的启动与关闭

3.1 启动 MongoDB

MongoDB 的启动方式分为两种

1)前置启动

2)后置启动

无论哪种启动方式都需要执行 bin 目录中的 mongod 命令。MongoDB 在启动时默认的查找数据库的路径为/data/db。如果我们数据库路径有变化,需要在该命令中通过--dbpath 参数来指定 db 目录的路径(该路径可以是绝对路径,也可是相对路径)。

3.1.1 前置启动

     MongoDB 的默认启动方式为前置启动。所谓前置启动就是 MongoDB 启动进程后会占用当前终端窗口。

       进入到 MongoDB 的 bin 目录。

2345_image_file_copy_280.jpg

执行 bin 目录中的 mongod 命令。

2345_image_file_copy_281.jpg

由于我们的 db 目录放在 mongodb 的根下,所以在执行该命令时需要通过 --dbpath 参数指定 db 路径。

2345_image_file_copy_282.jpg

启动后会在终端中输出一些启动信息。此时终端窗口已被启动进程所占用。我们通过启动信息可以看到 MongoDB 默认的监听端口为 27017

2345_image_file_copy_283.jpg

按 Ctrl+C 可结束启动进程关闭 MongoDB

2345_image_file_copy_284.jpg

3.1.2 后置启动

       所谓后置启动就是以守护进程的方式启动 MongoDB。我们需要在执行 mongod 命令中添加 --fork 参数。需要注意的是,--fork 参数需要配合着--logpath 或者是--syslog 参数使用。--logpath 与--syslog 参数是指定 MongoDB 的日志文件。MongoDB 的日志文件可以在系统中的任意位置,本视频中我们在 mongodb 目录下创建 log 目录,在该目录中创建一个名为mongodb.log 的日志文件。

创建 log 目录

2345_image_file_copy_286.jpg

在 log 目录中创建 mongodb.log 日志文件

2345_image_file_copy_287.jpg

后置启动 MongoDB

2345_image_file_copy_288.jpg

3.1.3 常见的启动参数

image.png

3.1.4 通过配置文件加载启动参数

      如果觉得在启动 MongoDB 时给定的参数项太多,那么我们也可以通过配置文件来配置启动参数,配置文件可以在任意目录中,配置文件的扩展名应为.conf,配置文件中使用key=value 结构。在执行 MongoDB 时通过--config 参数来指定需要加载的配置文件。

       我们在 mongodb 目录下创建一个 etc 目录,在该目录中创建一个名为 mongodb.conf 的配置文件。

2345_image_file_copy_289.jpg

创建 mongodb.conf 配置文件

2345_image_file_copy_290.jpg

编辑配置文件,在配置文件中添加配置项:

1)指定 db 路径

2)指定日志文件

3)配置端口

4)配置后端启动

在配置文件中配置启动参数时需要注意的是,在参数前不在加--符号,直接以参数名作

为 key 就可以。

2345_image_file_copy_291.jpg

通过加载配置文件启动

MongoDB : ./mongod --config /usr/local/mongodb/etc/mongodb.conf

从新启动:

./mongod --shutdown --config /usr/local/mongodb/etc/mongodb.conf

2345_image_file_copy_292.jpg

2345_image_file_copy_294.jpg

3.1.5 配置环境变量

为了能够在任何目录中执行 bin 目录中的命令,我们可以将 bin 目录添加到环境变量中。

修 改 /etc/profile 文 件 , 添 加 export PATH=/usr/local/mongodb/bin:$PATH 。
/usr/local/monogdb/bin 为 MongoDB 的 bin 目录的绝对路径。

同学们可根据自己的情况来指定。

2345_image_file_copy_296.jpg

重新加载/etc/profile 文件

2345_image_file_copy_297.jpg

测试结果

2345_image_file_copy_298.jpg

3.2 关闭 MongoDB

3.2.1 使用 Ctrl+C 关闭

      如果我们的启动方式是前置启动,那么直接使用快捷键 Ctrl+C 就可以关闭 MongoDB。这种关闭方式会等待当前进行中的的操作完成,所以依然是安全的关闭方式。

3.2.2 使用 kill 命令关闭

      我们可以通过 Linux 的 kill 命令结束 MongoDB 进程,然后删除 data/db 目录中的mongod.lock 文件,否则下次无法启动。但是此方法不建议使用,因为会造成数据损坏现象。

3.2.3 使用 MongoDB 的函数关闭

在 MongoDB 中提供了两个关闭数据库的函数:

db.shutdownServer()
db.runCommand(“shutdown”)

如上两个方法都需要在 admin 库中执行,并且都是安全的关闭方式。

3.2.4 使用 mongod 命令关闭 MongoDB

mongod --shutdown --dbpath<数据库路径> 
mongod 命令的 shutdown 选项能安全的关闭 MongoDB 服务


相关实践学习
MongoDB数据库入门
MongoDB数据库入门实验。
快速掌握 MongoDB 数据库
本课程主要讲解MongoDB数据库的基本知识,包括MongoDB数据库的安装、配置、服务的启动、数据的CRUD操作函数使用、MongoDB索引的使用(唯一索引、地理索引、过期索引、全文索引等)、MapReduce操作实现、用户管理、Java对MongoDB的操作支持(基于2.x驱动与3.x驱动的完全讲解)。 通过学习此课程,读者将具备MongoDB数据库的开发能力,并且能够使用MongoDB进行项目开发。 &nbsp; 相关的阿里云产品:云数据库 MongoDB版 云数据库MongoDB版支持ReplicaSet和Sharding两种部署架构,具备安全审计,时间点备份等多项企业能力。在互联网、物联网、游戏、金融等领域被广泛采用。 云数据库MongoDB版(ApsaraDB for MongoDB)完全兼容MongoDB协议,基于飞天分布式系统和高可靠存储引擎,提供多节点高可用架构、弹性扩容、容灾、备份回滚、性能优化等解决方案。 产品详情: https://www.aliyun.com/product/mongodb
目录
相关文章
|
28天前
|
存储 SpringCloudAlibaba Java
【SpringCloud Alibaba系列】一文全面解析Zookeeper安装、常用命令、JavaAPI操作、Watch事件监听、分布式锁、集群搭建、核心理论
一文全面解析Zookeeper安装、常用命令、JavaAPI操作、Watch事件监听、分布式锁、集群搭建、核心理论。
【SpringCloud Alibaba系列】一文全面解析Zookeeper安装、常用命令、JavaAPI操作、Watch事件监听、分布式锁、集群搭建、核心理论
|
1月前
|
存储 JSON NoSQL
学习 MongoDB:打开强大的数据库技术大门
MongoDB 是一个基于分布式文件存储的文档数据库,由 C++ 编写,旨在为 Web 应用提供可扩展的高性能数据存储解决方案。它与 MySQL 类似,但使用文档结构而非表结构。核心概念包括:数据库(Database)、集合(Collection)、文档(Document)和字段(Field)。MongoDB 使用 BSON 格式存储数据,支持多种数据类型,如字符串、整数、数组等,并通过二进制编码实现高效存储和传输。BSON 文档结构类似 JSON,但更紧凑,适合网络传输。
71 15
|
1月前
|
存储 druid 分布式数据库
列式存储数据库与超市的关系?
列式存储数据库是一种高效的数据管理方式,类似于超市将相似商品集中摆放。它将相同类型的数据(如年龄、价格)归类存储,便于快速查询和压缩,广泛应用于市场分析、财务报告和健康数据分析等领域。知名产品包括HBase、ClickHouse、Druid和Apache Cassandra等,适合处理大规模数据和实时分析任务。
37 4
|
1月前
|
存储 NoSQL 关系型数据库
阿里云数据库MongoDB版助力信也科技 打造互联网金融企业样板
我们的风控系统引入阿里云数据库MongoDB版后,解决了特征类字段灵活加减的问题,大大提高了开发效率,极大的提升了业务用户体验,获得了非常好的效果
阿里云数据库MongoDB版助力信也科技 打造互联网金融企业样板
|
2月前
|
存储 数据库
快速搭建南大通用GBase 8s数据库SSC共享存储集群
本文介绍如何GBase8s 数据库 在单机环境中快速部署SSC共享存储集群,涵盖准备工作、安装数据库、创建环境变量文件、准备数据存储目录、修改sqlhost、设置onconfig、搭建sds集群及集群检查等步骤,助你轻松完成集群功能验证。
|
1月前
|
存储 Oracle 关系型数据库
服务器数据恢复—华为S5300存储Oracle数据库恢复案例
服务器存储数据恢复环境: 华为S5300存储中有12块FC硬盘,其中11块硬盘作为数据盘组建了一组RAID5阵列,剩下的1块硬盘作为热备盘使用。基于RAID的LUN分配给linux操作系统使用,存放的数据主要是Oracle数据库。 服务器存储故障: RAID5阵列中1块硬盘出现故障离线,热备盘自动激活开始同步数据,在同步数据的过程中又一块硬盘离线,RAID5阵列瘫痪,上层LUN无法使用。
|
2月前
|
NoSQL Cloud Native atlas
探索云原生数据库:MongoDB Atlas 的实践与思考
【10月更文挑战第21天】本文探讨了MongoDB Atlas的核心特性、实践应用及对云原生数据库未来的思考。MongoDB Atlas作为MongoDB的云原生版本,提供全球分布式、完全托管、弹性伸缩和安全合规等优势,支持快速部署、数据全球化、自动化运维和灵活定价。文章还讨论了云原生数据库的未来趋势,如架构灵活性、智能化运维和混合云支持,并分享了实施MongoDB Atlas的最佳实践。
|
3月前
|
NoSQL Cloud Native atlas
探索云原生数据库:MongoDB Atlas 的实践与思考
【10月更文挑战第20天】本文探讨了MongoDB Atlas的核心特性、实践应用及对未来云原生数据库的思考。MongoDB Atlas作为云原生数据库服务,具备全球分布、完全托管、弹性伸缩和安全合规等优势,支持快速部署、数据全球化、自动化运维和灵活定价。文章还讨论了实施MongoDB Atlas的最佳实践和职业心得,展望了云原生数据库的发展趋势。
|
3月前
|
NoSQL Java Redis
太惨痛: Redis 分布式锁 5个大坑,又大又深, 如何才能 避开 ?
Redis分布式锁在高并发场景下是重要的技术手段,但其实现过程中常遇到五大深坑:**原子性问题**、**连接耗尽问题**、**锁过期问题**、**锁失效问题**以及**锁分段问题**。这些问题不仅影响系统的稳定性和性能,还可能导致数据不一致。尼恩在实际项目中总结了这些坑,并提供了详细的解决方案,包括使用Lua脚本保证原子性、设置合理的锁过期时间和使用看门狗机制、以及通过锁分段提升性能。这些经验和技巧对面试和实际开发都有很大帮助,值得深入学习和实践。
太惨痛: Redis 分布式锁 5个大坑,又大又深, 如何才能 避开 ?
|
1月前
|
存储 NoSQL Java
使用lock4j-redis-template-spring-boot-starter实现redis分布式锁
通过使用 `lock4j-redis-template-spring-boot-starter`,我们可以轻松实现 Redis 分布式锁,从而解决分布式系统中多个实例并发访问共享资源的问题。合理配置和使用分布式锁,可以有效提高系统的稳定性和数据的一致性。希望本文对你在实际项目中使用 Redis 分布式锁有所帮助。
164 5

热门文章

最新文章