Java实现mysql数据库备份
Runtime是一个与JVM运行时环境有关的类,这个类是Singleton的。
Runtime.getRuntime()可以取得当前JVM的运行时环境,这也是在Java中唯一一个得到运行时环境的方法。
Runtime.exec()
public Process exec(String[] cmdarray) throws IOException
这个方法中cmdArray是一个执行的命令和参数的字符串数组,数组的第一个元素是要执行的命令往后依次都是命令的参数。
Runtime.getRuntime().exec()在不同环境下的使用方法:
//Windows XP, Windows 2000
Runtime.getRuntime().exec(new String[] {"cmd /c command"})
//Windows 98
Runtime.getRuntime().exec(new String[] {"command /c command"})
//Linux
Runtime.getRuntime().exec(new String[] {"/bin/sh", "-c", command"})
Java实现mysql数据库备份功能完整代码:
public class MysqlExport {
public static void main(String[] args) {
String username = "mysql_user";
String password = "mysql_pwd";
String server = "toughhou.gotoftp3.com";
String port = "3306";
String db = "houxiaolongr";
String exportPath = "/home/tough/workspace/MysqlUtility/src/mysql/export.sql";
//构建mysqldump命令"mysqldump -uroot -proot -h127.0.0.1 dbname > export.sql"
String exportCMD = "mysqldump " + "-u" + username + " -p" + password + " -h" + server + " " + db + " > " + exportPath;
Runtime runtime = Runtime.getRuntime();
try {
//-c告诉它读取随后的字符串,exportCMD是要运行的命令。
runtime.exec(new String[] {"/bin/sh","-c",exportCMD});
} catch (IOException e) {
e.printStackTrace();
System.out.println(e.getMessage());
}
}
}
因为第一次用RUntime.getRuntime.exec()方法,不知道Windows/Linux平台下使用方法是不同的。直接用了runtime.exec("cmd /c" + exportCMD);报如下异常:
java.io.IOException: Cannot run program "cmd": error=13, Permission denied
因为,在Linux下,Runtime.getRuntime().exec("cmd /c" + exportCMD)执行的命令"cmd /c"找不到。
Java实现mysql数据库备份的更多相关文章
- Java实现MySQL数据库备份(二)
权声明:本文为博主原创文章,未经博主允许不得转载. 博客<Java实现MySQL数据库备份(一)>使用I/O流的方式实现了MySQL数据库的备份,这种方法比较繁杂,下面介绍另一种备份MyS ...
- Java达到MySQL数据库备份(两)
博客<Java实现MySQL数据库备份(一)>使用I/O流的方式实现了MySQL数据库的备份,这样的方法比較繁杂.以下介绍还有一种备份MySQL数据库的方法: import java.io ...
- Java实现MySQL数据库备份(一)
下班了,利用闲暇时间总结一下如何使用Java语言实现MySQL数据库备份: import java.io.BufferedReader; import java.io.File; import jav ...
- java 实现mysql数据库备份
package com.itenp.gen.action; import java.io.BufferedReader; import java.io.FileInputStream; import ...
- JSP 实现 之 调用java方法实现MySQL数据库备份和恢复
package cn.qm.db; import java.io.BufferedReader; import java.io.DataInputStream; import java.io.IOEx ...
- Java连接mysql数据库攻略
一. 软件下载 Mysql 下载版本:4.1.11 http://dev.mysql.com/downloads/mysql/4.1.html JDBC驱动 下载版本:3.1.8 http://dev ...
- Xtrabackup原理及使用innobackupex进行MySQL数据库备份恢复
Xtrabackup是由percona提供的mysql数据库备份工具,据官方介绍,这也是世界上惟一一款开源的能够对innodb和xtradb数据库进行热备的工具. Xtrabackup中主要包含两个工 ...
- TODO:MongoDB MySQL数据库备份
TODO:MongoDB MySQL数据库备份 1. MongoDB使用命令备份 mongodump进行整个数据库备份,主要用到的命令参数: -d 要备份的数据库 -o 输出的路径 ./mongodu ...
- Java实现MySQL数据库导入
距离上班还有一段时间.现在总结一下如何使用Java语言实现MySQL数据库导入: 首先新建名为test的数据库: 其次执行下面Java代码: import java.io.File; import j ...
随机推荐
- 仿UC浏览器图片加载进度条
前几天用UC浏览器看新闻(无意中给UC打了广告),看到它的图片加载进度条,正好最近有时间,所以就自己写了一个. 效果图如下 进度条的底色和填充颜色都可以调整. 首先中间的笑脸作为一个整体,其实现代码如 ...
- python(6)- json和pickle模块
这是用于序列化的两个模块: json: 用于字符串和python数据类型间进行转换 pickle: 用于python特有的类型和python的数据类型间进行转换 Json模块提供了四个功能:dumps ...
- centos安装ftp
yum install -y vsftpd安装vsftpd service vsftpd start 启动vsftpd vim /etc/vsftpd/vsftpd.conf 将anonymous_e ...
- linux内存查看
一般用free命令,显示整体内存使用状况: 第二行从OS角度,used包括内核+应用+buffers+cached使用的内存,buffers/cached是磁盘缓存的大小 第三行从应用角度,可用内存= ...
- [改善Java代码]不要让类型默默转换
建议23:不要让类型默默转换 public class Client { // 光速是30万公里/秒,常量 public static final int LIGHT_SPEED = 30 * 100 ...
- [设计模式]<<设计模式之禅>>关于迪米特法则
迪米特法则(Law of Demeter,LoD)也称为最少知识原则(Least KnowledgePrinciple,LKP),虽然名字不同,但描述的是同一个规则:一个对象应该对其他对象有最少的了解 ...
- 使用CSS实现一个简单的幻灯片效果
方法一: 简单的CSS代码实现幻灯片效果 方法二: 使用CSS3 Animation来制作幻灯片 方法一: 简单的CSS代码实现幻灯片效果 话不多说,直接上代码 <!DOCTYPE html&g ...
- MVC Model Binder
这篇博客是借助一个自己写的工程来理解model binder的过程. MVC通过路由系统,根据url找到对应的Action,然后再执行action,在执行action的时候,根据action的参数和数 ...
- Entity Framework 6.1-Model First
原文:Entity Framework 6.1-Model First Model First-顾名思义,就是先创建EF数据模型,通过数据模型生成数据库的EF创建方式. 步骤. 1.新建一个DAL的文 ...
- 在win7下配置java编译环境变量
今天刚接触java编程,环境的配置方法比较复杂.好记性不如烂笔头,发个文章记录一下吧. win7系统 Jdk版本1.6 用鼠标右击“我的电脑”->属性->高级->环境变量系统变量-& ...