qwe3223678qwe 发表于 2018-10-25 12:43:35

mongodb backup and restore-WorkNote

# mkdir backup  
# mongodump -h localhost --port 27027 -d person -o backup/ -u person -p 123
  
2016-08-04T10:09:36.701+0800writing person.p1 to
  
2016-08-04T10:09:36.701+0800done dumping person.p1 (1 document)
  
# ls backup/person/
  
p1.bsonp1.metadata.json
  
# mongo localhost:27027/admin -u admin -p
  
MongoDB shell version: 3.2.8
  
Enter password:
  
connecting to: localhost:27027/admin
  
> use person
  
switched to db person
  
> show collections
  
p1
  
> db.p1.drop()
  
true
  
> show collections
  
> exit
  
bye
  
# mongorestore -h localhost --port 27027 -d person backup/person/ -u person -p 123
  
2016-08-04T10:11:42.234+0800building a list of collections to restore from backup/person dir
  
2016-08-04T10:11:42.235+0800reading metadata for person.p1 from backup/person/p1.metadata.json
  
2016-08-04T10:11:42.256+0800restoring person.p1 from backup/person/p1.bson
  
2016-08-04T10:11:42.268+0800restoring indexes for collection person.p1 from metadata
  
2016-08-04T10:11:42.268+0800finished restoring person.p1 (1 document)
  
2016-08-04T10:11:42.268+0800done
  
#
  
# mongo localhost:27027/person -u person -p 123
  
MongoDB shell version: 3.2.8
  
connecting to: localhost:27027/person
  
> show collections
  
p1
  
> db.p1.find()
  
{ "_id" : ObjectId("57a2a28aa6d4803a1c952529"), "name" : "thompson", "gender" : "male", "age" : "24" }
  
# rm backup/* -rf
  
# mongoexport -h localhost --port 27027 -u person -p 123 -d person -c p1 -o backup/person.p1.dat
  
2016-08-04T10:22:06.773+0800connected to: localhost:27027
  
2016-08-04T10:22:06.773+0800exported 1 record
  
# mongoimport -h localhost --port 27027 -u person -p 123 -d person -c p2 --upsert backup/person.p1.dat
  
2016-08-04T10:25:16.414+0800connected to: localhost:27027
  
2016-08-04T10:25:16.434+0800imported 1 document
  
# mongo localhost:27027/person -u person -p 123
  
MongoDB shell version: 3.2.8
  
connecting to: localhost:27027/person
  
> show collections
  
p1
  
p2
  
> db.p2.find()
  
{ "_id" : ObjectId("57a2a28aa6d4803a1c952529"), "name" : "thompson", "gender" : "male", "age" : "24" }
  
> db.p1.find()
  
{ "_id" : ObjectId("57a2a28aa6d4803a1c952529"), "name" : "thompson", "gender" : "male", "age" : "24" }
  
{ "_id" : ObjectId("57a2a9c43f2b617cfdd64c63"), "name" : "eric", "gender" : "female", "age" : 18 }
  
{ "_id" : ObjectId("57a2bfe38381eac036252b7c"), "name" : "test1", "gender" : "male", "age" : 20 }
  
> exit
  
bye
  
# rm -rf backup/* ; ls backup/
  
# mongodump -h localhost --port 27027 -d person -o backup/ -u person -p 123    备份时备份整个库中的所有表
  
2016-08-04T12:36:36.321+0800writing person.p1 to
  
2016-08-04T12:36:36.321+0800writing person.p2 to
  
2016-08-04T12:36:36.322+0800done dumping person.p1 (3 documents)
  
2016-08-04T12:36:36.322+0800done dumping person.p2 (1 document)
  
# ls backup/
  
person
  
# ls backup/person/
  
p1.bsonp1.metadata.jsonp2.bsonp2.metadata.json
  
# mongo localhost:27027/person -u person -p 123
  
MongoDB shell version: 3.2.8
  
connecting to: localhost:27027/person
  
> db.p1.drop()
  
true
  
> db.p2.drop()
  
true
  
> show collections
  
> exit
  
bye
  
# mongorestore -h localhost --port 27027 -d person -c p1 backup/person/p1.bson -u person -p 123
  
      注:可以单独恢复指定的表
  
2016-08-04T12:38:55.541+0800checking for collection data in backup/person/p1.bson
  
2016-08-04T12:38:55.541+0800reading metadata for person.p1 from backup/person/p1.metadata.json
  
2016-08-04T12:38:55.560+0800restoring person.p1 from backup/person/p1.bson
  
2016-08-04T12:38:55.639+0800restoring indexes for collection person.p1 from metadata
  
2016-08-04T12:38:55.640+0800finished restoring person.p1 (3 documents)
  
2016-08-04T12:38:55.641+0800done
  
# mongo localhost:27027/person -u person -p 123
  
MongoDB shell version: 3.2.8
  
connecting to: localhost:27027/person
  
> show tables
  
p1
  
> db.p1.find()
  
{ "_id" : ObjectId("57a2a9c43f2b617cfdd64c63"), "name" : "eric", "gender" : "female", "age" : 18 }
  
{ "_id" : ObjectId("57a2bfe38381eac036252b7c"), "name" : "test1", "gender" : "male", "age" : 20 }
  
{ "_id" : ObjectId("57a2a28aa6d4803a1c952529"), "name" : "thompson", "gender" : "male", "age" : "24" }
  
> exit
  
bye
  



页: [1]
查看完整版本: mongodb backup and restore-WorkNote