Linux MySQL8.0.12备份数据库


 

环境CentOS7.4

MySQL8.0.12

 

#备份地址
backupdir=/data/bak
#备份文件后缀时间
time=_` date +%Y_%m_%d_%H_%M_%S `
#需要备份的数据库名称
db_name=test
#mysqldump命令使用绝对路径
/usr/local/mysql/bin/mysqldump $db_name | gzip > $backupdir/$db_name$time.sql.gz
# 删除7天之前的备份文件

find $backupdir -name $db_name"*.sql.gz" -type f -mtime +7 -exec rm -rf {} \; > /dev/null 2>&1

  

同时修改MySQL的配置文件,my.cnf

 

[mysqldump]
# 备份数据库使用
user=数据库账号 有备份所要备份数据的权限
password=数据库密码

如果 直接 mysqldump -uroot -p $db_name > t.sql这样提示

mysqldump: [Warning] Using a password on the command line interface can be insecure.

这是MySQL5.6之后出现,为了安全起见

因此把数据库账号密码放在配置文件中 

 

执行定时任务

crontab -e
# 添加
03 03 * * * /usr/bin/sh /home/test_bak.sh

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM