from libx import * def backup_full_db(ip1,porta1,user1,senha1,db1,ip2,porta2,user2,senha2,db2): if ip1 =="localhost": link1 = f"mongodb://{ip1}:{str(porta1)}/?readPreference=primary" else: link1 = f"mongodb://{user1}:{senha1}@{ip1}:{porta1}/?authSource=admin&readPreference=primary&ssl=false" if ip2 =="localhost": link2 = f"mongodb://{ip2}:{str(porta2)}/?readPreference=primary" else: link2 = f"mongodb://{user2}:{senha2}@{ip2}:{porta2}/?authSource=admin&readPreference=primary&ssl=false" db_origem = MongoClient(link1).get_database(db1) db_destino = MongoClient(link2).get_database(db2) lista_colecoes = db_origem.list_collection_names() for c in lista_colecoes: print("_"*80) print(c,type(c)) print("_"*80) col = db_destino[c] col_origem = db_origem.get_collection(c) col_destino = db_destino.get_collection(c) t = col_origem.count_documents({}) n = 0 for doc in col_origem.find(): if c in ["comentarios","marcas","matriculas"]: doc["ano_sem"] = "2021-1" n+=1 col_destino.update_one({"_id":doc["_id"]},{"$set":doc},upsert=True) print(c,n," / ",t) # backup_full_db("0.0.0.0",2323,"USERNAME","PASSWORD","connect","localhost",27017,"","","NOME_DO_BACKUP") # backup_full_db("34.71.239.163",2323,"HsbCUfRc4r30d0lBNQ3lZIsVPBPfSrOwltz8JFP00imR38MZvM","oGLOx7sbBuuMywyryj97kFblWOgYNjLMRBiYH4RTVvYqqnX0J6","connect","paas1.pp.ifms.edu.br",27017,"serti","TYS5DNpGPmBkFaVK","ifmsconselho")