身為初級的管理員,每天都要備份數據,自動的任務不會設置,於是'基本靠手',這樣不但繁瑣,還保不齊甲流隔離了,有手沒處使。
所以寫個java類別吧,載入到SPRING程式的自動運行任務。想法就是使用java呼叫系統的命令符,執行mysqldump指令。
·首先是Windows系統下:
給大家一個提醒:
有人說用:「mysqldump --uroot --p123456 --opt」。但是我沒有成功,最後使用這種寫法成功了:“mysqldump --user=root --password=123456 --opt”
看來要寫完整的方式。
·然後是Linux系統下:
這裡很多人遇到的問題是程式不報錯,指令不執行,sql檔沒有產生。我已經開始用了以下幾種寫法:java.lang.Runtime.getRuntime().exec(new String[] { mysql });
java.lang.Runtime.getRuntime().exec(new String[] { "shell "+mysql });
java.lang.Runtime.getRuntime().exec(new String[] { "/bin/bash "+mysql });
java.lang.Runtime.getRuntime().exec(new String[] { "/bin/bash/shell "+mysql });
都沒有成功,最後試驗了這種寫法成功了:
java.lang.Runtime.getRuntime().exec(new String[] { "sh", "-c", mysql });
前提是環境變數中都加上了MySQL的bin目錄。