今天將很早就實現的一個Oracle數據庫備份功能粘貼出來,這個功能是在大學做階段設計時寫的:
import java.io.IOException;
/**
* Java代碼實現向Oracle數據庫中導入已備份的數據庫文件
*
* @author:Gaohuanjie
*/
public class OracleImportDatabase {
/**
* 向Oracle數據庫中導入已備份的數據庫文件
*
* @author:Gaohuanjie
* @param userName 進入數據庫所需要的用戶名
* @param password 進入數據庫所需要的密碼
* @param SID 用戶所在的SID
* @param fromUserName 導入的數據文件原來的用戶
* @param filePath 不包含擴展名的數據庫備份文件路徑
* @return 返回true表示導入成功,返回false表示導入失敗
*/
public static boolean importDatabase(String userName, String password, String SID, String fromUserName, String filePath)throws InterruptedException {
String toUserName = userName;
try {
Process process = Runtime.getRuntime().exec("imp " + userName + "/" + password + "@" + SID + " fromuser=" + fromUserName + " touser=" + toUserName + " file=" + filePath + ".dmp");
if (process.waitFor() == 0) {// 0 表示線程正常終止。
return true;
}
} catch (IOException e) {
e.printStackTrace();
}
return false;
}
public static void main(String[] args) throws InterruptedException {
if (importDatabase("gaohuanjie", "ab19890110", "orcl", "gaohuanjie", "D:\\oracledb")) {
System.out.println("數據庫成功導入!!!");
} else {
System.out.println("數據庫導入失敗!!!");
}
}
}