MongoRestore 快速介紹
mongorestore 快速介紹

👨💻簡介
上一篇介紹了 mongodump,拿來將我們資料庫的檔案備份到本地,這次則是要來介紹 mongorestore,將本地的資料還原到指定的資料庫。
🔰基礎介紹
什麼是 MongoRestore?
mongorestore 是 MongoDB 提供的一個命令行工具,用於將先前使用 mongodump 產生的備份檔案恢復到資料庫中,支援 BSON 格式的資料恢復。
MongoRestore 主要功能
- 恢復資料庫: 可以將備份的整個資料庫恢復。 
- 恢復集合(collection): 可以指定恢復特定的集合。 
- 從遠端伺服器恢復: 可以從遠端的 MongoDB 伺服器恢復資料。 
Mongorestore 優缺點
優點
- 簡單易用:簡單的命令行操作即可完成資料還原。
- 支援大規模資料恢復:可以高效處理大型資料集。
- 支援各種平台:跨平台使用,不限作業系統。
缺點
- 相對耗時:對於大型資料庫,還原時間可能較長。
- 空間需求:恢復操作需要足夠的磁碟空間。
🎯setup
基本指令
- 恢復整個資料庫
語法:
mongorestore --db <database_name> <path_to_backup_directory>
範例:
mongorestore --db mydatabase /path/to/backup
- 恢復特定集合(collection)
語法:
mongorestore \
--db <database_name> \
--collection <collection_name> <path_to_collection_backup>
範例:
mongorestore \
--db mydatabase \
--collection mycollection /path/to/backup/mycollection.bson
- 恢復到特定目錄
語法:
mongorestore --db <database_name> --dir <path_to_backup_directory>
範例:
mongorestore --db mydatabase --dir /path/to/backup
- 從遠端 MongoDB 伺服器恢復
語法:
mongorestore \
--host <mongo_host_or_ip> \
--port <port> \
--db <database_name> \
--username <username> \
--password <password> \
--authenticationDatabase <auth_database> <path_to_backup_directory>
使用 URI:
mongorestore \
--uri mongodb://<username>:<password>@<mongo_host_or_ip>:<port>/<database_name>?authSource=<auth_database> \
<path_to_backup_directory>
範例:
mongorestore \
--host mongodb.example.com \
--port 27017 \
--db mydatabase \
--username mongo_user \
--password mongo_pass \
--authenticationDatabase mydatabase
常用參數
- --uri=<connectionString>
指定 MongoDB 連線 URI
- --host=<hostname>:<port>,- -h=<hostname>:<port>
指定連線 Host 和 Port,預設為 localhost:27017
- --username=<username>,- -u=<username>
指定連線的使用者名稱
- --password=<password>,- -p=<password>
指定連線的密碼
- --authenticationDatabase=<dbname>
指定身份驗證的資料庫
- --db=<database>,- -d=<database>
指定要恢復的資料庫,如果不指定,會恢復所有資料庫
- --collection=<collection>,- -c=<collection>
指定要恢復的集合,如果不指定集合,會恢復指定資料庫的所有集合