zoukankan      html  css  js  c++  java
  • 用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
    
    ')  
            for db in dbList:  
                for index in db['indexList']:  
                    f.write('REM %s.s%d
    ' %(db['server'], index))  
                    f.write('%s
    
    ' %getExportDbSql(db, index))  
                f.write('
    ')  
      
            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('
    ')  
      
    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

    推荐:http://www.cnblogs.com/roucheng/p/pythonyunsuan.html

  • 相关阅读:
    正则表达式简介
    每个程序员都必须遵守的编程原则
    String, StringBuffer, StringBuilder
    一些软件设计的原则
    A hard puzzle ACM HDU1097
    ACM HDU 1032The 3n + 1 problem
    Humble Numbers HDU 1058 ACM
    ACM HDU 1028Ignatius and the Princess III
    HangOver ACM HDU1056
    ACM HDU 1021Fibonacci Again
  • 原文地址:https://www.cnblogs.com/roucheng/p/pythonbat.html
Copyright © 2011-2022 走看看