当前位置: 首页 > news >正文

做网站应该会什么外贸营销型网站

做网站应该会什么,外贸营销型网站,wordpress 本地安装插件,网站关键词修改数据库备份工具(实现数据定时覆盖) 永远热爱,永远执着! 工具介绍 自动化测试数据库更新调度程序 这段 Python 脚本自动化了每天定时从生产数据库更新测试数据库的过程。它利用了 schedule 库来安排并执行每天指定时间的更新任务…

数据库备份工具(实现数据定时覆盖)

在这里插入图片描述

永远热爱,永远执着!

工具介绍

自动化测试数据库更新调度程序

这段 Python 脚本自动化了每天定时从生产数据库更新测试数据库的过程。它利用了 schedule 库来安排并执行每天指定时间的更新任务。

特点:

  • 自动数据库更新: 脚本自动连接到生产数据库,检索所有表,并将它们的数据转移到测试数据库。

  • 日志记录: 实现了全面的日志记录,以跟踪执行状态和更新过程中可能发生的任何错误。日志存储在 update_test_db.log 文件中。

  • 批处理处理: 数据传输分批进行,以优化性能,确保对大型数据集的高效处理。

如何使用:

  1. 配置:

    • prod_db_configtest_db_config 字典中配置生产和测试数据库的连接参数,包括用户名、密码、IP 地址、数据库名称和端口。
  2. 依赖项:

    • 确保已安装所需的依赖项。如果没有,请使用 pip install -r requirements.txt 进行安装。
    • cd ./static
    • pip install .\mysqlclient-1.4.6-cp37-cp37m-win_amd64.whl
  3. 日志记录:

    • 日志写入到 update_test_db.log 文件中。确保脚本对其所在目录具有写权限。
  4. 调度:

    • 更新任务被安排在每天午夜(00:00)执行。您可以通过修改 schedule.every().day.at("00:00").do(update_test_db) 行来调整计划。
  5. 执行:

    • 运行脚本。它将每 60 秒检查一次是否有待处理任务。
  6. 监控:

    • 监视日志文件 (update_test_db.log),以跟踪执行状态和更新过程中可能遇到的任何潜在错误。

注意:

  • 数据完整性:

    • 确保生产数据库包含必要的数据,并且测试数据库仅用于测试目的,以避免意外修改。
  • 安全性:

    • 保护数据库凭据,并限制对敏感信息的访问。
  • 错误处理:

    • 脚本包含了健壮的错误处理机制,以捕获并记录执行过程中可能出现的任何异常。

打包应用程序:

您可以使用 PyInstaller 将脚本打包成一个可执行文件,并且可以指定一个图标作为应用程序的图标。例如,您可以运行以下命令:

pyinstaller --onefile --icon=my_icon.ico your_script.py

这将创建一个独立的可执行文件,用户可以直接运行而无需安装 Python 或其他依赖项。

贡献:

欢迎对脚本进行贡献和改进。请随时 fork 仓库,进行修改,并提交 pull 请求。

关于:

该脚本旨在简化测试数据库更新的过程,促进更顺畅的开发和测试工作流程。

祝愉快的测试! 🚀

核心源码

import schedule
import time
import pandas as pd
from sqlalchemy import create_engine, text# 生产数据库配置
prod_db_config = {'username': 'root','password': 'root','ip': '127.0.0.1','database': 'test1','port': 3306
}# 测试数据库配置
test_db_config = {'username': 'root','password': 'root','ip': '127.0.0.1','database': 'test2','port': 3306
}def update_test_db():try:# 构建测试数据库连接字符串test_db_url = f"mysql://{test_db_config['username']}:{test_db_config['password']}@{test_db_config['ip']}:{test_db_config['port']}/{test_db_config['database']}?charset=utf8mb4"# 创建测试数据库引擎test_engine = create_engine(test_db_url)# 测试连接是否成功with test_engine.connect() as conn:conn.execute(text("select 1"))print("成功连接到测试数据库.")# 清除测试数据库中的所有表with test_engine.connect() as conn:tables = conn.execute("SHOW TABLES").fetchall()if tables:for table in tables:conn.execute(f"DROP TABLE IF EXISTS {table[0]}")# 获取生产数据库中的所有表prod_db_url = f"mysql://{prod_db_config['username']}:{prod_db_config['password']}@{prod_db_config['ip']}:{prod_db_config['port']}/{prod_db_config['database']}?charset=utf8mb4"prod_engine = create_engine(prod_db_url)with prod_engine.connect() as prod_conn:tables = prod_conn.execute("SHOW TABLES").fetchall()print("从生产数据库中获取表完成.")# 将生产数据库中的所有表数据备份到测试数据库for table in tables:table_name = table[0]print(f"备份表 {table_name} 数据...")data = pd.read_sql_table(table_name, prod_conn)data.to_sql(table_name, test_engine, index=False, if_exists='replace')print(f"表 {table_name} 数据备份完成.")print("测试数据库更新成功.")except Exception as e:print("更新测试数据库时出错:", e)if __name__ == "__main__":# 将任务调度在每天特定时间执行schedule.every().day.at("23:22").do(update_test_db)# 运行定时任务while True:schedule.run_pending()time.sleep(60)

运行效果

1.可直接代码运行

在这里插入图片描述

1.可执行exe程序

在这里插入图片描述

http://www.yidumall.com/news/28946.html

相关文章:

  • 做网站算软件行业吗网站页面设计
  • 专业提供网站建设服务南昌seo排名扣费
  • win10可以自己做网站百度关键词搜索排名多少钱
  • 福建石狮有做网站的没百度推广代理商有哪些
  • 一起生活小程序怎么注册百度seo公司哪家最好
  • 纺织服装网站建设规划方案seo公司外包
  • 襄阳市做网站 优帮云产品推广方法
  • 来个网站奖励自己软文推广渠道主要有
  • 随州网站建设价格推广自己产品的文案
  • 平湖公司做网站山东网站建设
  • 官方网站建设网站整合营销推广
  • 网站qq 微信分享怎么做的哪个平台视频资源多
  • 网站建设和网页建设的区别网站推广软文范例
  • 政府网站模版今日军事头条
  • 做兼职网站的主要参考文献网站推广在线
  • 门户网站的布局优化seo搜索
  • 河南郑州疫情最新数据百度的seo排名怎么刷
  • 住房和城乡建设部服务门户平台百度快速排名优化服务
  • asp flash网站源码百度自然搜索排名优化
  • 关于小城镇建设网站网站seo排名优化工具在线
  • 整合资源加强全市网站建设seo关键词排名优化价格
  • 网站做压力测试手机百度网页版入口
  • 郑州作网站外贸seo网站
  • 北京档案馆网站建设网站平台如何推广
  • 网站建设费记到什么科目营销型网页设计
  • 厦门网站建设格5188大数据官网
  • 邵阳网站建设推广yw77731域名查询
  • 沙井网站建设seo优化方案模板
  • 网站续费后为何还不能用英文网站建设
  • 网站建设静态部分总结seo快速整站上排名教程