Python Library to Backup and Restore MongoDB
Project description
Python MongoDB Backup & Restore
Python Library to Backup and Restore MongoDB
GitHub Repo: https://github.com/sannjayy/py-mongo-backup-restore
Installaion
Do the following in your virtualenv:
pip install py-mongo-backup-restore
Import:
from py_mongo_backup_restore import PyMongoBackupRestore
Configuration:
from py_mongo_backup_restore import PyMongoBackupRestore
# Database Configuration:
config = {
'scheme': 'mongodb',
'host': '37.108.158.64:27017',
'username': 'username',
'password': 'password',
'extra_options': '?authSource=admin', # Optional
'database_name': 'test', # Optional
}
# (OR) Connection with URI
config = {
'connection_string': 'mongodb+srv://username:password@host.gp2xb.mongodb.net/database?retryWrites=true&w=majority'
}
# Creating Instance
mongo_handler = PyMongoBackupRestore(**config)
print('URI -> ', mongo_handler.get_uri()) # Returns the Mongo Host Uri
To check if mongodump and mongorestore commands are working
This script checks the version of mongodump and mongorestore commands using the --version flag. If the commands are working, it prints a success message; otherwise, it prints an error message.
PyMongoBackupRestore(**config).check_mongodump_mongorestore()
Backup Database:
# Backup Full Database
mongo_handler.backup(
database_name = "DATABASE_NAME", # Optional if a database_name is provided in the config.
backup_folder = "BACKUP_FOLDER",
compression="gzip" # (Optional)
)
# (OR) Backup a Collection
mongo_handler.backup(
database_name = "DATABASE_NAME", # Optional if a database_name is provided in the config.
collection_name = "COLLECTION_NAME",
backup_folder = "BACKUP_FOLDER",
compression="gzip" # (Optional)
)
Restore Database:
# Restore Full Database
mongo_handler.restore(
database_name = "DATABASE_NAME", # Target Database Name
backup_folder = "BACKUP_FOLDER/BACKUP_NAME",
)
# (OR) Restore a Collection
mongo_handler.restore_collection(
database_name = "DATABASE_NAME", # Target Database Name
collection_source = "BACKUP_FOLDER/BACKUP_NAME/file.bson",
collection_name = "COLLECTION_NAME",
)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file py_mongo_backup_restore-2.1.0.tar.gz
.
File metadata
- Download URL: py_mongo_backup_restore-2.1.0.tar.gz
- Upload date:
- Size: 4.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.12.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8bd69df91c01215d62fb7046b41baddf011ccfcf69f7f1cc28df860f6231d568 |
|
MD5 | bcc78d13b744efddb08c9189c60f9c4e |
|
BLAKE2b-256 | 5f7a608aa4c7016171428bc11bbd6d2f652c7b3853ada8748e342b9cbdd78a7b |