`

java Runtime执行shell脚本并传递参数,完成mysql数据库表导出

    博客分类:
  • Java
 
阅读更多

编写导出sql文件的shell脚本,在/home/amtcloud/sql/目录下的exportsql.sh

#!/bin/sh

cd /usr/share/mysql/ (或者mysql的bin目录下,即mysqldump存在的地方)

mysqldump -h192.168.58.255 -P3306 -uroot -p123 "$1“ ”$2" > /home/amtcloud/sql/aaa.sql

 

javad代码如下:

Runtime time = Runtime.getRuntime();

    try {

/*time.exec("cd D:\\Program Files\\MySQL\\MySQL Server 5.6\\bin");

time.exec("mysqldump -h58.215.56.89 -P3306 -uroot -p123456 673680482_qq_aaa > D:\\aaa.sql");*/

    String command = “/home/amtcloud/sql/exportsql.sh”;

    //time.exec(command);

 

    String[] com = new String[]{"/bin/sh","-c","bash "+command+" databasename"+" tablename"};

   

    Process process = time.exec(com);

    BufferedReader errorReader = new BufferedReader(new InputStreamReader(  

                    process.getInputStream()));  

            String line = null;  

            while ((line = errorReader.readLine()) != null) {  

                System.err.println(line);  

            }  

            errorReader.close();  

            BufferedReader infoReader = new BufferedReader(new InputStreamReader(  

                    process.getErrorStream()));  

            while ((line = infoReader.readLine()) != null) {  

                System.out.println(line);  

            }  

            infoReader.close();   

   

} catch (IOException e) {

e.printStackTrace();

}

 

分享到:
评论

相关推荐

    java调用shell(包含有参数的调用)

    // 执行Shell脚本,并传递参数 Process ps = Runtime.getRuntime().exec("sh JZDZ.sh " + bankNo + " " + dzDate); // 等待Shell脚本执行完毕 ps.waitFor(); // 获取Shell脚本的输出 BufferedReader br = ...

    linux下shell脚本实现数据的导出

    总结来说,这个场景涉及到了Linux下的shell脚本编写,主要是使用`exp`命令导出Oracle数据库中的数据,并通过Java程序来调用这个脚本。这在日常的运维工作中非常常见,通过这种方式可以实现自动化数据备份,提高工作...

    java调用mysql命令 导入导出数据库

    在Java编程中,有时我们需要对MySQL数据库进行导入和导出操作,这通常涉及到数据库的备份、迁移或数据恢复。在给定的标题“java调用mysql命令 导入导出数据库”中,我们可以理解为使用Java来执行MySQL的命令行工具,...

    使用runtime实现linux命令行或shell脚本多次调用

    `Runtime.exec(String command)`方法用于执行单个命令,而如果需要执行包含多个命令的shell脚本,可以使用`Runtime.exec(String[] cmdArray)`,其中cmdArray是一个包含命令及其参数的字符串数组。 下面是一个简单的...

    java调用shell脚本执行sqlldr与存储过程

    在java代码中调用执行shell脚本,sqlldr导数与使用sqlplus在shell调用执行存储过程。 linux环境中有2个dba的用户:oracle、erm 还有1个web用户:erm 在linux环境中,这三个用户都可以直接在任意目录下执行该shell...

    导入导出mysql数据

    在给出的代码示例中,`DBBackupHelper` 类包含了 `backup` 方法用于执行数据库的导出操作。该方法首先构建了一个包含 `mysqldump` 命令的字符串 `stmt1`,其中包含了 MySQL 安装路径、用户名、密码、目标数据库名...

    java 直接调用python脚本,并传递参数代码实例

    Java 直接调用 Python 脚本并传递参数代码实例 Java 调用 Python 脚本传递参数是指在 Java 应用程序中调用 Python 脚本,并将参数传递给 Python 脚本,以实现特定的功能。在本篇文章中,我们将详细介绍 Java 调用 ...

    java调用shell脚本

    调用完成后,可以通过`process.waitFor()`等待脚本执行完成,并通过`process.getInputStream()`和`getErrorStream()`获取输出和错误流。 2. **使用ProcessBuilder** - ProcessBuilder允许我们更精确地控制进程的...

    用JAVA导出MYSQL的数据

    这通常通过调用`mysql`命令来实现,将之前导出的SQL文件作为输入,执行这些语句来重新创建数据库结构并填充数据。`load()`方法在示例中应该类似地构造一个`mysql`命令,如: ```java public static void load() { ...

    android系统中调用shell脚本

    2. **使用Runtime.exec()的变体**:如果需要传递参数或者捕获脚本输出,可以使用`Runtime.exec(String[] cmdarray)`,这样可以更好地控制命令行参数。 3. **使用`java.lang.ProcessBuilder`**:此类提供了更灵活的...

    java调用shell向DataX传递参数,where条件,包含特殊字符

    本问题聚焦于如何通过Java调用shell脚本,向DataX传递参数,特别是包含特殊字符的where条件。在实际操作中,这可能会涉及到字符串转义、参数安全传递以及shell命令的构建等多个技术点。 首先,我们需要理解DataX的...

    Java导出Oracle数据库数据

    本文将介绍如何使用 Java 语言将 Oracle 数据库数据导出到文件中,并将其导入到 Oracle 数据库中。 从标题和描述中可以看到,本文的主要内容是使用 Java 语言将 Oracle 数据库数据导出到文件中,并将其导入到 ...

    Java程序去调用并执行shell脚本及问题总结(推荐)

    Java程序调用并执行shell脚本及问题总结 Java程序调用并执行shell脚本是Java开发中非常重要的一部分,特别是在文本处理过程中。Java开发的特点是可以很早地进行TDDL,METAQ等等的对接,而脚本开发的特点是可以在...

    shell 脚本调用Java类

    首先,要从Shell脚本中运行Java程序,你需要确保系统已经安装了Java环境,包括JRE(Java Runtime Environment)或JDK(Java Development Kit)。可以通过`java -version`命令检查Java是否已安装及其版本。 接下来,...

    java 执行cmd命令及mongodb脚本

    Java执行CMD命令及MongoDB脚本是开发过程中常见的任务,特别是在集成系统或者自动化运维场景下。下面将详细讲解这两个主题。 一、Java执行CMD命令 在Java中,我们可以使用Runtime类或ProcessBuilder类来执行操作...

    Java 执行本地脚本携带多参数

    在Java编程中,有时我们需要执行本地的脚本文件,并且可能需要传递多个参数给这些脚本。这在处理自动化任务、系统集成或者调用外部工具时非常常见。本篇文章将详细探讨如何在Java中实现这一功能,同时也会涉及到源码...

    java调用shell向DataX传参,带where条件,特殊字符

    Java调用Shell脚本执行DataX任务是一种常见的数据迁移或同步操作。DataX是阿里巴巴开源的数据同步工具,它支持多种数据库之间的数据迁移。在实际应用中,我们可能需要根据特定的业务逻辑,如where条件,来定制数据...

    java调用shell脚本完美封装

    然后在Java中调用这个脚本并传递参数,观察输出结果。 通过以上步骤,我们可以实现Java对Shell脚本的调用和封装,解决各种自动化任务的需求。在Linux环境下,这种方式尤其有用,因为Linux系统的许多操作可以通过...

    java导出orcale数据库dmp文件

    总结来说,通过Java编程导出Oracle数据库的DMP文件涉及使用JDBC连接数据库、调用Oracle Data Pump API以及设置适当的导出参数。需要注意的是,虽然这种方式提供了编程控制的灵活性,但导出速度可能相对较慢,可能...

Global site tag (gtag.js) - Google Analytics