四时宝库

程序员的知识宝库

MongoDB备份和恢复

数据备份

在 MongoDB 中我们可以使用 mongodump 命令来对 MongoDB 进行数据备份,该命令可以导出所有数据到指定目录中,也可以通过参数将导出数据转存的服务器。其语法格式如下:

大厂技术内幕:万万没想到,“字节跳动”居然是这么做数据迁移的

推荐学习

超实用!手把手入门 MongoDB:这些坑点请一定远离

超实用!手把手入门 MongoDB:这些坑点请一定远离[1]


MONGODB自带SHELL客户端

## 切换到mongo账号
[root@tst01 ~]# su - mongod
## 进入mongod shell客户端  
tst01 mongod>mongo
MongoDB shell version v3.4.10
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.4.10
Server has startup warnings:
2018-06-02T09:51:06.712+0800 I STORAGE  [initandlisten]
2018-06-02T09:51:06.712+0800 I STORAGE  [initandlisten] ** WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine
2018-06-02T09:51:06.712+0800 I STORAGE  [initandlisten] **          See http://dochub.mongodb.org/core/prodnotes-filesystem
2018-06-02T09:51:06.987+0800 I CONTROL  [initandlisten]
2018-06-02T09:51:06.987+0800 I CONTROL  [initandlisten] ** WARNING: Access control is not enabled for the database.
2018-06-02T09:51:06.987+0800 I CONTROL  [initandlisten] **          Read and write access to data and configuration is unrestricted.
2018-06-02T09:51:06.987+0800 I CONTROL  [initandlisten]
2018-06-02T09:51:06.987+0800 I CONTROL  [initandlisten]
2018-06-02T09:51:06.987+0800 I CONTROL  [initandlisten] ** WARNING: soft rlimits too low. rlimits set to 1024 processes, 64000 files. Number of processes should be at                       least 32000 : 0.5 times number of files.
## 显示当前mongod服务器数据库
MongoDB Enterprise > show dbs
admin    0.000GB
foolbar  0.000GB
local    0.000GB
## 查看当前数据库的名称
MongoDB Enterprise > db
test
## 显示当前数据库的所有集合
MongoDB Enterprise > show collections
## 切换到foolbar数据库,如果foolbar数据库不存在,会在该数据第一次插入之后创建
MongoDB Enterprise > use foolbar
switched to db foolbar
##  显示当前数据库中有哪些集合,起初应该是为NULL,但我们在创建mongod服务器时,有测试连接型的时候创建个集合,因此能看到blog集合
MongoDB Enterprise > show collections
blog
## 入数据会创建数据库(集合) 插入的数据是一个文档  
MongoDB Enterprise > db.blog.insert({"title":"mongodb shell client"});
WriteResult({ "nInserted" : 1 })
## 查找当前数据库中blog集合的所有文档
MongoDB Enterprise > db.blog.find()
{ "_id" : ObjectId("5b12664097b43b383a56e0c6"), "title1" : "instrduce of mongo" }
{ "_id" : ObjectId("5b12c804c4dbabca2ce3b2a8"), "title" : "mongodb shell client" }
MongoDB Enterprise > db.blog.insert({"docment":"welcome to use mongodb shell client"})
WriteResult({ "nInserted" : 1 })
MongoDB Enterprise > db.blog.find()
{ "_id" : ObjectId("5b12664097b43b383a56e0c6"), "title1" : "instrduce of mongo" }
{ "_id" : ObjectId("5b12c804c4dbabca2ce3b2a8"), "title" : "mongodb shell client" }
{ "_id" : ObjectId("5b12c838c4dbabca2ce3b2a9"), "docment" : "welcome to use mongodb shell client" }
MongoDB Enterprise > db.blog.insert({"title":"my test","name":"pc"})
WriteResult({ "nInserted" : 1 })
MongoDB Enterprise > db.blog.insert({"title":"my test","name":"pc"})
WriteResult({ "nInserted" : 1 })
MongoDB Enterprise > db.blog.insert({"name":"bowenz"})
WriteResult({ "nInserted" : 1 })
MongoDB Enterprise > db.blog.insert({"name":"bowenz"})
WriteResult({ "nInserted" : 1 })
MongoDB Enterprise > db.blog.find()
{ "_id" : ObjectId("5b12664097b43b383a56e0c6"), "title1" : "instrduce of mongo" }
{ "_id" : ObjectId("5b12c804c4dbabca2ce3b2a8"), "title" : "mongodb shell client" }
{ "_id" : ObjectId("5b12c838c4dbabca2ce3b2a9"), "docment" : "welcome to use mongodb shell client" }
{ "_id" : ObjectId("5b12c86dc4dbabca2ce3b2aa"), "title" : "my test", "name" : "pc" }
{ "_id" : ObjectId("5b12c873c4dbabca2ce3b2ab"), "title" : "my test", "name" : "pc" }
{ "_id" : ObjectId("5b12c888c4dbabca2ce3b2ac"), "name" : "bowenz" }
{ "_id" : ObjectId("5b12c88bc4dbabca2ce3b2ad"), "name" : "bowenz" }
## 从当前数据库中的blog集合中移除_id为ObjectId("5b12c86dc4dbabca2ce3b2aa")的文档
MongoDB Enterprise > db.blog.remove({_id:ObjectId("5b12c86dc4dbabca2ce3b2aa")})
WriteResult({ "nRemoved" : 1 })
MongoDB Enterprise > db.blog.find()
{ "_id" : ObjectId("5b12664097b43b383a56e0c6"), "title1" : "instrduce of mongo" }
{ "_id" : ObjectId("5b12c804c4dbabca2ce3b2a8"), "title" : "mongodb shell client" }
{ "_id" : ObjectId("5b12c838c4dbabca2ce3b2a9"), "docment" : "welcome to use mongodb shell client" }
{ "_id" : ObjectId("5b12c873c4dbabca2ce3b2ab"), "title" : "my test", "name" : "pc" }
{ "_id" : ObjectId("5b12c888c4dbabca2ce3b2ac"), "name" : "bowenz" }
{ "_id" : ObjectId("5b12c88bc4dbabca2ce3b2ad"), "name" : "bowenz" }
MongoDB Enterprise > show collections
blog
## 在当前数据库创建一个指定名称的集合
MongoDB Enterprise > db.createCollection("course")
{ "ok" : 1 }
MongoDB Enterprise > show collections
blog
course
## 这个shell函数findOne会返回一个文档 而find函数会返回最多二十个文档.更多区别我们在后面详细介绍
MongoDB Enterprise > db.blog.findOne()
{
        "_id" : ObjectId("5b12664097b43b383a56e0c6"),
        "title1" : "instrduce of mongo"
}
## 统计集合blog所有文档数量
MongoDB Enterprise > db.blog.count()
6
## 退出mongo客户端
MongoDB Enterprise > exit
bye
tst01 mongod>

mongodb导入导出及备份


-------------------MongoDB数据导入与导出-------------------

1、导出工具:mongoexport

八、MongoDB 的集群-实战篇(副本集部署 和 分片副本集部署)

第九节我们对MongoDB部署方式进行了梳理,至此已经知道MongoDB部署方式有单机、主从、副本集和分片这几种。


这节我们主要介绍副本集和分片两种方式的部署。因为他两都是基于单机进行扩展的,所以需要了解单机如何部署,关于单机部署可参考《二、MongoDB 及工具的安装》


SpringBoot 整合 MongoDB 超详细

一、介绍

在前面的文章中,我们详细的介绍了 MongoDB 的配置和使用,如果你对 MongoDB 还不是很了解,也没关系,在 MongoDB 中有三个比较重要的名词:

什么是MongoDB?为什么要使用MongoDB?

什么是NoSQL?

NoSQL是一种非关系型DMS,不需要固定的架构,可以避免joins链接,并且易于扩展。NoSQL数据库用于具有庞大数据存储需求的分布式数据存储。NoSQL用于大数据和实时Web应用程序。例如,像Twitter,Facebook,Google这样的大型公司,每天可能产生TB级的用户数据。

Go 实现restful接口CRUD操作范例(go+gin+mongo)

Go 实现restful接口CRUD操作范例(go+gin+mongo)

以下是使用Gin和MongoDB实现RESTful API CRUD操作的示例代码。

精通Spring Boot 3 : 6. 使用 Spring Boot 的 Spring Data NoSQL (2)

我复古的应用程序,基于 Spring Boot 和 Spring Data MongoDB

让我们切换到 My Retro App,看看如何使用 MongoDB 持久化。如果你在跟着做,可以重用一些之前版本的代码。或者,你也可以从头开始,访问 Spring Initializr (https://start.spring.io),生成一个基础项目(不带依赖),将 Group 字段设置为 com.apress,Artifact 和 Name 字段设置为 myretro。下载项目,解压缩后导入到你喜欢的 IDE 中。在本节结束时,你应该能够看到如图 6-2 所示的结构。

MongoDB入门与实践

1. MongoDB 简介

MongoDB 是一个开源的、面向文档的 NoSQL 数据库,它以其高性能、高可用性和自动扩展特性而受到广泛的欢迎。MongoDB 使用类似于 JSON 的 BSON(Binary JSON)格式存储数据,这使得数据的存储和查询更加灵活。与传统关系型数据库相比,MongoDB 不需要固定的数据表结构,这使得数据模型的调整更加容易。

<< 1 2 3 4 > >>
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接