亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

Java備份MySQL

標簽:
MySQL

1 概述

使用java备份mysql数据库,主要是使用mysqldump与Runtime().getRuntime().exec().

2 创建备份路径

如果没有备份的存储路径首先创建路径.

Path path = Paths.get(xxxx);
try
{
	Files.createDirectories(path);
}
catch(IOException e)
{
	//xxxx
}

3 执行命令

如果是直接用shell执行的话:

mysqldump -u user_name -p database_name > xxxx\database_name.sql

使用-u与-p分别指定用户与密码,最后重定向到文件.
但是,要注意再java中用exec()时,千万千万不能使用-p选项,-p是交互式输入密码的,使用了-p的话导出的文件是0KB的,需要使用

--password

代替.

String command = "mysqldump -u user --password=xxxx > xxxx\\xxxx.sql"

要注意一下路径问题,另外,在windows下,需要使用cmd:

String command = "cmd /c mysqldump -u user --password=xxxx > xxxx\\xxxx.sql"

这需要把

%MYSQL_HOME%/bin

加入到环境变量,如果没有加入的话输入绝对路径:

String command = "cmd /c C:\\Program Files\\mysql\\bin\\mysqldump -u user --password=xxxx > xxxx\\xxxx.sql"

4 执行

try
{
	Runtime.getRuntime().exec(command);
}
catch(IOException e)
{
	//xxxx
}

5 其他问题

如果没有导出文件或者导出的文件为0KB,可能原因是:

  • 语法错误:命令的空格使用不当,路径设置错误,使用了错误的参数等.
  • 环境问题:如在windows下没有添加到环境变量,没有加上"cmd /c".
  • 用户名/密码错误:这个…
  • 权限问题:用户没有相应权限,要登陆到mysql中授权.
點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
JAVA開發工程師
手記
粉絲
5
獲贊與收藏
30

關注作者,訂閱最新文章

閱讀免費教程

  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消