def main(): parser = OptionParser() parser.add_option("-u", "--user", action="store",help="username for the database system",default = None) parser.add_option("-p", "--password", action="store",help="password for target output",default = u'defaultPASS123') parser.add_option("-t", "--targetDir", action="store", help="database backup target directory",default = 'd:/tmp/backup') parser.add_option("-n", "--name", action="store", help="database name for backup",default = None) parser.add_option("-s", "--show", action="store", help="print time stamp of last backup",default = None) parser.add_option("-r", "--reset", action="store", help="reset backup timestamp",default = None) (options, args) = parser.parse_args() dbSysInst = dbSys.dbSysSmart() c = cfg.configuration(dbSysInst) if not (options.reset is None): del c[u"mongoBackupTimeStamp"] return if not c.has_key(u"mongoBackupTimeStamp"): t = None else: t = c[u"mongoBackupTimeStamp"] if not (options.show is None): print c[u"mongoBackupTimeStamp"] return #print options,args #tv = comparer.getMecacoreVector(options.case,options.tf,options.blk,options.point,options.ant) backupDbAuto(options.name, options.targetDir, options.password, options.user, t)
def main(): c = cfg.configuration() defaultTarget = os.path.join(c.get("host.root", "d:/tmp/fileman"), "backup/sync") parser = OptionParser() # parser.add_option("-u", "--user", action="store",help="username for the database system",default = None) parser.add_option("-i", "--ignore", action="store_true", help="no password for exported db", default=False) parser.add_option( "-t", "--targetDir", action="store", help="database backup target directory", default=defaultTarget ) parser.add_option("-o", "--hostname", action="store", help="database name for backup", default=None) # parser.add_option("-n", "--name", action="store", help="database name for backup",default = None) # parser.add_option("-s", "--show", action="store", help="print time stamp of last backup",default = None) # parser.add_option("-r", "--reset", action="store", help="reset backup timestamp",default = None) (options, args) = parser.parse_args() if options.hostname is None: hostname = c.get("host.hostname", "q19420-01") else: hostname = options.hostname if options.ignore: print "Warning!!!.....No password for the db" password = None else: if 0 == len(args): print "Password is rquired, please enter the password following the command" # print args return password = args[0] exportDb(options.targetDir, password, hostname)
def backupDbAuto(dbName, targetDir, password, user, timeStamp): finalRes = [] if user is None: dbSysInst = dbSys.dbSysSmart() else: dbSysInst = dbSys.dbSysSmart(sessionBase.sessionInstanceBase(user)) beforeTimeStamp = dbSysInst.getTimeStamp() if dbName is None: dbList = dbSysInst.getDbNameList() else: dbList = [dbName] for i in dbList: print i res = backupDbSingle(i, targetDir, password, user, timeStamp, beforeTimeStamp) finalRes.extend(res) #res = dictListEncryptor(res, password) #res = dictListDecryptor(res) s = json.dumps(finalRes, sort_keys=True, indent=4) #s = json.dumps(finalRes) f = open(os.path.join(targetDir, str(dbName)+'_for_user_'+str(user)+'.json'),'w') f.write(s) f.close() dbSysInst = dbSys.dbSysSmart() c = cfg.configuration(dbSysInst) c[u"mongoBackupTimeStamp"] = beforeTimeStamp