创建一个 python 脚本,该脚本使用来自 mysql 数据库的结构和数据文件创建 sql 转储



我想用python制作一个备份脚本,制作一个带有结构和数据.sql文件,并将其保存在磁盘上?

问题是我想远程制作备份例程,因此文件将存储在不同的服务器中。确保如果我的服务器死了,数据不会随之死去。

可能吗?

我不明白你为什么要在 Python 中这样做,因为已经有一个命令:mysqldump.如果指定它:

mysqldump -u username -p database

它将查询您的密码,然后将 SQL 语句写入标准输出。

您可以使用 I/O 重定向将其写入文件,例如:

mysqldump -u username -p database > file.sql

由于 SQL 是一种相当冗长的语言,您还可以通过将输出传递到gzip压缩器来构造压缩文件:

mysqldump -u username -p database | gzip --best > file.sql.gz

如果你想用Python"编写"一个自己做调用的程序,你可以用subprocess

import subprocess
username = 'the_username'
password = 'the_password'
database = 'my_fancy_database'
with open('file.sql','w') as output:
c = subprocess.Popen(['mysqldump', '-u',username,'-p%s'%password,database],
stdout=output, shell=True)

但这只是围绕mysqldump命令的一些逻辑。

最新更新