python_auto_backup_mysql
声明:资源链接索引至第三方,平台不作任何存储,仅提供信息检索服务,若有版权问题,请https://help.coders100.com提交工单反馈
这是一个使用Python编写的自动备份MySQL数据库的工具。它可以通过定时任务来执行,以确保数据库始终处于安全状态。
使用方法:
1. 首先确保已经安装了`pymysql`库,如果没有安装,可以使用以下命令安装:
2. 创建一个名为`backup_mysql.py`的文件,并将以下代码复制到文件中:
3. 在命令行中运行`backup_mysql.py`脚本,即可实现MySQL数据库的定时备份。
使用方法:
1. 首先确保已经安装了`pymysql`库,如果没有安装,可以使用以下命令安装:
pip install pymysql
2. 创建一个名为`backup_mysql.py`的文件,并将以下代码复制到文件中:
import os
import time
import pymysql
from datetime import datetime, timedelta
# 设置数据库连接信息
db_config = {
'host': 'localhost',
'port': 3306,
'user': 'root',
'password': 'your_password',
'database': 'your_database',
}
# 创建数据库连接
def create_connection(config):
connection = pymysql.connect(config)
if connection.is_connected():
print("数据库连接成功")
else:
print("数据库连接失败")
exit()
return connection
# 备份数据库
def backup_database(connection, table_name):
try:
cursor = connection.cursor()
sql = f"SELECT FROM {table_name}"
cursor.execute(sql)
data = cursor.fetchall()
with open(f"{table_name}_backup.sql", "w", encoding='utf-8') as f:
for row in data:
f.write(','.join(row) + '
')
print(f"{table_name}_backup.sql 文件已生成")
except Exception as e:
print(f"备份数据库时发生错误:{e}")
finally:
cursor.close()
# 删除旧的备份文件
def delete_old_backup(connection, table_name):
try:
sql = f"DROP TABLE IF EXISTS {table_name}_backup;"
connection.execute(sql)
print(f"{table_name}_backup 表已删除")
except Exception as e:
print(f"删除旧备份文件时发生错误:{e}")
finally:
connection.commit()
connection.close()
# 主函数
def main():
while True:
# 获取当前时间
current_time = datetime.now().strftime('Y-m-d H:M:S')
print(f"当前时间:{current_time}")
# 检查是否有旧的备份文件
old_backup_file = "./backup/" + current_time + ".txt"
if os.path.exists(old_backup_file):
print("发现旧的备份文件,正在删除...")
delete_old_backup(create_connection(db_config), "your_table_name")
else:
print("没有找到旧的备份文件,无需操作。")
# 等待5秒后再次检查是否有旧的备份文件
time.sleep(5)
if __name__ == '__main__':
main()
3. 在命令行中运行`backup_mysql.py`脚本,即可实现MySQL数据库的定时备份。
-
giantstar
- 2025-04-05 23:55:13访问
- 积分:1
-
douban
- 2025-04-05 23:54:34访问
- 积分:1
-
Sisi-gudang115
- 2025-04-05 23:51:39访问
- 积分:1
-
MNIST_Dataloader
- 2025-04-05 23:51:09访问
- 积分:1
-
hm_car2
- 2025-04-05 23:49:21访问
- 积分:1
-
fooltrader
- 2025-04-05 23:48:33访问
- 积分:1
-
股市分析
- 2025-04-05 23:45:47访问
- 积分:1
-
PackageApkTool
- 2025-04-05 23:45:10访问
- 积分:1
-
ostep-homework
- 2025-04-05 23:42:47访问
- 积分:1
-
ostep-projects
- 2025-04-05 23:42:11访问
- 积分:1
-
知到自动化
- 2025-04-05 23:39:05访问
- 积分:1
-
TodoList
- 2025-04-05 23:37:12访问
- 积分:1
-
Mulan-PaddleMM
- 2025-04-05 23:33:54访问
- 积分:1
-
mo-frappe
- 2025-04-05 23:33:10访问
- 积分:1
-
blockly-source
- 2025-04-05 23:32:10访问
- 积分:1
-
AzurLaneCDTool
- 2025-04-05 23:31:30访问
- 积分:1
-
jd_autobuy_py3
- 2025-04-05 23:27:54访问
- 积分:1
-
ygw_data
- 2025-04-05 23:27:25访问
- 积分:1
-
pruning_before_training-main-xiao
- 2025-04-05 23:24:20访问
- 积分:1
-
pydata-book-modify
- 2025-04-05 23:21:08访问
- 积分:1
-
Pictures_zoom
- 2025-04-05 23:20:03访问
- 积分:1
访问申明(访问视为同意此申明)
2.部分网络用户分享TXT文件内容为网盘地址有可能会失效(此类多为视频教程,如发生失效情况【联系客服】自助退回)
3.请多看看评论和内容介绍大数据情况下资源并不能保证每一条都是完美的资源
4.是否访问均为用户自主行为,本站只提供搜索服务不提供技术支持,感谢您的支持