一、下載下傳oracle資料庫用戶端,并在電腦上安裝
二、配置環境變量 找到oracle用戶端的安裝路徑中Bin目錄,将其路徑配置到Path中。 截圖如下:
三、按Win+R打開cmd視窗,敲入exp指令,檢視環境變量是否配置正确:如果跟下面截圖一樣,則安裝正确。
四、利用指令導出、導入Oracle資料庫
導出資料庫:exp imis/[email protected]/orcl file=d:/imis.dmp log=d:/imislog.log 備注:exp 使用者名/密碼@資料庫所在IP/資料庫服務名 file=導出備份檔案路徑 log=導出日志 導入資料庫:imp kpchen/[email protected]/orcl full=y file=d:/imis.dmp log=d:/impimis.log ignore=y
注意:1、如果敲入exp 或者 imp 指令,不支援,說明你沒有配置環境變量和安裝oracle 用戶端 2、導入資料庫時,為了避免不必要的錯誤,先清空資料庫(簡單操作:删除使用者,這樣就會清空該用的所具有的所有資訊。在建立使用者)
五、Java web程式中備份oracle資料庫 執行個體 1.生成備份檔案:
public ActionForward createDmp(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
Calendar c = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
String fileName = "data_oracle" + sdf.format(c.getTime());
String dmpFolder = request.getSession().getServletContext()
.getRealPath("")
+ "\\datas\\dmp\\";
String logFolder = request.getSession().getServletContext()
.getRealPath("")
+ "\\datas\\log\\";
String cmd = "exp username/[email protected] file='" + dmpFolder + fileName
+ ".dmp' log='" + logFolder + fileName + ".log' owner=username";
Runtime.getRuntime().exec(cmd);
Thread.sleep(100 * 1000);
request.setAttribute("msg", "備份成功,檔案生成會有延遲,請稍等");
return mapping.findForward("dmpCreated");
}
2.查詢備份檔案:
public ActionForward findDmp(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
String dmpFolder = request.getSession().getServletContext()
.getRealPath("")
+ "\\datas\\dmp\\";
File folder = new File(dmpFolder);
File[] files = folder.listFiles();
List<String[]> fileList = new ArrayList<String[]>();
for (int i = 0; i < files.length; i++) {
if (files[i].getName().indexOf(".dmp") > 0) {
String[] one = new String[2];
one[0] = files[i].getName();
one[1] = files[i].length() / 1000 + "K";
fileList.add(one);
}
}
request.setAttribute("fileList", fileList);
return mapping.findForward("dmpList");
}
3.删除備份檔案:
public ActionForward deleteDmp(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
String dmpFolder = request.getSession().getServletContext()
.getRealPath("")
+ "\\datas\\dmp\\";
File folder = new File(dmpFolder);
File[] files = folder.listFiles();
String fileName = request.getParameter("dmpName");
for (int i = 0; i < files.length; i++) {
if (files[i].getName().equals(fileName)) {
files[i].delete();
request.setAttribute("msg", "删除成功");
break;
}
}
return mapping.findForward("dmpList");
}