Chinaunix首页 | 论坛 | 博客
  • 博客访问: 604398
  • 博文数量: 298
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 3077
  • 用 户 组: 普通用户
  • 注册时间: 2019-06-17 10:57
文章分类

全部博文(298)

文章存档

2022年(96)

2021年(201)

2019年(1)

我的朋友

分类: Mysql/postgreSQL

2022-02-08 12:06:49


点击(此处)折叠或打开


  1. Java中CMD命令来备份mysql数据库备份文件出来为0字节问题
  2. https://blog.csdn.net/qq_36936155/article/details/78978242

  3. 今天客户打电话来说我们的系统备份的sql文件为空文件。
  4. 这让我很凌乱,我们测试过滴,执行很成功嘛。
  5. 可客户使用的时候确实是备份失败嘛 ,这是事实。
  6.  
  7. 我东测试西测试,在本机咋滴还是没出现这样的问题;
  8. 没办法装了个虚拟机,安装了和客户一样的操作系统 ,并且按照客户安装步骤进行部署。
  9. 结果,神奇事情出现了,所备份的数据库文件确实是空的,最后是东找西找,又是百度又是谷歌的,还是没有解决。
  10. 后来我一想,mysql的安装路径不一样,我都喜欢把软件工具都安装在C盘以外,自定义的安装路径,而客户是安装在默认的Program Files下面,
  11. 而文件夹有空格的名称的经常会致使一些莫名其妙的问题出现。
  12. 想到就做,我将mysql bin目录下的mysqldump复制放到c盘,并且把系统语句改为
  13. Runtime rt = Runtime.getRuntime();
  14. rt.exec("cmd /c c:\\mysqldump -hlocalhost -uroot -p123456 --opt databaseName>d:\\bk.sql");
  15. 居然成功了,文件不再是0KB的空文件。自此,问题解决。
  16.  
  17. 罪魁祸首是Program Files文件夹的空字符串,不知道当初微软为啥要在中间加个空格。

  18. 我项目的解决方案就是(项目 fhadmin.cn)
  19. 1、将mysqldump.exe复制放到我的项目文件夹下
  20. 2、执行备份时,先得到项目部署路径,然后执行
  21. Runtime rt = Runtime.getRuntime();
  22. String path = 获取mysqldump所在路径。
  23. rt.exec("cmd /c "+path+"\\mysqldump -hlocalhost -uroot -p123456 --opt databaseName>d:\\bk.sql");
  24. 3、前提是让客户部署时,别将项目部署在含有空格的文件夹下面。
  25.  
  26. 记录下问题的解决方法以供参考。

  27. 今天客户打电话来说我们的系统备份的sql文件为空文件。
  28. 这让我很凌乱,我们测试过滴,执行很成功嘛。
  29. 可客户使用的时候确实是备份失败嘛 ,这是事实。
  30.  
  31. 我东测试西测试,在本机咋滴还是没出现这样的问题;
  32. 没办法装了个虚拟机,安装了和客户一样的操作系统 ,并且按照客户安装步骤进行部署。
  33. 结果,神奇事情出现了,所备份的数据库文件确实是空的,最后是东找西找,又是百度又是谷歌的,还是没有解决。
  34. 后来我一想,mysql的安装路径不一样,我都喜欢把软件工具都安装在C盘以外,自定义的安装路径,而客户是安装在默认的Program Files下面,
  35. 而文件夹有空格的名称的经常会致使一些莫名其妙的问题出现。
  36. 想到就做,我将mysql bin目录下的mysqldump复制放到c盘,并且把系统语句改为
  37. Runtime rt = Runtime.getRuntime();
  38. rt.exec("cmd /c c:\\mysqldump -hlocalhost -uroot -p123456 --opt databaseName>d:\\bk.sql");
  39. 居然成功了,文件不再是0KB的空文件。自此,问题解决。
  40.  
  41. 罪魁祸首是Program Files文件夹的空字符串,不知道当初微软为啥要在中间加个空格。
  42.  
  43. 我项目的解决方案就是:
  44. 1、将mysqldump.exe复制放到我的项目文件夹下
  45. 2、执行备份时,先得到项目部署路径,然后执行
  46. Runtime rt = Runtime.getRuntime();
  47. String path = 获取mysqldump所在路径。
  48. rt.exec("cmd /c "+path+"\\mysqldump -hlocalhost -uroot -p123456 --opt databaseName>d:\\bk.sql");
  49. 3、前提是让客户部署时,别将项目部署在含有空格的文件夹下面。
  50.  
  51. 记录下问题的解决方法以供参考。




阅读(801) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~