美文网首页
使用 systemd timer 备份数据库

使用 systemd timer 备份数据库

作者: Linux大师 | 来源:发表于2023-07-28 12:25 被阅读0次

    主要的Linux发行版都改用systemd 来替代 System V启动方式,其中 systemd timer 能替代 crontab 计划任务的大部分功能。本文介绍了用systemd timer如何实现数据库备份,其他类型的计划任务可以同理实现。

    定义timer文件

    进入目录/usr/lib/systemd/system,按如下文件建立timer:

    [Unit]

    Description=Runs db backup every hour

    [Timer]

    # Time to wait after booting before we run first time

    OnBootSec=10min

    # Time between running each consecutive time

    OnUnitActiveSec=1h

    Unit=db_backup.service

    [Install]

    WantedBy=multi-user.target

    定义service文件

    进入目录/usr/lib/systemd/system,按如下文件建立service:

    [Unit]

    Description=Backup database

    [Service]

    Type=simple

    ExecStart=/usr/local/bin/db_backup

    写数据库备份脚本

    创建文件/usr/local/bin/db_backup,并写入数据库备份语句,例如:

    #!/usr/bin/bash

    /usr/bin/mysqldump -umy_username -pmy_password -h192.168.1.xx --databases my_database > /path/to/backup/dir/my_database.`date +'%Y%m%d%H%'`.sql

    启用并运行timer

    命令行下运行如下命令

    systemctl enable db_backup.timer

    systemctl start db_backup.timer

    计划任务执行后,即会在数据库备份的目录生成数据库备份文件

    文章来源:https://www.linuxprobe.com/systemd-timer-mysql.html

    相关文章

      网友评论

          本文标题:使用 systemd timer 备份数据库

          本文链接:https://www.haomeiwen.com/subject/hfgrpdtx.html