zoukankan      html  css  js  c++  java
  • Mysql多数据库备份

    备份数据脚本

    #!/bin/bash
    
    # date是linux的一个命令  date [参数] [+格式]
    time=` date +%Y_%m_%d_%H_%M_%S `
    # 备份输出路径
    backupdir=/home/backup/
    # 备份文件路径
    filedir=/home/my_app/files/
    # 用sql语句取出所有以'test'开头的数据库。将指令通过管道传递给mysql客户端;-N表示不输出结果的表头及结尾,得到的结果是纯粹的数据集
    databases=(`echo 'show databases like "test%";' | mysql -N -uroot -proot`)
    # 将mysqldump的输出文件通过管道传给gzip压缩,gzip是不能保存原文件且不能压缩目录的
    mysqldump -uroot -proot --databases ${databases[*]} | gzip > $backupdir/$time.sql.gz
    # 备份文件。zip [压缩输出文件] [被压缩文件]
    zip -r $backupdir/$time.zip $filedir
    # 删除7天前的备份文件
    find $backupdir -mtime +7 -name "*" -exec rm -rf {} ;
    

    然后设置crontab在每天凌晨运行备份脚本即可

    数据恢复

    mysql -u root -p DATABESE_NAME < dump.sql
    

    或者连接mysql客户端

    mysql> source dump.sql
    
  • 相关阅读:
    Linux kernel device mapper
    草莓网
    openwrt系统源码地址
    ubuntu 安装eclipse for c++
    ubuntu下安装eclipse IDE for C/C++ developers
    Makefile 中:= ?= += =的区别
    core dump
    rtp
    skbuff
    A Neural Algorithm of Artistic Style
  • 原文地址:https://www.cnblogs.com/luozx207/p/11721226.html
Copyright © 2011-2022 走看看