搜索
查看: 5167|回复: 0

Windows 自动备份Mysql上传到七牛云储存

[复制链接]

330

主题

177

回帖

1071

积分

vip用户

积分
1071

注册会员活跃会员热心会员

QQ
发表于 2018-10-5 10:03:13 来自手机 | 显示全部楼层 |阅读模式
环境
Windows 服务器
Winrar 压缩软件
Mysql数据库
PHP 5.3以上环境 (不包括5.3)推荐使用5.4
PHP 七牛 SDK 版本为 7.1.3

实现方法
实现方法

两个bat文件 一个php文件

1.bat 用于备份mysql数据 并使用Winrar压缩 运行php 传文件路径给php上传到七牛

2.bat 用于定时循环运行1.bat

bak.php 给上传备份文件至七牛

文件内容如下

1.bat

[pre]
set "Ymd=%DATE:~0,4%-%DATE:~5,2%-%DATE:~8,2%_%TIME:~0,2%_%TIME:~3,2%_%TIME:~6,2%"
md "C:\Users\Administrator\Desktop\bak\%ymd%"
"D:\MySQL Server 5.5\bin\mysqldump.exe" --opt -Q myrws -uroot -pAATNHaatno3ni4kciabxf5pe3 > C:\Users\Administrator\Desktop\bak\%Ymd%\mysql.sql
echo Winrar loading...
"C:\Program Files (x86)\WinRAR\WinRAR.exe" a -ep1 -r -o+ -m5 -df "C:\Users\Administrator\Desktop\bak\%Ymd%.rar" "C:\Users\Administrator\Desktop\bak\%Ymd%"
echo OK!
D:\php\php C:\Users\Administrator\Desktop\bak\bak.php "C:\Users\Administrator\Desktop\bak\%Ymd%.rar"
[/pre]
注意的是上面的路径  需要自己修改一下  mysql的bin路径  备份路径 与php路径 以及 bak.php路径

2.bat

[pre]
@echo off

:start
start "" cmd /c C:\Users\Administrator\Desktop\1.bat
choice /t 5 /d y /n >nul

goto start
[/pre]
上面的路径 也需要修改一下 1.bat的路径   上面的5  则为 5秒运行一次备份 注意时间修改!

bak.php

[pre]
<?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
// 构建鉴权对象
$auth = new Auth('七牛AK', '七牛SK');
// 要上传的空间
$bucket = 'bakk';
// 生成上传 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);
}
[/pre]
注意 七牛SDK路径
运行2.bat 就会定时运行1.bat 备份文件 让php执行上传至七牛云储存 ! END  
1477305148_pic_real10-02-54-.jpg
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表