距离上班还有一段时间。现在总结一下如何使用Java语言实现MySQL数据库导入:

首先新建名为test的数据库;

其次执行下面Java代码:

  1. import java.io.File;
  2. import java.io.IOException;
  3. /**
  4. * MySQL数据库导入
  5. *
  6. * @author GaoHuanjie
  7. */
  8. public class MySQLDatabaseImport {
  9. /**
  10. * Java实现MySQL数据库导入
  11. *
  12. * @author GaoHuanjie
  13. * @param hostIP MySQL数据库所在服务器地址IP
  14. * @param userName 数据库用户名
  15. * @param password 进入数据库所需要的密码
  16. * @param importFilePath 数据库文件路径
  17. * @param sqlFileName 数据库文件名
  18. * @param databaseName 要导入的数据库名
  19. * @return 返回true表示导入成功,否则返回false。
  20. */
  21. public static boolean importDatabase(String hostIP, String userName, String password, String importFilePath, String sqlFileName, String databaseName) {
  22. File saveFile = new File(importFilePath);
  23. if (!saveFile.exists()) {// 如果目录不存在
  24. saveFile.mkdirs();// 创建文件夹
  25. }
  26. if (!importFilePath.endsWith(File.separator)) {
  27. importFilePath = importFilePath + File.separator;
  28. }
  29. StringBuilder stringBuilder=new StringBuilder();
  30. stringBuilder.append("mysql").append(" -h").append(hostIP);
  31. stringBuilder.append(" -u").append(userName).append(" -p").append(password);
  32. stringBuilder.append(" ").append(databaseName);
  33. stringBuilder.append(" <").append(importFilePath).append(sqlFileName);
  34. try {
  35. Process process = Runtime.getRuntime().exec("cmd /c "+stringBuilder.toString());//必须要有“cmd /c ”
  36. if (process.waitFor() == 0) {// 0 表示线程正常终止。
  37. return true;
  38. }
  39. } catch (IOException e) {
  40. e.printStackTrace();
  41. } catch (InterruptedException e) {
  42. e.printStackTrace();
  43. }
  44. return false;
  45. }
  46. public static void main(String[] args) throws InterruptedException {
  47. if (importDatabase("172.16.0.127", "root", "123456", "D:\\backupDatabase", "2014-10-14.sql", "GHJ")) {
  48. System.out.println("数据库导入成功!!!");
  49. } else {
  50. System.out.println("数据库导入失败!!!");
  51. }
  52. }
  53. }

Java实现MySQL数据库导入的更多相关文章

  1. java连接mysql数据库详细步骤解析

    java连接mysql数据库详细步骤解析      第一步:下载一个JDBC驱动包,例如我用的是:mysql-connector-java-5.1.17-bin.jar      第二步:导入下载的J ...

  2. 写给小白的JAVA链接MySQL数据库的步骤(JDBC):

    作为复习总结的笔记,我罗列了几个jdbc步骤,后边举个简单的例子,其中的try块请读者自行处理. /* * 1.下载驱动包:com.mysql.jdbc.Driver;网上很多下载资源,自己找度娘,此 ...

  3. Java进阶(二十五)Java连接mysql数据库(底层实现)

    Java进阶(二十五)Java连接mysql数据库(底层实现) 前言 很长时间没有系统的使用java做项目了.现在需要使用java完成一个实验,其中涉及到java连接数据库.让自己来写,记忆中已无从搜 ...

  4. Java连接MySQL数据库及操作

    Java操作MySQL数据库,需要驱动mysql-connector-java 来进行操作,去下载对应的jar包   一.导入需要的jar包 我用的是maven对包进行管理,在maven中添加如下内容 ...

  5. java与MySQL数据库的连接

    java与MySQL数据库的连接 1.数据库的安装和建立参见上一篇博客中的第1,2步骤.(http://blog.csdn.net/nuptboyzhb/article/details/8043091 ...

  6. Java实现MySQL数据库备份(二)

    权声明:本文为博主原创文章,未经博主允许不得转载. 博客<Java实现MySQL数据库备份(一)>使用I/O流的方式实现了MySQL数据库的备份,这种方法比较繁杂,下面介绍另一种备份MyS ...

  7. java操作MySQL数据库(插入、删除、修改、查询、获取所有行数)

    插播一段广告哈:我之前共享了两个自己写的小应用,见这篇博客百度地图开发的两个应用源码共享(Android版),没 想到有人找我来做毕设了,年前交付,时间不是很紧,大概了解了下就接下了,主要用到的就是和 ...

  8. MYSQL数据库导入导出(可以跨平台)

    MYSQL数据库导入导出.sql文件 转载地址:http://www.cnblogs.com/cnkenny/archive/2009/04/22/1441297.html 本人总结:直接复制数据库, ...

  9. Java 操作MySql数据库

    Java 项目开发中数据库操作是很重要的一个方面,对于初学者来说,MySql是比较容易熟悉的一种常见数据库,这篇文章记录了如何用Java来操作MySql数据库. 第一章 JDBC的概念 JDBC(Ja ...

随机推荐

  1. ASP.NET Core--条件处理程序中的依赖注入

    翻译如下: 在配置期间(使用依赖注入),授权处理程序必须在服务集合中注册. 假设您有一个在授权处理程序中要解析规则的仓储库,并且该仓储库已在服务集合中注册. 授权将在构造函数还原并注入. 例如,如果你 ...

  2. Android 无线调试

    首先保证电脑和手机在统一局域网.并知道手机的局域网 ip1. 用usb线连接手机和电脑,并在电脑终端输入 adb tcpip 5555 adb connect <ip>2. 取消usb连接 ...

  3. Nginx的继续深入(日志轮询切割,重写,负载均衡等)

    Nginx的访问日志轮询切割 通常什么情况Nginx会把所有的访问日志生成到一个制定的访问日志文件access.log里面,但时间一长,日志个头很大不利于日志的分析和处理. 有必要对Nginx日志进行 ...

  4. ABAP 订单转交货单

    *& Report  ZSDR025 *& *&---------------------------------------------------------------- ...

  5. php多文件上传

    多文件上传<input type="file" name="file[]" multiple /> <?php function reArra ...

  6. [译]:Orchard入门——部件管理

    原文链接:Managing Widgets 在Orchard中,部件是可以加入到当前当前主题任何位置或区域(如侧栏sidebar或底部区域footer)的UI块(如:HTML)或代码部分(如:内容部分 ...

  7. 解决SVN Upgrade working copy问题

    解决SVN Upgrade working copy,无法上传到svn上的解决方案是SVN Upgrade working copy老有问题,而且还特别慢.还有种方法,将原来上传到svn的项目中有个. ...

  8. 分布式缓存技术redis学习系列(四)——redis高级应用(集群搭建、集群分区原理、集群操作)

    本文是redis学习系列的第四篇,前面我们学习了redis的数据结构和一些高级特性,点击下面链接可回看 <详细讲解redis数据结构(内存模型)以及常用命令> <redis高级应用( ...

  9. C#基础:值类型、引用类型与ref关键字

    在C#中,ref的意思是按引用传递.可以参考C++: int a = 10, b = 20; void swap(int x, int y) { int temp = x; x = y; y = te ...

  10. 我的c++学习(12)指针作为函数参数

    ◆ 引用调用与指针传值调用C++中函数的参数的基本使用方法是传值.为了弥补单纯传值的不足,以引用作为函数的参数,从逻辑上讲引用是别名,在函数中对参数的操作,就是对实参的操作,而在物理上是传实参的地址. ...