MongoDB:部署
概述
MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。
MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
使用场景
主要场景如下:
- 网站实时数据处理。它非常适合实时的插入、更新与查询,并具备网站实时数据存储所需的复制及高度伸缩性。
- 缓存。由于性能很高,它适合作为信息基础设施的缓存层。在系统重启之后,由它搭建的持久化缓存层可以避免下层的数据源过载。
- 高伸缩性的场景。非常适合由数十或数百台服务器组成的数据库,它的路线图中已经包含对MapReduce引擎的内置支持。
部署
单机部署-yum安装
配置yum源
新建文件 /etc/yum.repos.d/mongodb-org-4.2.repo
1 | [mongodb-org-4.2] |
安装
1 | sudo yum install -y mongodb-org |
若要安装特定版本,请分别指定每个组件包,如:
1 | sudo yum install -y mongodb-org-4.2.8 mongodb-org-server-4.2.8 mongodb-org-shell-4.2.8 mongodb-org-mongos-4.2.8 mongodb-org-tools-4.2.8 |
若不想yum升级时MongoDB意外升级,可以配置/etc/yum.conf
排除MongoDB:
1 | exclude=mongodb-org,mongodb-org-server,mongodb-org-shell,mongodb-org-mongos,mongodb-org-tools |
启动
1 | sudo systemctl start mongod |
如果报以下错误:
1 | Failed to start mongod.service: Unit mongod.service not found. |
解决:
1 | sudo systemctl daemon-reload |
开机自启:
1 | sudo systemctl enable mongod |
配置
1 | # 允许其他网络访问mongodb |
创建管理员用户
运行mongo shell
1 | # 默认端口为27017 |
创建用户
1 | > use admin |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 时间之旅!
评论