|
本帖最后由 wznjsy 于 2013-1-25 23:12 编辑
想尝试在aardio中写代码备份MYSQL 数据库,和导入SQL 文件。
我有尝试用以下的代码来解决这个问题, 但是没有解决问题,命令行窗口提示MYSQLDUMP:Couldn't find table ">d:\\aau.sql"
import process;
process.execute("D:\mysql\bin\mysqldump.exe","-uroot -ppwd database >d:\\aau.sql")
初步判断是命令行参数传值不成功,我有用其他简单参数传值 有得到验证成功。估计>d:\\aau.sql 这样表示备份的参数无法正确传值过去。
导入SQL 文件的错误代码是
process.execute("D:\mysql\bin\mysqlimport.exe","-uroot -ppwd database d:\\aau.sql")
显示错误 Error: Table 'database.aau' doesn't exist when using table: database
------------------------------
针对备份数据,我还有尝试用管道把能执行的代码放进去,也不能运行。- import process.popen;
- //打开命令行,隐藏命令行窗口
- procs=process.popen("cmd.exe","/max")
- cmd = /*
- D:
- cd D:\mysql\bin
- mysqldump.exe -uroot -ppwd database >d:\\aau.sql
- */
- procs.write(cmd);
- result = procs.peekTo("l");
- procs.write("exit\n");
- //显示结果
- import console;
- console.log(result);
复制代码 这个代码执行后,命令行窗口会快速闪过数据库的数据,但是在指定的位置产生的数据文件是空的。
-----------------------------------
针对导入数据我也有尝试用管道:- import process.popen;
- //打开命令行,隐藏命令行窗口
- procs=process.popen("cmd.exe","/max")
- cmd = /*
- D:
- cd D:\xampp\mysql\bin
- mysql.exe -uroot -ppwd database <d:\\aau.sql
- */
- procs.write(cmd);
- result = procs.peekTo("l");
- procs.write("exit\n");
- //显示结果
- import console;
- console.log(result);
复制代码 代码执行完成后,指定数据库没有导入数据,命令行窗口显示 mysql>
这个代码工作量比较大,不管能不能得到解决,先谢谢大家了。
参考资料:
http://www.21andy.com/blog/20071102/655.html
http://dev.mysql.com/doc/refman/ ... ption_mysqldump_tab
最理想的情况是可以不显示黑乎乎的窗口的执行过程。先谢谢了。
|
|