• 大小: 2KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2022-06-11
  • 语言: Java
  • 标签: jsp  备份  

资源简介

jsp备份mysql数据库,用属性文件操作

资源截图

代码片段和文件信息

import java.io.*;
import java.util.*;

public class mysql_util {

 /**
  * 
  * 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“);
  System.out.print(“ok“);
 }
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        145  2009-11-28 02:26  conn.properties

     文件       2923  2009-11-28 00:00  mysql_util.java

     文件        157  2009-11-28 02:27  prop.properties

     文件       1535  2009-11-28 02:25  conn\Conn.java

     目录          0  2009-11-28 02:26  conn

----------- ---------  ---------- -----  ----

                 4760                    5


评论

共有 条评论