py mongo backup restore
1.0.0
Python Library zur Sicherung und Wiederherstellung von MongoDB
Github Repo: https://github.com/sannjayy/py-mongo-backup-restore
Machen Sie Folgendes in Ihrem Virtualenv:
pip install py-mongo-backup-restore
Import:
from py_mongo_backup_restore import PyMongoBackupRestore
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:[email protected]/database?retryWrites=true&w=majority'
}
# Creating Instance
mongo_handler = PyMongoBackupRestore ( ** config )
print ( 'URI -> ' , mongo_handler . get_uri ()) # Returns the Mongo Host UriUm zu überprüfen, ob Mongodump- und Mongorestore -Befehle funktionieren
Dieses Skript überprüft die Version von Mongodump and Mongorestore -Befehlen mit der Flagge --version. Wenn die Befehle funktionieren, druckt sie eine Erfolgsnachricht; Andernfalls druckt es eine Fehlermeldung.
PyMongoBackupRestore ( ** config ). check_mongodump_mongorestore () # 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 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" ,
)
Entwickelt von Sanjay Sikdar .