`
icejadelove
  • 浏览: 135033 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java备份MySQL (windows linux)

阅读更多
作为初级的管理员,每天都要备份数据,自动的任务不会设置,于是‘基本靠手’,这样不但繁琐,还保不齐甲流隔离了,有手没处使。

  所以写个java类吧,加载到SPRING程序的自动运行任务中。思路就是使用java调用系统的命令符,执行mysqldump命令。

·首先是Windows系统下:

给大家提个醒:
有人说用:“mysqldump --uroot --p123456 --opt”。但是我没有成功,最后使用这种写法成功了:“mysqldump --user=root --password=123456 --opt”
看来要写完整的方式。


·然后是Linux系统下:

这里很多人遇到的问题是
程序不报错,命令不执行,sql文件没有生成。我已开始用了以下几种写法:java.lang.Runtime.getRuntime().exec(new String[] { mysql });
java.lang.Runtime.getRuntime().exec(new String[] { "shell "+mysql });
java.lang.Runtime.getRuntime().exec(new String[] { "/bin/bash "+mysql });
java.lang.Runtime.getRuntime().exec(new String[] { "/bin/bash/shell "+mysql });
都没有成功,最后试验了这种写法成功了:
java.lang.Runtime.getRuntime().exec(new String[] { "sh", "-c", mysql });
前提是环境变量中都把MySQL的bin目录加上了。

下面请看完整代码:

-----------------------------------
/**
* 2009-11-26
* mqney.com
* Java操作MySQL数据库备份程序
*/
package com.mqney.mysql;
import java.util.Date;
import com.mqney.OokjDate;
/**
* @author mqney
*
*/
public class BackUpMySQL {

private static final String BASE_PATH_LINUX = "/root/";
private static final String BASE_PATH_WINDEWS = "E:\\";

public void backwindows() {
try {
String sqlname = BASE_PATH_WINDEWS + "mqney."
+ new OokjDate(new Date()).toString() + ".sql";
String mysql = "mysqldump --user=root --password=123456 --opt mqney> "
+ sqlname;
java.lang.Runtime.getRuntime().exec("cmd /c " + mysql);
} catch (Exception e) {
e.printStackTrace();
}
}

public void backlinux() {
try {
String sqlname = BASE_PATH_LINUX + "mqney."
+ new OokjDate(new Date()).toString() + ".sql";
String mysql = "mysqldump --user=root --password=123456 --opt mqney> "
+ sqlname;
java.lang.Runtime.getRuntime().exec(
new String[] { "sh", "-c", mysql });
} catch (Exception e) {
e.printStackTrace();
}
}
}
--------------------------------------------------------
分享到:
评论
1 楼 henry_huangs 2012-08-02  
正是我需要的!!

相关推荐

    linux和windows上备份Mysql数据库java代码

    NULL 博文链接:https://techpool.iteye.com/blog/553826

    Java实现对Mysql数据库的备份还原

    java实现对mysql数据库的备份与还原,可跨平台,windows与Linux通用,代码内含有利用注册表信息获取mysqldump命令实例

    java_mysql备份.rar

    java 备份mysql windows 和linux都可以运行每行都有注释详细配置好了可以直接用针对 mysql5.6分水岭版本的写法

    MySQL基于java实现备份表操作

    所需的配置信息是从配置文件读取的,也要注意在Windows和linux下路径问题。 配置文件如下: Java代码 收藏代码 # 数据库地址 dbAddress=localhost # 要备份的数据库名称 databaseName=nms # 数据库用户名 ...

    自己用java写的mysql管理工具,可跨平台操作

    MySqlYog软件是纯JAVA编写的软件,可以运行于WINDOWS,LINUX,UNIX系统,基本版本可以实现对数据库的基本管理,可视化创建表,视图,触发器,数据库的热备份,恢复,可远程管理管理系统等功能,其他功能正在努力开发...

    基于JAVA SSM MYSQL实现的银行管理系统.zip

    此外,MySQL支持多种操作系统,包括Windows、Linux、macOS、Solaris等,确保了其在不同环境下的兼容性和部署灵活性。 关系型模型与SQL支持 MySQL基于关系型数据库模型,数据以表格形式组织,并通过预定义的键(如...

    这是一个基于java和mysql 的学生成绩管理系统.zip

    此外,MySQL支持多种操作系统,包括Windows、Linux、macOS、Solaris等,确保了其在不同环境下的兼容性和部署灵活性。 关系型模型与SQL支持 MySQL基于关系型数据库模型,数据以表格形式组织,并通过预定义的键(如...

    一项基于Java+Mysql+JDBC的银行中间业务系统项目.zip

    此外,MySQL支持多种操作系统,包括Windows、Linux、macOS、Solaris等,确保了其在不同环境下的兼容性和部署灵活性。 关系型模型与SQL支持 MySQL基于关系型数据库模型,数据以表格形式组织,并通过预定义的键(如...

    MYSQL定时清除备份数据的具体操作

    由于项目需要,每个月的历史存量数据需要进行一个归档和备份操作,以及一些日志表需要进行一个明细字段清除,让mysql数据库磁盘节省空间。则需要一些定时任务来定时清理这些数据。 2|0技术选型 Java 可以基于...

    MySqlYog软件是纯JAVA编写的MYSQL管理工具

    MySqlYog软件是纯JAVA编写的软件,可以运行于WINDOWS,LINUX,UNIX系统,基本版本可以实现对数据库的基本管理,可视化创建表,视图,触发器,数据库的热备份,恢复,可远程管理管理系统等功能,其他功能正在努力开发...

    MYSQL

    4.6.1 Linux RPM注意事项 4.6.2 构造客户程序 4.6.3 系统特定的问题 4.6.3.1 Linux 注意事项 4.6.3.2 HP-UX 注意事项 4.7 安装 MySQL源代码分发 4.7.1 快速安装概述 4.7.2 运用补丁...

    MySQL 5.1中文手冊

    2.3.16. Windows版MySQL同Unix版MySQL对比 2.4. 在Linux下安装MySQL 2.5.在Mac OS X中安装MySQL 2.6. 在NetWare中安装MySQL 2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 ...

    MySQL 5.1官方简体中文参考手册

    2.3.16. Windows版MySQL同Unix版MySQL对比 2.4. 在Linux下安装MySQL 2.5.在Mac OS X中安装MySQL 2.6. 在NetWare中安装MySQL http://doc.mysql.cn/mysql5/refman-5.1-zh.html-chapter/(第 2/24 页)2006-11-02 19:...

    基于Java Swing + MySQL的图书管理系统.zip

    此外,MySQL支持多种操作系统,包括Windows、Linux、macOS、Solaris等,确保了其在不同环境下的兼容性和部署灵活性。 关系型模型与SQL支持 MySQL基于关系型数据库模型,数据以表格形式组织,并通过预定义的键(如...

    Linux下Mysql定时任务备份数据的实现方法

    当安装完成操作系统之后,默认便会启动此任务调度命令。下面这篇文章主要给大家介绍了关于在Linux下Mysql定时任务备份数据的实现方法,文中通过示例代码介绍的非常详细,需要的朋友可以参考下

    MySQL 5.1参考手册

    2.3.16. Windows版MySQL同Unix版MySQL对比 2.4. 在Linux下安装MySQL 2.5.在Mac OS X中安装MySQL 2.6. 在NetWare中安装MySQL 2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 ...

    基于Java Swing + MySQL + JDBC 的图书管理系统.zip

    此外,MySQL支持多种操作系统,包括Windows、Linux、macOS、Solaris等,确保了其在不同环境下的兼容性和部署灵活性。 关系型模型与SQL支持 MySQL基于关系型数据库模型,数据以表格形式组织,并通过预定义的键(如...

    基于Java SpringBoot + mysql的在线图书展示商城。.zip

    此外,MySQL支持多种操作系统,包括Windows、Linux、macOS、Solaris等,确保了其在不同环境下的兼容性和部署灵活性。 关系型模型与SQL支持 MySQL基于关系型数据库模型,数据以表格形式组织,并通过预定义的键(如...

Global site tag (gtag.js) - Google Analytics