Oracle資料庫的日常使用命令 6

2021-05-25 20:39:48 字數 2340 閱讀 1098

資料庫的邏輯恢復分為表、使用者、資料庫三種模式。

1. 表模式

恢復方法為:

imp  imuse01/imuse01  file=檔名 log=log檔名

rows=y commit=y buffer=y ignore=y

tables=(表名1,表名2,表名3,表名4,.......)   

引數說明:

buffer 緩衝區大小

file 用於裝入的卸出檔案名字

tables 將要裝入的表名列表

rows 指明是否裝入表資料的行數,預設為「y」。

ignore 指明如何處理實體建立錯誤。指定ignore=y,當試圖建立資料庫實體時,忽略實體存在錯誤。對除了表之外的其他實體,指定ignore=y,import不報告錯誤,繼續執行。而指定ignore=n時,import在繼續執行前報告實體建立錯誤。

commit 指明在每個矩陣插入之後是否提交。預設時,import在裝入每個實體之後提交。指定commit=n時,如有錯誤產生,import在記錄裝入下乙個實體之前,完成乙個回退。指定commit=y時,可以抑制回滾字段無限制增大,並改善大量裝入時的效能,表具有唯一約束時,這種選擇比較好。如果再次開始裝入,將拒絕裝入已經裝入的任何行,原因是非致命性錯誤。表具有非唯一約束時,指定commit=n可能是比較好的選擇。因為重新裝入可能會產生重複行。

log 指定乙個接收有用資訊和錯誤資訊的檔案

2. 使用者模式

如果備份方式為使用者模式,採用下列恢復方法:

imp system/manager fromuser=imuse01 touser= imuse01

file=檔名 log=log檔名 rows=y commit=y

buffer=y ignore=y

引數說明同上。exp_lyq_db.log

3. 資料庫模式

如果備份方式為資料庫模式,採用下列恢復方法:

imp system/manager full=y

file=檔名 log=log檔名 rows=y commit=y

buffer=y ignore=y

字符集轉換

對於單位元組字符集(例如us7ascii),恢復時,資料庫自動轉換為該會話的字符集(nla_lang引數);對於多位元組字符集(例如zhs168cgb),恢復時,應盡量使字符集相同(避免轉換),如果要轉換,目標資料庫的字符集應是輸出資料庫字符集的超集。

增量卸出/裝入

下面介紹利用export/import實用程式對oracle資料庫進行備份、恢復的方法:增量卸出/裝入。增量卸出是一種常用的資料備份方法,包括3個子類:

(1)  「完全」增量卸出

就是對整個oracle資料庫進行完全卸出。如:

$ exp system/口令 inctype=complete full=y file=today.dmp

(1)  「增量型」增量卸出

即從oracle資料庫中卸出上次卸出操作之後所有資料庫的變化資訊。如:

$exp system/口令 inctype=incremental file=today.dmp

增量型卸出檔案的大小,可能只是完全卸出檔案大小的1%,具體要看「新資訊或更新過的資訊」的總量而定。

(2)  「累積型」增量卸出

累積型卸出方式只是卸出自上次「完全」 卸出之後資料庫中變化了的資訊。用法如下:

$exp system/口令 inctype=cumulative file=today.dmp

dba可以排定乙個備份日程表,用資料卸出的三個不同方式合理高效地完成資料庫的備份任務。比如dba作如下安排:

星期一:完全卸出(f1)

星期二:增量卸出(i1)

星期三:增量卸出(i2)

星期四:累積卸出(c1)

星期五:增量卸出(i3)

星期六:增量卸出(i4)

如果在星期日,資料庫遭到意外破壞,dba可按以下步驟來恢復資料庫:

? 用命令create database重新生成你的資料庫結構;

? 最近增量裝入i4:$imp system/口令 inctype=system full=y file=i4

? 完全增量裝入f1:$imp system/口令 inctype=restore full=y file=f1

? 累積增量裝入c1:$imp system/口令 inctype=restore full=y file=c1

? 對於由累積裝入或完全裝入尚未能裝入的資訊,作增量裝入:

$imp system/口令 inctype=restore full=y file=i3

$imp system/口令 inctype=restore full=y file=i4

注意:在i1和i2中的資訊已包括在c1中了。

Oracle資料庫的日常使用命令 1

1.啟動和關閉資料庫 sqlplus nolog sql conn as sysdba sql startup 若啟動檔名不是oracle預設的檔名,則啟動時應帶啟動目錄與檔名 sql startup pfile 停止 sql shutdown immediate 2.控制監聽 1 啟動監聽 lsn...

oracle資料庫日常使用總結

使用規則 decode 條件,值1,返回值1,值2,返回值2,值n,返回值n,預設值 方法原理 if 條件 值1 then return 翻譯值1 elsif 條件 值2 then return 翻譯值2 elsif 條件 值n then return 翻譯值n else return 預設值 en...

Oracle 資料庫日常維護 1

七 資料庫壞塊的處理 當 oracle資料庫出現壞塊時,oracle會在警告日誌檔案 alert sid.log 中記錄壞塊的資訊 ora 01578 oracle data block corrupted file 7,block ora 01110 data file oracle1 orada...