mysql自动备份脚本

windows下

@echo off

set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"
mysqldump --opt -u root --password=123456 database > database_%Ymd%.sql

Linux下:

#!/bin/sh
mysqldump -uroot -p123abc mysql>/var/ftp/pub/mysql_backup/mysql_$(date +%Y%m%d_%H%M%S).sql
#!/bin/sh
mysqldump  --defaults-extra-file=./my.cnf mysql>/var/ftp/pub/mysql_backup/mysql_$(date +%Y%m%d_%H%M%S).sql

建立my.cnf文件,如下格式:

[client]

host=127.0.0.1

user=root

password=xxxxxx

计划任务开启:
systemctl start crond.service
修改 /etc/crontab 文件 添加任务

SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root

*  2  *  0  * root /var/xxx.sh

可以用touch test.sh #创建test.sh文件
vi test.sh #编辑test.sh文件
加入内容
#!/bin/bash
mkdir test
保存退出。
chmod a+x test.sh #给test.sh可执行权限
如test,sh文件在 /home/work文件下
执行
方法一 本身目录下运行
进入 cd /home/workwen文件下
执行 ./test.sh
命令会在当前目录下创建一个“test”目录。
方法二 绝对路径运行
执行 sh /home/work/test.sh
方法三 本身目录下运行
sh test.sh

Leave a Reply