脚本:
db_user="MYSQL账号" db_passwd="MySQL密码" db_name="数据库名" #备份至目录 backup_dir="/root/backup" # 增加时间前缀命名 time="$(date +"%Y-%m-%d_%H-%M-%S")" #命名 mysqldump -u$db_user -p$db_passwd $db_name > "$backup_dir/$db_name"_"$time.sql" #压缩 zip -r "$backup_dir/$db_name"_"$time.zip" "$backup_dir/$db_name"_"$time.sql" rm -rf "$backup_dir/$db_name"_"$time.sql" #运行PHP 上传七牛脚本 php /root/PHP脚本名 "$backup_dir/$db_name"_"$time.zip" rm -rf "$backup_dir/$db_name"_"$time.zip"
PHP脚本
require_once 'php-sdk-7.1.3/autoload.php'; //引入七牛 PHP SDK print_r($argv); // 引入鉴权类 use Qiniu\Auth; // 引入上传类 use Qiniu\Storage\UploadManager; // 需要填写你的 Access Key 和 Secret Key $accessKey = ''; $secretKey = ''; // 构建鉴权对象 $auth = new Auth($accessKey, $secretKey); // 要上传的空间 $bucket = 'back'; // 生成上传 Token $token = $auth->uploadToken($bucket); // 要上传文件的本地路径 $filePath = $argv[1]; // 上传到七牛后保存的文件名 $key = date("Y-m-d H:i:s").'.zip' ; // 初始化 UploadManager 对象并进行文件的上传 $uploadMgr = new UploadManager(); // 调用 UploadManager 的 putFile 方法进行文件的上传 list($ret, $err) = $uploadMgr->putFile($token, $key, $filePath); echo "\n====> putFile result: \n"; if ($err !== null) { var_dump($err); } else { var_dump($ret); }
增加计划任务执行
*/5 * * * * /root/脚本名
每5分钟 上传一次MYSQL备份
0 条评论