Java程序实现mysql数据库导出,命令执行成功了,可是导出的文件是空的,求解!

代码如下:String mysql="cmd /k mysqldump -u root -proot --opt mysql > C:/Users/success/ak.sql ";
java.lang.Runtime.getRuntime().exec("mysql");
执行后生成了,生成了ak.sql文件但是是空的。如果在CMD下直接执行 mysqldump -u root -proot --opt mysql > C:/Users/success/ak.sql 就可以生成有内容的ak.sql,求高手帮忙!

第1个回答  推荐于2017-11-25
应该是一些特殊符被转义了,你可以把mysqldump -u root -proot --opt mysql > C:/Users/success/ak.sql 这句写到一个bat文件里面,然后java中就直接调用这个bat文件就可以避免了追问

java里面怎么执行项目目录里的bat啊? 我写了个a.bat 放在项目的同级目录下,可是执行
String command = "cmd /k a.bat";
Process child = Runtime.getRuntime().exec(command);
child.waitFor();
并没有执行a.bat

追答

留Q,搞定睡觉了

追问

QQ:2579079477 拜托了

本回答被提问者采纳
第2个回答  2012-04-26
cmd /c mysqldump -u root -proot --opt mysql > C:/Users/success/ak.sql

这样试一下,
再一个,
java.lang.Runtime.getRuntime().exec("mysql");

这个是你手误?应该是mysql不应该是"mysql"
第3个回答  2018-05-25
Java runtime每次只能执行一条command命令,重定向是不支持的,可以用mysqldump的--result-file="输出文件",避免使用重定向符号>,可以解决你的问题

Java程序实现mysql数据库导出,命令执行成功了,可是导出的文件是空的...
应该是一些特殊符被转义了,你可以把mysqldump -u root -proot --opt mysql > C:\/Users\/success\/ak.sql 这句写到一个bat文件里面,然后java中就直接调用这个bat文件就可以避免了

java使用jdbc连接mysql数据库,表里有记录,但是查询的结果集为空,是什么...
回答:可能是少一句代码,语句去执行了,但是没有取结果,直接输出,当然没有。

JAVA调用CMD 导出MYSQL的SQL文件为空,同样的语句在CMD直接调用下可以...
Runtime.getRuntime().exec("目录\/bin\/mysqldump -h localhost -u root -padmin rois2> d:\/wewe.sql");不写cmd 直接用mysqldump的绝对路径 如这个 Runtime.getRuntime().exec("d:\/mysql\/bin\/mysqldump -h localhost -u root -padmin rois2> d:\/wewe.sql");

求助~~为什么matlab和MySQL数据库连接最后显示的数据是0
首先要安装mysql驱动程序包 Step 1: 将mysql-connector-java-5.1.7-bin.jar文件拷贝到...\\MATLAB\\R2009a\\java\\jar\\toolbox Step 2: 到...\\MATLAB\\R2009a\\toolbox\\local目录下,找到classpath.txt文件,打开,并添加用来加载mysql的jdbc驱动语句:matlabroot\/java\/jar\/toolbox\/mysql-connector-jav...

怎么用java备份mysql数据库?
备份:public static void main(String[] args) { backup();load();} public static void backup() { try { Runtime rt = Runtime.getRuntime();\/\/ 调用 mysql 的 cmd:Process child = rt .exec("mysqldump -u root --set-charset=utf8 bjse act_obj");\/\/ 设置导出编码为utf8。这里...

eclipse的导出MYsql表时保存文件对话框如何弹出
MySQL Connector \/J Driver",这是Driver Name会自动生成,不用管,然后在Connection URL中输入MySQL数据库的连接字符串,例如:jdbc:mysql:\/\/localhost:3306\/chargesys6、在此窗口继续,点击“Add JARs...”,然后选择你的mysql-connector-java-版本-beta-bin.jar的这个包,然后点“OK”<\/p7、...

如何在java文件中修改Mysql数据库的记录
通常修改记录用mysql语言就可以了,想通过java语言编程来实现修改,就需要安装JDBC驱动程序。然后就去API里找java.sql包,里面的Statement接口里有许多方法(作用,用于实现静态的sql语言并返回所生成结果的对象),当然还有一个就是PreparedStatement(预编译的对象),实现这两个接口中的方法,你就能实现删除,...

java怎么把MySql数据库打包到程序里?
1,修改MySQL的配置文件让它找到 MySQL程序的主目录 和 Data目录。2,判断是否是第一次运行(或判断系统内是否安装了MySQL),如果没的话先把MySQL的服务给安装上,并启动。(详细内容请百度“MySql系统配置及MySql安装后移动方法”,有一个csdn的博客讲了这方面的)另外你是C\/S程序(如果不是单机程序...

java语言,控制mysql下的某个数据库启停命令是什么?
数据库的停止是无法用java来实现的,不过你可以用java调用cmd,然后通过cmd来启动或者关闭数据库服务,至于具体实现,你得自己查资料了,这项技术用的少

java程序在控制台下怎样连接MySQL数据库,驱动程序怎么设置啊?_百度...
build path 把Mysql的驱动包加进环境来,这个jar 文件可以在http:\/\/dev.mysql.com\/downloads\/上面下载一个conector 按你的MySql的版本来下。最好把源文件和JAR文件都下载下来(Source and Binaries),有空可以看一下它的源码,注意下载下来解压后的哪个JAR文件才是我们用的。WEB应用我们把它入在web-...

相似回答