在windows中使用python调用mysql脚本进行mysql的定时备份

关于如何使用python在windows中进行备份数据库

有些时候我们觉得直接写windows的bat文件是比较麻烦,相对应的语法也是比较难以理解,至此,python来说,语法简单,调用也相对容易,为了可以定时备份本地的mysql,我决定使用python写一个备份的脚本,用于定时备份mysql文件

1首先写好对应的Python脚本

废话不多,直接上代码

import os
from datetime import datetime,timedelta
import random
print(os.getcwd())
if not os.path.exists(r"C:\Users\***\Desktop\mysqlback"):
    os.mkdir(r'C:\Users\***\Desktop\mysqlback')
for root,dirs,files in os.walk(r"C:\Users\***\Desktop\mysqlback"):
    for name in files:
        print(os.path.join(root,name))
        if name.endswith(".sql"):
            da=name[:10]
            if (datetime.now()-timedelta(days=10))>datetime.strptime(da,"%Y-%m-%d"):
                print(os.path.join(root,name))
                os.remove(os.path.join(root,name))
            else:
                print('删除失败!')
        
os.system(r"mysqldump -uroot -p**** zzer_manage>C:\Users\guanjw\Desktop\mysqlback\{}.sql".format(str(datetime.today().date())))


我使用的是os的system模块,调用的就是mysql的自身的备份命令,没有其他的。

2使用windows系统的定时任务功能

在运行窗口输入定时界面,或者右键"我的电脑"点击管理
在这里插入图片描述
进入到如下界面
在这里插入图片描述
然后进入到新建定时任务
在这里插入图片描述
按照windows的操作下一步一步操作后即可使用python脚本进行定时备份mysql了,大功告成!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在 MySQL 触发器调用 Python 脚本,你可以使用以下步骤: 1. 在 MySQL 创建一个触发器,以便在特定事件发生时触发执行 Python 脚本。 2. 在 Python 编写脚本,以便执行所需的操作。你可以使用 PythonMySQL 连接库(如 PyMySQL)与 MySQL 进行交互。 3. 在触发器调用 Python 脚本,可以通过 shell 命令调用 Python 解释器来实现。例如,在 Linux 系统上,你可以使用以下命令: ``` `/usr/bin/python /path/to/your/python/script.py` ``` 4. 将该命令作为 MySQL 触发器的 shell 命令调用即可。 需要注意的是,如果你的 Python 脚本需要接收参数,你需要在触发器将这些参数传递给 shell 命令。可以使用 MySQL 的 `CONCAT()` 函数将参数拼接成字符串,然后在 shell 命令解析这个字符串。 示例代码如下: ```mysql CREATE TRIGGER `my_trigger` AFTER INSERT ON `my_table` FOR EACH ROW BEGIN SET @args = CONCAT('arg1', ' ', 'arg2', ' ', NEW.`column`); SET @cmd = CONCAT('/usr/bin/python /path/to/your/python/script.py', ' ', @args); SET @result = sys_exec(@cmd); END; ``` 在这个示例,我们创建了一个名为 `my_trigger` 的触发器,它会在 `my_table` 表插入新行后触发。在触发器,我们使用 `CONCAT()` 函数将三个参数拼接成字符串,并将其存储在变量 `@args` 。然后,我们使用 `CONCAT()` 函数将 Python 解释器路径和脚本路径与 `@args` 拼接起来,存储在变量 `@cmd` 。最后,我们调用 MySQL 的 `sys_exec()` 函数来执行 shell 命令并将结果存储在变量 `@result`

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值