使用RMAN完成ORACLE自動化備份的過程

2021-08-08 03:49:35 字數 2927 閱讀 1869

本機電腦安裝了oracle伺服器,又安裝了oracle客戶端,兩個合在一起就有問題。我使用sqlplus連線伺服器的時候彈出tns介面卡錯誤!!!

連線**如下:

cd c:

c:\>set oracle_sid=orcl

c:\>sqlplus /nolog

sql>connect /as sysdba;

執行到這個地方的時候就彈出tns介面卡錯誤!!!

因為oracle server和oracle client同樣都有乙個執行目錄\bin,在環境變數中,client的執行目錄可能在server之前,導致執行connect /as sysdba的時候找到的執行目錄是client的,但是監聽程式和服務都是server的,所以執行不成功。

解決方法:

修改oracle_home為server目錄

按照上面的設定會導致乙個問題就是pl/sql不能連線到伺服器,處理方法為刪除oracle_home這項內容。這樣使用sqlplus和plsql都可以連線oracle資料庫了。

將oracle server的執行目錄放在client之前

這樣就解決了tns介面卡錯誤的問題。

備份方案:

a、第一次全備份

b、每天備份本日的資料

c、每週末備份整個一周的資料

d、每月備份本月的資料

e、每年備份所有的資料

第一步,將資料庫切換到歸檔模式,這樣做的目的是讓資料庫在開啟的情況下也可以備份,**如下:

%sqlplus /nolog (啟動sqlplus)

sql> conn / as sysdba (以dba身份連線資料庫)

sql> shutdown immediate; (立即關閉資料庫)

sql> startup mount (啟動例項並載入資料庫,但不開啟)

sql> alter database archivelog; (更改資料庫為歸檔模式)

sql> alter database open; (開啟資料庫)

sql> alter system archive log start; (啟用自動歸檔)

sql> exit (退出)

執行效果如下圖:

全備份**如下:

c:\>set oracle_sid=orcl

c:\>rman target /

rman>backup database;

執行效果如下圖:

從圖上可以看出全備份已經執行完畢了。

檢視備份檔案的**如下:

rman>list backup of database;
執行效果如下圖所示:

第二步,備份方案設計

需求為:備份需要在指定的時間做指定的增量備份方案;

所以需要四種備份的rman批處理檔案,分別是:全備份、級別0/1/2的增量備份**;

要執行這些rman的備份**需要用到cmd的批處理命令;

要在指定時間執行這些批處理的話,需要使用windows的計畫任務。

下面一一寫出這些內容

配置rman的**,包括備份目錄、是否自動備份等內容:

run
全備份批處理**,儲存為backup_full.rman:

run
設定增量備份級別為0的備份**:

run
設定增量備份級別為1的備份**(其實就是將level改為2就可以了):

run
增量為2的備份**類似,這裡就不一一舉例了。

執行全備份的批處理檔案(cmd)**如下:

set oracle_sid=orcl

rman target / msglog d:\oraclebackup

\backuplog

\oracle_backup.log cmdfile=d:\hsf

\mycode

\backup

\backup_full.rman

執行三個級別的增量備份方案類似,這裡就不一一枚舉了。

經過上述一系列的操作,執行oracle每日備份的工作就完成了。

RMAN備份恢復Oracle

一 備份與恢復概述 1 需要備份的原因 現實工作中有很多情況都可能造成資料丟失,造成資料丟失的主要因素如下。n 介質故障 磁碟損壞 磁頭碰撞,瞬時強磁場干擾 n 使用者的錯誤操作 n 伺服器的徹底崩潰 n 計算機病毒 n 不可預料的因素 自然災害 電源故障 盜竊 上面是一些可能的故障原因,根據原因可...

oracle使用hibernate不能自動建表

最近在專案中使用hibernate的動態生成表,即將hbm2ddl.auto配置成update時,發現hibernate並沒有按照預設的生成規則生成相應的資料表資訊。但奇怪的是,只是部分表沒有生成,而其它的錶即生成成功了。重新啟動專案,發現問題依舊。奇怪的是,雖然有些表沒有生成,但它相關聯的關聯錶即...

windows下oracle採用rman定時備份

建立批處理檔案 backupdb.bat 內容如下 rem echo off set afile backuplog date 0,4 date 5,2 date 8,2 log set adir dp0 rman cmdfile adir backupdb.rman adir afile exit...