mysql5.7 自动备份数据库 和数据的恢复

    xiaoxiao2023-11-08  152

    在网上查询数据库备份方法:

    mysqldump -hhostname -uusername -ppassword -database databasename | gzip > backupfile.sql.gz

    这样执行会出现问题  这里建议参数指向数据的my.cnf

    这里编辑my.cnf 添加用户名和密码

    注意:创建文件夹权限要够  我这里用的777  

    vi /etc/my.cnf [client] host = localhost user = user password = password

    下面记录我的备份和恢复处理

    数据库的备份脚本:mysql_backup.sh #!/bin/bash backupdir=/home/task/mysql/data time=` date +%Y-%m-%d-%H:%M:%S ` db_name=mysite mysqldump --defaults-extra-file=/etc/my.cnf --databases $db_name | gzip > $backupdir/$time$db_name.sql.gz find $backupdir -name "*.sql.gz" -type f -mtime +5 -exec rm -rf {} \; > /dev/null 2>&1

    参考网上资料  备份数据库后压缩数据库备份文件

    定时任务添加 每日凌晨备份数据库 crontab -e 0 0 * * * /home/task/mysql_backup.sh

    关于数据库的恢复 

    #!/bin/bash backdir=/home/task/mysql/data gunzip < $backdir/2019-05-25-18:01:17mysite.sql.gz | mysql --defaults-extra-file=/etc/my.cnf mysite

    这里要指定恢复数据库备份文件的名称 要先解压

    如果数据库备份文件没有压缩

    #!/bin/bash mysql --defaults-extra-file=/etc/my.cnf databasename < backupfile.sql

     

    最新回复(0)