从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)

第三阶段基础

时  间:2023年6月13日

参加人:全班人员

内  容:

目录

MongoDB概述

端口号:TCP/27017

配置文件:/etc/mongod.conf

MongoDb安装部署

MongoDB设置密码

MongoDB操作命令与说明

配置文件说明

备份操作

1. 热备份

2. 冷备份

还原操作:


MongoDB概述

MongoDB是一个非关系型数据库管理系统,它使用文档模型存储数据。MongoDB中的文档类似于JSON对象,可以包含键值对和嵌套文档。

MongoDB提供了强大的查询语言、聚合框架、索引和直接在数据存储中运行的计算。

MongoDB被广泛应用于许多领域,特别是Web应用程序和大数据领域。它具有高度可扩展性灵活性,可以处理多种数据类型。

此外,MongoDB还提供了一系列工具和库,以方便开发人员在应用程序中使用它。

MongoDB可以存储Web内容管理系统的重要数据,例如页面和文章内容、标签等,以及和用户相关的数据。

端口号:TCP/27017

配置文件:/etc/mongod.conf

从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)_第1张图片

MongoDb安装部署

以下是在CentOS 7上安装部署 MongoDB 的详细步骤:

1. 添加 MongoDB 的官方库。

执行以下命令添加 MongoDB 的官方仓库:

sudo vi /etc/yum.repos.d/mongodb-org-4.4.repo

在文件中添加以下内容:

[mongodb-org-4.4]

name=MongoDB Repository

baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.4/x86_64/

gpgcheck=1

enabled=1

gpgkey=

https://www.mongodb.org/static/pgp/server-4.4.asc

wq保存并退出。

从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)_第2张图片

2. 安装 MongoDB。

执行以下命令安装 MongoDB:

sudo yum install mongodb-org -y

从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)_第3张图片

3. 配置 MongoDB。

打开 MongoDB 的配置文件:

sudo vi /etc/mongod.conf

在文件中找到和修改以下内容:

- `bindIp`:绑定的 IP 地址。默认为 `127.0.0.1`,即本地访问,如果需要远程访问需要将其改为 `0.0.0.0`。

- `port`:端口号。默认为 `27017`,根据实际需要修改。

保存并退出。

从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)_第4张图片

4. 启动 MongoDB

执行以下命令启动 MongoDB:

sudo systemctl start mongod

5. 设置 MongoDB 为系统服务。

执行以下命令将 MongoDB 设置为系统服务:

sudo systemctl enable mongod

可以使用以下命令检查服务的状态:

sudo systemctl status mongod

从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)_第5张图片

6. 登录 MongoDB。

使用以下命令登录 MongoDB:

mongo

可以使用以下命令检查 MongoDB 的版本:

db.version()

如果成功安装 MongoDB,则应该输出 MongoDB 的版本号。

以上就是在 CentOS 7 上安装部署 MongoDB 的详细步骤。

从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)_第6张图片

MongoDB设置密码

安装完MongoDB后,默认情况下没有密码,你可以直接登录MongoDB开始使用。不过,在生产环境中,强烈建议配置MongoDB的安全性设置,例如启用身份验证等。

如果你需要设置管理员账户并为其设置密码,可以按如下步骤进行:

1. 使用mongo shell登录到MongoDB。

从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)_第7张图片

2. 进入admin数据库:(若没有这个数据库,也会建立这个数据库并打开)

例:use ADMIN

从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)_第8张图片

3. 创建管理员账户:

db.createUser({ user: "admin", pwd: "yourpassword",

roles: [ { role: "userAdminAnyDatabase",

db: "admin" } ] })

其中,“yourpassword”为你要设置的密码。

从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)_第9张图片

4. 退出mongo shell,重启mongod进程:

sudo systemctl stop mongod

sudo systemctl start mongod

从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)_第10张图片

5. 再次使用mongo shell登录到MongoDB,使用以下命令验证登录:

mongo -u admin -p yourpassword

--authenticationDatabase admin

从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)_第11张图片

以上是在MongoDB中创建并设置管理员账户的步骤,注意密码的安全性和复杂度。如果你没有设置管理员账户,那么默认情况下MongoDB是没有密码的。

 

MongoDB操作命令与说明

以下是MongoDB的常见命令操作及说明:

1. show dbs

显示所有数据库的列表。

从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)_第12张图片

2. use

选择要使用的数据库。如果该数据库不存在,则会创建一个新数据库。

从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)_第13张图片

3. db..find()

查找指定集合中的文档,例如:

例:db.Members.find( { name :"John Smith"} )

从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)_第14张图片

4. db..insertOne()

在指定集合中插入一个新文档,例如:

db.users.insertOne( { name: "John", age: 30, city: "New York" } )

从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)_第15张图片

5. db..updateOne()

更新指定集合中的一个文档,例如:

db.users.updateOne(

   { name: "John" },

   { $set: { city: "San Francisco" } }

)

从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)_第16张图片

6. db..deleteOne()

删除指定集合中的一个文档,例如:

db.users.deleteOne( { name: "John" } )

从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)_第17张图片

7. db..count()

返回指定集合中文档的数量。

从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)_第18张图片

8. db..drop()

删除指定集合。

从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)_第19张图片

9. db.createUser()

创建一个新的数据库用户。

参考创建管理员账户

从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)_第20张图片

10. db.dropDatabase()

删除当前使用的数据库。

从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)_第21张图片

11. db.stats()

获取当前使用的数据库的状态信息。

从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)_第22张图片

以上是MongoDB的常见命令操作及说明,可以满足大多数日常工作所需。

配置文件说明

MongoDB的配置文件是文本文件,用于指定MongoDB运行时的配置信息。采用使用配置文件的方式启动MongoDB可以使得管理和配置MongoDB更为方便。

MongoDB的配置文件在启动时需要指定,通常可以使用`mongod --config`命令来指定。

以下是MongoDB配置文件的常用参数及其说明:

- bindIp:绑定的IP地址,默认值为`0.0.0.0`,表示可以连接所有的IP地址。可以通过指定一个特定的IP地址或者多个来限制MongoDB的访问。

- port:MongoDB监听的端口,默认端口号为27017。

- dbpath:MongoDB数据库使用的文件夹路径,默认路径为`/data/db`。

- logpath:MongoDB日志文件的路径。

- logappend:如果设置为true,则MongoDB的日志文件使用追加模式。

- quiet:如果设置为true,则MongoDB不输出任何日志信息。

- pidfilepath:MongoDB进程ID文件路径。

- maxConns:MongoDB允许连接的最大数量,默认值为`20000`。

- maxIncomingConnections:MongoDB允许同时打开的最大连接数,默认值为`65536`。

- storage:MongoDB存储引擎,默认为`wiredTiger`。

使用配置文件启动MongoDB的示例命令如下:

mongod --config /etc/mongod.conf

以上是MongoDB配置文件的常用参数及其说明。在实践中,需要根据具体的需求和硬件条件来调整参数值以实现最佳性能功效。

备份操作

MongoDB有多种备份方式,其中包括热备份和冷备份两种方式。

1. 热备份

热备份是在MongoDB处于运行状态下进行备份的一种方式。具体步骤如下:

(1)使用mongodump命令导出MongoDB的备份数据。以下命令将备份数据导出到`/data/backup`目录下:

mongodump --out /data/backup

(2)如果需要对导出的备份数据进行压缩,可以使用以下命令:

tar -czvf backup.tar.gz /data/backup

从小白到大神之路之学习运维第39天---第三阶段---MongoDB非关系型数据库(概述、安装、设置管理员、简单操作、配置文件说明,备份和还原)_第23张图片

2. 冷备份

冷备份是在MongoDB处于新启动的状态下进行备份的一种方式。

具体步骤如下:

(1)使用MongoDB的`mongodump`命令导出MongoDB的备份数据。以下命令将备份数据导出到`/data/backup`目录下:

mongodump --out /data/backup

(2)停止MongoDB服务:

sudo systemctl stop mongod

(3)使用tar命令将漏斗备份数据压缩成一个文件:

tar -czvf backup.tar.gz /data/backup

(4)启动MongoDB服务:

sudo systemctl start mongod

备份是MongoDB管理的重要组成部分,定期备份MongoDB数据库是保证数据安全性的重要手段之一。对于生产系统,推荐使用自动化的备份解决方案。

还原操作:

MongoDB使用mongorestore命令将备份数据还原到MongoDB中。

以下是MongoDB备份数据还原的步骤:

(1)解压备份文件

首先,需要解压缩MongoDB备份文件。假设备份文件`backup.tar.gz`被解压到了`/data/backup`目录,使用以下命令解压备份文件:

tar -xzvf backup.tar.gz -C /data/backup

(2)停止MongoDB服务

在还原备份数据期间,需要停止MongoDB服务以避免出现意外。使用以下命令停止MongoDB服务:

sudo systemctl stop mongod

(3)使用mongorestore命令还原备份数据

使用mongorestore命令将备份数据还原到MongoDB中。以下命令将备份数据恢复到MongoDB:

mongorestore /data/backup

该命令将备份数据恢复到原来的集合和数据库中,也可以通过指定`--db`参数将备份数据恢复到一个新的数据库中。

(4)重启MongoDB服务

还原备份数据后,重启MongoDB服务:

sudo systemctl start mongod

以上是将MongoDB备份数据还原的简单步骤。在实践中,备份和还原数据时需要谨慎操作,以确保数据的完整性和安全性。

你可能感兴趣的:(mongodb,nosql,学习)