![](/img/trans.png)
[英]How to take db backup of mysql db without stopping mysql server
[英]How to Backup mysql db from Remote to local without mysql local installation?
美好的一天,我正在嘗試將mysql備份從遠程服務器備份到本地計算機。 當我在本地計算機上安裝mysql客戶端時,我能夠這樣做。 但是,當客戶端沒有本地mysql客戶端安裝時,它將無法正常工作...
我一直在使用jdbc連接連接到mysql服務器,我的代碼段如下:
try{
String cs = "jdbc:mysql://" + dbh + ":" + dbport + "/" + database + "?user=" + USER + "&password=" + PASS+"";
Class.forName("com.mysql.jdbc.Driver").newInstance();
connection = java.sql.DriverManager.getConnection(cs);
String executeCmd = "";
if(connection!=null){
executeCmd = "mysqldump -u "+USER+" -p"+PASS+" "+database+" -r "+path;
Process runtimeProcess =Runtime.getRuntime().exec(executeCmd);
int processComplete = runtimeProcess.waitFor();
if(processComplete == 0){
System.out.println("Backup taken successfully");
} else {
System.out.println("Could not take mysql backup");
}
} else{
System.out.println("connection not sucess");
}
}catch (Exception e) {
e.printStackTrace();
}
我認為這可能是mysqldump PATH的問題,因此我將此文件復制到客戶端計算機,並在executeCmd
指定了mysqldump的絕對路徑。 這次是在指定的路徑中創建備份文件,但是其empty& processComplete
返回值2
。 我的問題是
感謝和問候
iMmo
解決了!我忘了用mysqldump命令指定HostIP和端口。更改了executeCmd參數,如下所示:
executeCmd = PathToMySqlDumpFile+"mysqldump -h "+HOSTIP+" -P "+PORT+" -u "+USER+" -p"+PASS+" "+database+" -r "+path;
以及mysqldump文件路徑。 我們只需要mysqldump文件即可將備份從遠程服務器備份到本地。 無需安裝mysql客戶端。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.