Oracle數據庫備份及還原(刪除恢復、同步數據)


Oracle 數據庫復制表
--------------------------------------------------------------------------------
create table table_new_name as
select * from table_name
 
 
Oracle 數據庫批量處理表(同步表,同步數據,刪除)
---------------------------------------------------------------------------------
DECLARE
V_ROW USER_TABLES%ROWTYPE;
CURSOR V_CUR IS
select * from user_tables@DBS; --同步表
--select * from user_tables@DBS a where a.table_name not in (select table_name from user_tables);--同步 不存在的表
V_OP VARCHAR2(100);
BEGIN
OPEN V_CUR; -- 打開游標
LOOP
FETCH V_CUR INTO V_ROW; -- 將游標所在行的數據轉存到v_row中
EXIT WHEN V_CUR%NOTFOUND; -- 當游標到最后一行時跳出
DBMS_OUTPUT.PUT_LINE('names= ' || V_ROW.TABLE_NAME);
--v_op:='INSERT INTO '|| v_row.table_name || ' select * from '||v_row.table_name||'@dbs'
v_op:='CREATE TABLE '|| v_row.table_name || ' as select * from '||v_row.table_name||'@dbs'; --同步表
--V_OP := 'drop table ' || V_ROW.TABLE_NAME; --刪除表
DBMS_OUTPUT.PUT_LINE(v_op);
EXECUTE IMMEDIATE v_op;
COMMIT;
END LOOP;
CLOSE V_CUR; -- 關閉游標
 
 
Oracle數據庫備份及還原
-----------------------------------------------------------------------------------
1、單擊開始,這里輸入cmd,打開dos窗口
2、輸入命令 exp user/password@orcl file=E:\app\beifen.dmp 
備注:user是指備份時,登錄數據庫實例orcl 的用戶名;
password是用戶user登錄數據庫orcl 時的密碼;
orcl 是Oracle數據庫的實例名。
file=E:\app\beifen.dmp  是指備份文件的存放路徑。
3、如果在導出命令的最后加上full=y的參數,也就是
exp user/password@orcl file=E:\app\beifen.dmp  full=y
意思是將用戶user在orcl 數據庫實例中的所有文件都備份,也就是完整備份
數據還原
4、數據庫還原使用語法
imp user/password@orcl file=E:\app\beifen.dmp
注:file=E:\app\beifen.dmp  是指備份文件的存放路徑。
 
 
Oracle中誤刪除數據並commit后的數據恢復辦法
------------------------------------------------------------------------------
--1.先備份A表當前數據。
--2.查詢某時間點前的SCN號碼
SELECT MAX(Scn) FROM Sys.Smon_Scn_Time WHERE Time_Dp < To_Date(某時間點, 'YYYYMMDD hh:mi:ss');
--3.查看某時間點的A表數據
SELECT * FROM A AS OF SCN '步驟2的SCN號';
--4.如果查看數據是想要的數據,則恢復
SELECT row_movement FROM user_tables WHERE table_name = 'A';
--5.步驟4結果如果為DISABLE ,則執行下面這句話,否則跳過
ALTER TABLE A  ENABLE ROW MOVEMENT;
--6.執行
FLASHBACK TABLE A TO SCN '步驟2的SCN號';
--7.如果原來為enable則不用執行,否則執行
ALTER TABLE A DISABLE ROW MOVEMENT;
--8.如果權限不夠,就換個DBA用戶進行上述操作


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM