Python_连接数据库,导出sql文件(mysql)

使用的是mysqldump命令,进行数据库sql文件的导出

import os

class InitSql(object):
    sql_file = "A.sql"
    def import_server_db(self):
        mysqldump_commad_dict = {'dumpcommad': 'mysqldump ', 'server': '127.0.0.1', 'user': 'root',
                                 'password': 'root', 'port': 3306, 'db': 'test_databases'}
        # mysqldump 命令
        sqlfromat = "mysqldump --column-statistics=0 -h%s -u%s -p%s -P%s %s > %s"
        # 生成相应的sql语句
        sql = (sqlfromat % (mysqldump_commad_dict['server'],
                            mysqldump_commad_dict['user'],
                            mysqldump_commad_dict['password'],
                            mysqldump_commad_dict['port'],
                            mysqldump_commad_dict['db'],
                            self.sql_file))
        print("执行的导出数据库的sql:" + sql)
        result = os.system(sql)
        return result

if __name__ == '__main__':
    initSql = InitSql()
    initSql.import_server_db()

一小点儿常用参数:

--all-databases, -A: 导出所有数据库

--databases, -B: 用于导出多个数据库,如果没有该选项,mysqldump 把第一个名字参数作为数据库名,后面的作为表名。使用该选项,mysqldump 把每个名字都当作为数据库名。

--no-data, -d:只导出表结构

-t:导出数据不导出结构

猜你喜欢

转载自blog.csdn.net/weixin_40877388/article/details/119828604