ubuntu24.04上为mysql8每日备份,并删除30天之前的备份记录 包含遇到的问题解决方案

1.增加权限
GRANT SELECT, SHOW VIEW, RELOAD, REPLICATION CLIENT, EVENT, TRIGGER ON *.* TO 'root'@'localhost' IDENTIFIED BY '123456';

1.创建脚本和备份存放的目录
sudo mkdir -p /mysqlback/databack

2.bkDatabasedrss.sh 文件内容(里面的行尾符号需要删除)
!/bin/bash
# Name:bkDatabasedrss.sh
# This is a ShellScript For Auto DB Backup and Delete old Backup
backupdir=/mysqlback/databack
time=` date +%Y%m%d_%H%M%S`
/usr/bin/mysqldump -uroot -p123456 zndmx | gzip > $backupdir/zndmx_$time.sql.gz
find $backupdir/ -name "zndmx_*.sql.gz" -type f -mtime +30 -exec rm {} \; > /dev/null 2>&1
注释:
· backupdir 是sql备份文件的文件夹
· -u root就是数据库用户是root 然后 - p123456a就是数据库密码是123456 然后 test 是数据库名,后面$都是引用前面声明,
· $time.sql这是创建sql文件,find就是找文件
· $backupdir后面必须要有/ 不然找不到
· 然后-name这些就找文件名了
· -mtime +7是每隔7天删除一次
· mtime +30是每隔30天删除一次
如果是 -mmin +7 表示文件更改时间距现在7分钟以前。
-exec rm {} ; 表示执行一段shell命令,exec选项后面跟随着所要执行的命令或脚本,然后是一对儿{},一个空格和一个,最后是一个分号。
/dev/null 2>&1 把标准出错重定向到标准输出,然后扔到/DEV/NULL下面去。通俗的说,就是把所有标准输出和标准出错都扔到垃圾桶里面;其中的&表示让该命令在后台执行。

3.备份脚本
mysqldump -u root -p zndmx >/home/1.sql

4.Linux 保存文件时出现E45: ‘readonly’ option is set (add ! to override)的解决办法:
若有root权限,可以输入 :wq! 强行保存退出。
按ESC退出编辑模式,先输入:set noreadonly,再输入:wq

5.文件只读取消
报错:E212 则vi前面加sudo
先输入:set noreadonly,再输入:wq
chmod 777 bkDatabasedrss.sh


9.安装cron
sudo apt-get install cron

6.重启定时器
sudo service cron restart

7.定时器改动
crontab -l
crontab -e(用户级) 选择2,是vi模式  ,如果选错了,可以 select-editor 修改
添加一行
59 23 * * * /mysqlback/databack/bkDatabasedrss.sh

sudo vi /etc/crontab 系统级
添加一行
59 23 * * * /mysqlback/databack/bkDatabasedrss.sh

8.编辑模式无法backspace删除的处理
sudo vi  /etc/vim/vimrc.tiny
修改  set compatible为set nocompatible        设置是否兼容
添加  set backspace=2          设置 backspace可以删除任意字符

更新软件列表
apt-get update
 

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值