import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
public class JavaMysql {
/**
*
* mysql数据备份 接收脚本名,并返回此路径
*
* sql为备份的脚本名比如xxx.sql
*
*/
public static void backup(String sql) {
Properties pros = getPprVue("prop.properties");
// 这里是读取的属性文件,也可以直接使用
String username = pros.getProperty("username");
String password = pros.getProperty("password");
// 得到MYSQL的用户名密码后调用 mysql 的 cmd:
String mysqlpaths = pros.getProperty("mysqlpath");
String databaseName = pros.getProperty("databaseName");
String address = pros.getProperty("address");
String sqlpath = pros.getProperty("sql");
File backupath = new File(sqlpath);
if (!backupath.exists()) {
backupath.mkdir();
}
StringBuffer sb = new StringBuffer();
sb.append(mysqlpaths);
sb.append("mysqldump ");
sb.append("--opt ");
sb.append("-h ");
sb.append(address);
sb.append(" ");
sb.append("--user=");
sb.append(username);
sb.append(" ");
sb.append("--password=");
sb.append(password);
sb.append(" ");
sb.append("--lock-all-tables=true ");
sb.append("--result-file=");
sb.append(sqlpath);
sb.append(sql);
sb.append(" ");
sb.append("--default-character-set=utf8 ");
sb.append(databaseName);
Runtime cmd = Runtime.getRuntime();
try {
Process p = cmd.exec(sb.toString());
} catch (IOException e) {
e.printStackTrace();
}
}
// 读取属性值
public static Properties getPprVue(String properName) {
InputStream inputStream = mysql_util.class.getClassLoader()
.getResourceAsStream(properName);
Properties p = new Properties();
try {
p.load(inputStream);
inputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
return p;
}
public static void load(String filename) {
Properties pros = getPprVue("prop.properties");
// 这里是读取的属性文件,也可以直接使用
String root = pros.getProperty("jdbc.username");
String pass = pros.getProperty("jdbc.password");
// 得到MYSQL的用户名密码后调用 mysql 的 cmd:
String mysqlpaths = pros.getProperty("mysqlpath");
String sqlpath = pros.getProperty("sql");
String filepath = sqlpath + filename; // 备份的路径地址
// 新建数据库finacing
String stmt1 = "mysqladmin -u " + root + " -p" + pass
+ " create finacing";
// -p后面加的是你的密码
String stmt2 = "mysql -u " + root + " -p" + pass + " finacing < "
+ filepath;
String[] cmd = { "cmd", "/c", stmt2 };
try {
Runtime.getRuntime().exec(stmt1);
Runtime.getRuntime().exec(cmd);
System.out.println("数据已从 " + filepath + " 导入到数据库中");
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String[] args) throws IOException {
backup("xx.sql");
//load("xx.sql");
}
}
---------------------------------------prop.properties
username = root
password = root
mysqlpath = C:\\Program Files\\MySQL\\MySQL Server 5.0\\bin\\
sql = E:\\MySQl\\
address=localhost
databaseName=test
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/lpdx111/archive/2008/12/07/3462308.aspx
分享到:
相关推荐
本软件Mysql定时备份器,目前为beta v1.0版(测试版),基于JAVA编写,运行时需JVM1.5版本以上支持.可以帮助windows环境下的mysql用户实现自动备份功能.分完全备份和增量备份,可立即执行和定期执行.点击'完全备份'和'增量...
此mysqldump版本为5.6.12,内含详细使用方法,包括cmd的备份方式、java的备份方式
mysql 数据库备份 java 源代码,通过hibernate获取数据库配置信息,进行选择性的数据库备份。
java备份mysql、可执行jar文件、配置文件可修改、xml解析,执行sql语句,jdbc访问数据库,jdbc配置文件可修改
java备份与恢复mysql数据库,在网上很难找到相关的资源,所有笔者参照了一些资料,自己用MyEclipse写了一个,里面有源码,有详细的说明.
Java操作mysql备份,代码清晰可用
Java在线备份和还原MySQL数据库,使用mysqldump命令实现备份,使用mysql命令实现的还原,具体大家看源代码吧,在还原的时候足足整了我一个下午才找到错误原因,源代码里面有写原因。大家看代码就知道了。
我上网找了好多的资料,没有一个能实现的,可见他们都是转载了,但是并没有测试,项目组要求我做oracle和mysql数据库备份,java实现手动备份的功能。终于做出来了,欢迎大家下载。
在实际应用中,定时备份数据库是一件非常重要的工作,下面是关于利用java程序实现数据库自动调用的方法,其实也不一定非要用 java语言了,只要原理会了...话不多说,下面就来演示一下如何自动备份mysql下的abc数据库:
java实现对mysql数据库的备份与还原,可跨平台,windows与Linux通用,代码内含有利用注册表信息获取mysqldump命令实例
java备份mysql,绝对可以用,在项目中使用的,拿出来供大家使用。
用Java实现MySQL的备份与恢复
通过Java代码备份Mysql数据库Demo,虽然比较简单,但是可以节省您很多学习时间、试错时间。
import java.io.BufferedReader; import java.io.File; import java.io.FileOutputStream; import java.io.IOException;... * MySQL数据库备份 * */ public class MySQLDatabase
文档中的代码采用java技术模拟mysql命令实现mysql数据库的备份!
Java实现SqlServer及MySql的备份与还原
在网上找了好多的MySQL备份,多少都有错误,修改了网上的代码,实际可行的mysql备份。
java 实现mysql 的备份与恢复,全部代码
Java实现Mysql数据库完整、增量备份与还原
mysql 数据库备份,通过 java 代码实现设定备份时间,定时每天进行备份。