java spring mysql数据库自动备份_Windows下Spring3.x计划任务实现定时备份MySql数据库...

今天在空闲之余查了一下关于MySql数据库备份的方案,最后结合自己的项目情况写了一个关于Spring计划任务的例子,目前我这个版本是在Windwos下测试成功,希望对大家有所帮助,不足之处还请大家多多包含,有什么建议尽管提出,我会第一时间回复大家,谢谢!

1.首先第一步要搭建Spring3.x的环境,这里就不多说,直接上代码:

package cn.gov.csrc.report.action;

import java.io.IOException;

import java.io.InputStreamReader;

import java.io.LineNumberReader;

import javax.annotation.Resource;

import org.apache.struts2.convention.annotation.Action;

import org.quartz.JobDataMap;

import org.quartz.JobExecutionContext;

import org.quartz.JobExecutionException;

import org.springframework.context.annotation.Scope;

import org.springframework.scheduling.quartz.QuartzJobBean;

import org.springframework.stereotype.Controller;

import cn.gov.csrc.report.service.CaseService;

@Controller()

@Scope("prototype")

@Action("TimerAction")

public class TimerAction extends QuartzJobBean {

private int timeout;

private static int i = 0;

private CaseService caseService;

public TimerAction() {

}

/**调度工厂实例化后,经过timeout时间开始执行调度*/

public void setTimeout(int timeout) {

this.timeout = timeout;

}

@Resource

public void setCaseService(CaseService caseService) {

this.caseService = caseService;

}

@Override

protected void executeInternal(JobExecutionContext context)

throws JobExecutionException {

System.out.println("定时任务执行中......");

JobDataMap jobDataMap = context.getTrigger().getJobDataMap();

System.out.println(jobDataMap+"-------");

}

public void start() {

//备份mysql数据库

Runtime runtime = Runtime.getRuntime();

System.out.println("备份数据库任务开始了......");

String cmd = "mysqldump -h localhost -uroot -proot springdb > e:/springdb.sql";//一定要加-h localhost(或是服务器IP地址)

try {

Process process = runtime.exec("cmd /c" + cmd);

InputStreamReader inputStreamReader = new InputStreamReader(process.getErrorStream());

LineNumberReader lineNumberReader = new LineNumberReader(inputStreamReader);

String line;

while((line = lineNumberReader.readLine()) != null){

System.out.println(line+"----------------");

}

System.out.println("备份成功");

} catch (IOException e) {

System.out.println("备份失败");

e.printStackTrace();

}

System.out.println("备份数据库任务结束了......");

}

}

2.配置计划任何的配置文件,这里是使用的是quartz插件实现计划任务:

start

0 04 11 * * ?

3.最后附上quartz的jar包,有需要的朋友可以下载,加到你们的Spring环境中句可以使用了,这个是8.6的:http://pan.baidu.com/s/1dDuvSwp

还有一个quartz时间格式的工具,可以任意改变时间格式:下载地址:http://pan.baidu.com/s/1o6M3PB8

WP-DBManager插件介绍: WP-DBManager是wordpress的数据备份插件,目前最新版本为2.40,其主要用途是对WordPress 的数据库进行管理,从而省去了用户必须使用类似PhpMyadmin登录数据库进行备份、修复、导入等操作,并且可以前台执行 SQL 语句。 该备份插件功能强大,能自动备份数据库文件,只要你设置了自动备份时间,到时间后该系统会自动备份你的wordpress数据;备份数据库的下载、删除、恢复,包括把数据库发送到指定的邮箱;优化、修复、清空、删除数据库表;执行SQL查询等,总之该有的功能应该都有了。 WP-DBManager插件安装: 下载WP-DBManager插件,将文件解压缩,上传到/wp-content/plugins/目录。 登录wordpress后台控制面板激活该插件,这是后台左侧栏或多出个DataBase标签,点击标签会出现下拉列表,可以对其进行相应的设置,页面中主要有: Database 用户 WP 数据库以及数据表的基本信息 Backup DB 备份数据库操作 Manage Backup DB 可以选择对已备份数据库文件进行下载、恢复、删除等操作 Optimize DB 优化数据库 Repair DB 修复数据表 Empty/Drop Tables 清空/删除某个数据表 Run SQL Query 执行 SQL 命令语句 DB Options 设置数据库的路径(可向空间商询问)以及自动备份的时间 Uninstall WP-DBManager 卸载该插件 该插件界面虽然是英文界面,但是都很简单 首先备份旧站数据库,然后在新空间安装 WordPress 以及该插件并激活 将备份旧站所得数据库文件上传到新站的 /wp-content/backup-db 目录 登录新站后台去 Database –> Manage Backup DB -> Restore 中恢复刚才的数据库文件 使用 PhpMyadmin或其他登录到数据库中,将 wp_options 表中的 siteurl 修改为新站地址 登录新站后台,将 Options 中的 Blog address (URL) 修改为新站地址
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值