j2EE 利用Quartz任务调度 进行 mysql 数据库自动备份
来源:互联网 发布:诊股最准的软件 编辑:程序博客网 时间:2024/04/29 03:23
我们的网站,每次数据库备份都得手动备份,有的时候还会忘记,没出问题还好,要是有问题那就麻烦啦,所以干脆自己写个备份程序吧
使用的quartz的任务调度功能,当然也顺便把它整到spring里面去了,把源码拿来与大家分享:
1. DataBackupImp.java
package cn.hunqiu.data;import java.io.IOException;import java.util.Date;public class DataBackupImp{private StringBuffer copyString = new StringBuffer("mysqldump ");//利用mysql的mysqldump 工具,前提是你要吧mysql 的bin目录加入你的系统pathprivate String lastStr = null;private String user = "-u****";//***为用户名private String pwd = "-p***";//***为密码private String db = "****";//要备份的数据库private String path = System.getProperty("testhunqiu.root");//你的网站程序的映射地址private String sqlFileName = null;@SuppressWarnings("deprecation")public DataBackupImp(){copyString.append(user).append(" ").append(pwd).append(" ").append(db).append(" >");sqlFileName = path + "WEB-INF\\datacopy\\"+db +"_"+new Date().toLocaleString().replaceAll(":","-")+".sql";lastStr = copyString + sqlFileName;}@SuppressWarnings("deprecation")public DataBackupImp(String user,String pwd,String db){copyString.append(user).append(" ").append(pwd).append(" ").append(db).append(" >");sqlFileName = path + "WEB-INF\\datacopy\\"+db +"_"+new Date().toLocaleString().replaceAll(":","-")+".sql";lastStr = copyString + sqlFileName;}@SuppressWarnings("deprecation")public void dataCopy() throws IOException{String temp = ("cmd /c "+lastStr).replaceAll("//","\"\\\\\"").replaceAll("\\\\","\"\\\\\"");//把\换成windows的地址分隔符/temp=temp.replaceFirst("\"","");Runtime.getRuntime().exec(temp);System.out.println("已经完成计算 数据库文件备份----------");System.out.println("文件路径:"+sqlFileName+" 备份时间"+new Date().toLocaleString());}}
2.applicationContextQuartz.xml
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"xmlns:context="http://www.springframework.org/schema/context"xmlns:mvc="http://www.springframework.org/schema/context/mvc" xmlns:p="http://www.springframework.org/schema/p"xmlns:tx="http://www.springframework.org/schema/tx" xmlns:util="http://www.springframework.org/schema/util"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsdhttp://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsdhttp://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsdhttp://www.springframework.org/schema/context/mvc http://www.springframework.org/schema/context/mvc/spring-mvc-3.0.xsd"><!-- Quartz任务调度 --><!--数据库备份--><bean id ="datacopyQuartz" class="cn.hunqiu.data.DataBackupImp"/><bean id="hqDatacopyQuartz" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"><property name="targetObject"><ref bean="datacopyQuartz"/></property><property name="targetMethod"><value>dataCopy</value></property></bean><bean id="datacopyQuartzTime" class="org.springframework.scheduling.quartz.CronTriggerBean"><property name="jobDetail"><ref bean="hqDatacopyQuartz"/></property><property name="cronExpression"><!-- <value>0 0 23 * * ?</value> --><!-- 每天23点 --><value>0 0 * * * ?</value><!-- 每小时 --></property></bean><bean id="startQuartz" lazy-init="false" autowire="no" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"><property name="triggers"><list><ref bean="datacopyQuartzTime"/></list></property></bean></beans>
- j2EE 利用Quartz任务调度 进行 mysql 数据库自动备份
- 使用quartz进行任务调度
- Mysql数据库定时任务自动备份
- 利用Xtrabackup进行mysql数据库的备份
- 利用Xtrabackup进行mysql数据库的备份
- 利用SQL2000的DTS调度进行定期数据库备份
- centOS利用crond自动备份mysql数据库
- 32-linux任务调度定时备份mysql数据库和文件夹
- Spring结合Quartz进行任务调度
- Spring-Quartz 进行任务调度思路
- 使用Quartz进行作业任务调度
- Spring进行任务自动调度
- Spring Quartz 实现任务自动调度
- Spring+quartz实现自动任务调度
- java sql编辑器 动态报表 数据库备份还原 quartz定时任务调度
- 数据库备份还原 quartz定时任务调度 自定义表单 java图片爬虫
- DB2数据库自动备份详解--(DB2 任务中心进行配置)
- 配置mysql数据库自动备份:windows任务计划
- 在Oracle 里面创建job
- 二叉查找树的各种操作C++实现
- Mini-XML入门基础 Getting Started with Mini-XML c
- 公开课学习笔记-[哈佛]计算机科学CS50(五)
- minixml创建与解析XML
- j2EE 利用Quartz任务调度 进行 mysql 数据库自动备份
- My test file
- 三. sqlldr初接触
- oracle restart–apply psu(11.2.0.2.4)
- Windows Message Types
- android全屏
- 好书
- 同步与互斥——占位贴
- Java API 汇总(未完待续)