用python生成一个导出数据库的bat脚本文件
Posted roucheng
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用python生成一个导出数据库的bat脚本文件相关的知识,希望对你有一定的参考价值。
# 环境: python3.x def getExportDbSql(db, index): # 获取导出一个数据库实例的sql语句 sql = \'mysqldump -u%s -p%s -h%s -P%d --default-character-set=utf8 --databases mu_ins_s%s > %s.s%d.mu_ins_%d.sql\' %(db[\'user\'], db[\'pwd\'], db[\'host\'], db[\'port\'], index, db[\'server\'], index, index) return sql def createDbBackupFile(fname, dbList): # 生成数据库导出的语句保存到文件 if not fname or not dbList: return False f = open(fname, \'w\') if f: f.write(\'echo @off\\n\\n\') for db in dbList: for index in db[\'indexList\']: f.write(\'REM %s.s%d\\n\' %(db[\'server\'], index)) f.write(\'%s\\n\\n\' %getExportDbSql(db, index)) f.write(\'\\n\') f.close() return True return False def initDb(user, pwd, host, port, server_name, indexList): # 生成db字典对象并返回 db = {} db[\'user\'] = user db[\'pwd\'] = pwd db[\'host\'] = host db[\'port\'] = port db[\'server\'] = server_name db[\'indexList\'] = indexList return db def displayDb(db): print(\'user =\', db[\'user\']) print(\'pwd =\', db[\'pwd\']) print(\'host =\', db[\'host\']) print(\'port =\', db[\'port\']) print(\'server =\', db[\'server\']) print(\'indexList =\', db[\'indexList\']) print(\'\\n\') def displayList(list): for item in list: displayDb(item) if __name__ == \'__main__\': db1 = initDb(\'root\', \'123456\', \'127.0.0.1\', 3306, \'th1\', [10000, 1, 3]) db2 = initDb(\'root\', \'123456\', \'127.0.0.1\', 3306, \'th2\', [10000, 1]) dbList = [] dbList.append(db1) dbList.append(db2) #displayList(dbList) createDbBackupFile(\'export00.bat\', dbList) # 何问起 hovertree.com
以上是关于用python生成一个导出数据库的bat脚本文件的主要内容,如果未能解决你的问题,请参考以下文章
如何将MYSQL中数据导出到EXCEL表中 python 脚本?