在Oracle中,怎麼快速獲得整個數據庫的熱備腳本?數據庫
答案:能夠寫一段相似的腳本:ide
SET SERVEROUTPUT ONspa
BEGIN3d
DBMS_OUTPUT.ENABLE(10000);blog
FOR BK_TS IN (SELECT DISTINCT T.TS#, T.NAMEit
FROM V$TABLESPACE T, V$DATAFILE Dclass
WHERE T.TS# = D.TS#) LOOPim
DBMS_OUTPUT.PUT_LINE('--' || BK_TS.NAME);數據
DBMS_OUTPUT.PUT_LINE('ALTER TABLESPACE ' || BK_TS.NAME ||' BEGIN BACKUP;');腳本
FOR BK_FILE IN (SELECT FILE#, NAME FROM V$DATAFILE WHERE TS# = BK_TS.TS#) LOOP
DBMS_OUTPUT.PUT_LINE('HOST CP ' || BK_FILE.NAME || ' $BACKUP_DEPT/');
END LOOP;
DBMS_OUTPUT.PUT_LINE('ALTER TABLESPACE ' || BK_TS.NAME ||' END BACKUP;');
END LOOP;
END;
/