zoukankan      html  css  js  c++  java
  • 使用 systemd timer 备份数据库

    使用 systemd timer 备份数据库

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

    SystemD

    定义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
    

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

    免费提供最新Linux技术教程书籍,为开源技术爱好者努力做得更多更好:https://www.linuxprobe.com/

  • 相关阅读:
    JAVA 设计模式 组合模式
    JAVA 设计模式 模板方法模式
    SpringBoot 数据篇之使用JDBC
    [Spring]01_环境配置
    [spring]03_装配Bean
    [Spring]04_最小化Spring XML配置
    [Quartz笔记]玩转定时调度
    [Spring]支持注解的Spring调度器
    asp.net core 系列 13 日志
    asp.net core 系列 12 选项 TOptions
  • 原文地址:https://www.cnblogs.com/linuxprobe/p/5598658.html
Copyright © 2011-2022 走看看