windows和linux下备份mysql
来源:互联网 发布:淘宝市场行情租用 编辑:程序博客网 时间:2024/05/22 11:26
近期因为项目需求,需要在windows下和linux下备份数据库和还原数据库。特此整理了一番。
//windows下备份mysqlpublic Map<String,String> backWindows(List<String> propList,String DB_BACKUP_SERVERPATH,String backupName){Map<String,String> map = new HashMap<String,String>();String db_name = "";try {SimpleDateFormat sDateFormat = new SimpleDateFormat("yyyyMMddHHmmssSSS"); String date = sDateFormat.format(new java.util.Date());//备份的数据库路径String sqlPath = DB_BACKUP_SERVERPATH + File.separator + backupName + "_" + date + ".sql";//执行备份数据库指令String executeSql = " mysqldump " +" -h 127.0.0.1 "+ " -u " + propList.get(0) + " -p" + propList.get(1) +" "+ propList.get(2) +" > "+sqlPath;Process proc = java.lang.Runtime.getRuntime().exec("cmd /c " + executeSql);proc.waitFor();db_name = backupName + "_" + date + ".sql";File f = new File(sqlPath);long t = f.length();if(f.exists()){DecimalFormat df = new DecimalFormat("###.###"); map.put("backupSize", String.valueOf(df.format((float) ((t)/(1024.0*1024.0)))));}else {map.put("backupSize", String.valueOf(0.0));}map.put("db_name", db_name);} catch (Exception e) {logger.error(e.getMessage(),e);}return map;}
//Linux下备份mysqlpublic Map<String,String> backLinux(List<String> propList,String DB_BACKUP_SERVERPATH,String backupName){Map<String,String> map = new HashMap<String,String>();String db_name = "";try {SimpleDateFormat sDateFormat = new SimpleDateFormat("yyyyMMddHHmmssSSS"); String date = sDateFormat.format(new java.util.Date());//备份的数据库路径String sqlPath = DB_BACKUP_SERVERPATH + File.separator + backupName + "_" + date + ".sql";//执行备份数据库指令String executeSql = " mysqldump " +" -h 127.0.0.1 "+ " -u " + propList.get(0) + " -p" + propList.get(1) +" "+propList.get(2)+" > "+sqlPath;Process proc = java.lang.Runtime.getRuntime().exec( new String[] { "sh", "-c", executeSql});proc.waitFor();db_name = backupName + "_" + date + ".sql";File f = new File(sqlPath);long t = f.length();if(f.exists()){DecimalFormat df = new DecimalFormat("###.###"); map.put("backupSize", String.valueOf(df.format((float) ((t)/(1024.0*1024.0)))));}else {map.put("backupSize", String.valueOf(0.0));}map.put("db_name", db_name);} catch (Exception e) {logger.error(e.getMessage(),e);}return map;}
//windows下还原mysqlpublic boolean restoreWindows(List<String> propList,String dbName,String DB_BACKUP_SERVERPATH){boolean flag = false;//还原的数据库路径String sqlPath = DB_BACKUP_SERVERPATH + File.separator + dbName;File filess = new File(sqlPath);if(filess.exists()){try {//执行备份数据库指令String executeSql = " mysql --host=localhost --port=3306 --user=" + propList.get(0) + " --password="+ propList.get(1) + " --default-character-set=utf8 "+propList.get(2) + " < " + sqlPath; java.lang.Runtime.getRuntime().exec("cmd /c " + executeSql);flag = true;} catch (IOException e) {logger.error(e.getMessage(),e);flag = false;}}else{//还原文件未找到flag = false;}return flag;}
//Linux下还原mysqlpublic boolean restoreLinux(List<String> propList,String dbName,String DB_BACKUP_SERVERPATH){boolean flag = false;//还原的数据库路径String sqlPath = DB_BACKUP_SERVERPATH + File.separator + dbName;File filess = new File(sqlPath);if(filess.exists()){try {//执行备份数据库指令String executeSql = " mysql --host=localhost --port=3306 --user=" + propList.get(0) + " --password="+ propList.get(1) + " --default-character-set=utf8 "+propList.get(2) + " < " + sqlPath; java.lang.Runtime.getRuntime().exec( new String[] { "sh", "-c", executeSql});flag = true;} catch (IOException e) {logger.error(e.getMessage(),e);flag = false;}}else{//还原文件未找到flag = false;}return flag;}
0 0
- windows和linux下备份mysql
- Windows 和Linux 下 Mysql 数据库备份导出
- windows下mysql备份
- Linux下Mysql数据库备份和恢复
- Linux下mysql的备份和恢复
- linux和windonw下mysql备份java
- linux 下mysql的备份和恢复
- Linux下MySQL的备份和恢复
- mysql数据库的备份与还原(windows和linux下)
- Linux下 mysql备份
- Linux下mysql备份
- Linux/Windows 下MySQL定时按日期备份数据
- windows下bat备份mysql
- windows下mysql数据库文件备份
- windows下mysql备份脚本
- Windows 下 mysql 自动备份
- Windows 下 mysql 自动备份
- windows下Mysql定时备份
- 数据挖掘的数据处理
- 枚举——摘抄自《java编程思想》
- Linux命令学习二
- Covert sorted list to binary search tree--LeetCode
- leetcode--Linked List Cycle
- windows和linux下备份mysql
- Java反射机制
- Makefile 使用笔记【2】
- iOS 编程之 Xcode6 上配置国际化
- 【c++ primer读书笔记】【第11章】关联容器
- 关于使用百度地图的IOS SDK 的注意事项
- uva 11624 Fire!(bfs)
- UVa679(二叉完全树)
- 简单的案例解析Java反射机制