[Q]如何開啟/關閉歸檔
[A]如果開啟歸檔
注意
a
b
c
d
a
b
c
d
歸檔信息可以通過如下語句查看
SQL> archive log list
Database log mode Archive Mode
Automatic archival Enabled
Archive destination E:\oracle\ora
Oldest online log sequence
Next log sequence to archive
Current log sequence
[Q]怎樣設置定時歸檔
[A]
設置Archive_lag_target = n
單位
[Q]不同版本怎麼導出/導入
[A]導出用低版本
如果版本跨越太大
[Q]不同的字符集之前怎麼導數據
[A]a
b
參考函數(以下函數中的ID是十進制的)
nls_charset_name 根據字符集ID獲得字符集名稱
nls_charset_id 根據字符集名稱獲得字符集ID
[Q]怎麼樣備份控制文件
[A]再線備份為一個二進制的文件
alter database backup controlfile to
備份為文本文件方式
alter database backup controlfile to trace [resetlogs|noresetlogs];
[Q]控制文件損壞如何恢復
[A]
只需要關閉數據庫
或者是修改init
創建控制文件的腳本可以通過alter database backup controlfile to trace獲取
[Q]怎麼樣熱備份一個表空間
[A]Alter tablespace 名稱 begin backup;
host cp 這個表空間的數據文件 目的地;
Alter tablespace 名稱 end backup;
如果是備份多個表空間或整個數據庫
[Q]怎麼快速得到整個數據庫的熱備腳本
[A]可以寫一段類似的腳本
SQL>set serveroutput on
begin
dbms_output
for bk_ts in (select distinct t
dbms_output
dbms_output
for bk_file in (select file#
dbms_output
end loop;
dbms_output
end loop;
end;
/
[Q]丟失一個數據文件
[A]如果沒有備份只能是刪除這個數據文件了
SQL>startup mount
SQL>Alter database datafile
SQL>Alter database datafile
SQLl>Alter database open;
注意
[Q]丟失一個數據文件
[A]保證如下條件
a
b
如果滿足以上條件
SQL>startup mount
SQL>Alter database create datafile
SQL>recover datafile n;
或者
SQL>recover datafile
或者
SQL>recover database;
SQL>Alter database open;
[Q]聯機日志損壞如何恢復
[A]
Alter database clear logfile group n來創建一個新的日志文件
如果該日志還沒有歸檔
Alter database clear unarchived logfile group n
如果有備份
如果沒有備份
[Q]怎麼樣創建RMAN恢復目錄
[A]首先
sqlplus sys
SQL> create user rman identified by rman;
SQL> alter user rman default tablespace tools temporary tablespace temp;
SQL> alter user rman quota unlimited on tools;
SQL> grant connect
SQL> exit;
然後
rman catalog rman/rman
RMAN> create catalog tablespace tools;
RMAN> exit;
最後
rman catalog rman/rman target backdba/backdba
RMAN> register database;
[Q]怎麼樣在恢復的時候移動數據文件
[A]給一個RMAN的例子
run {
set until time
allocate channel d
set newname for datafile
to
set newname for datafile
to
set newname for datafile
to
restore controlfile to
replicate controlfile from
restore database;
sql
switch datafile all;
recover database;
sql
release channel d
}
[Q]怎麼從備份片(backuppiece)中恢復(restore)控制文件與數據文件
[A]可以使用如下方法
restore controlfile from backuppiecefile;
如果是
restore controlfile from autobackup;
但是
自動備份控制文件的默認格式是%F
c
至於恢復(restore)數據文件
在 nomount 狀態下就可以執行
可以在SQLPLUS中運行
SQL>startup nomount
SQL> DECLARE
PL/SQL 過程已成功完成
SQL> alter database mount;
[Q]Rman的format格式中的%s類似的東西代表什麼意義
[A]可以參考如下
%c 備份片的拷貝數
%d 數據庫名稱
%D 位於該月中的第幾天 (DD)
%M 位於該年中的第幾月 (MM)
%F 一個基於DBID唯一的名稱
%n 數據庫名稱
%u 一個八個字符的名稱代表備份集與創建時間
%p 該備份集中的備份片號
%U 一個唯一的文件名
%s 備份集的號
%t 備份集時間戳
%T 年月日格式(YYYYMMDD)
From:http://tw.wingwit.com/Article/program/Oracle/201311/17579.html