zoukankan      html  css  js  c++  java
  • java实现mysql数据备份

    /**
         * @param hostIP       ip地址,可以是本机也可以是远程
         * @param userName     数据库的用户名
         * @param password     数据库的密码
         * @param savePath     备份的路径
         * @param fileName     备份的文件名
         * @param databaseName 需要备份的数据库的名称
         * @return
         */
        public boolean backup(String hostIP, String userName, String password, String savePath, String fileName,
                              String databaseName) {
            File saveFile = new File(savePath);
            if (!saveFile.exists()) {// 如果目录不存在
                saveFile.mkdirs();// 创建文件夹
            }
            String exePath = "mysqldump";
            if (PlatformUtil.isWindows()) {
                exePath = mysqldumpExePath;
            }
            //拼接命令行的命令
            StringBuilder stringBuilder = new StringBuilder();
            stringBuilder.append(exePath).append(" --opt").append(" -h").append(hostIP);
            stringBuilder.append(" --user=").append(userName).append(" --password=").append(password)
            /*.append(" --lock-all-tables=true")*/;
            stringBuilder.append(" --result-file=").append(savePath + "/" + fileName).append(" --default-character-set=utf8 ")
                    .append(databaseName);
            try {
                //调用外部执行exe文件的javaAPI
                Process process = CMDUtil.execProcess(stringBuilder.toString());
                process.waitFor();
                InputStream errorStream = process.getErrorStream();
                String s = IOUtils.toString(errorStream, "gbk");
                System.out.println(s);
                int value = process.exitValue();
                if (value == 0) {// 0 表示线程正常终止。
                    return true;
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
            return false;
        }

    在 windows下,

    mysqldumpExePath
    表示的是mysqldump.exe的路径,包括文件名。
  • 相关阅读:
    mybatis关键查询
    智能标签
    mybatis注解基础使用
    myBatis基础知识点
    Mybatis框架模糊查询
    python(7):sympy模块
    anaconda中的包如何传到pycharm中使用?
    python(6):Scipy之pandas
    python(5):scipy之numpy介绍
    python(4): regular expression正则表达式/re库/爬虫基础
  • 原文地址:https://www.cnblogs.com/chenmz1995/p/11011151.html
Copyright © 2011-2022 走看看