Linux系統下,Oracle資料庫的備份與還原
阿新 • • 發佈:2019-01-03
資料備份:
1.使用Linux系統下的資料庫管理員賬號連線linux終端。
2. 執行以下語句,建立“bak_dir”資料夾。
create or replace directory bak_dir as '/opt/oracle/bak_dir'
6. 執行以下語句,將“bak_dir”的讀、寫和執行許可權賦給xx(資料使用者名稱)使用者。
grant all on directory bak_dir to xx
commit
7. 執行以下語句,退出oracle資料庫伺服器。
quit
執行以下語句,將sysdb使用者的表備份到“bak_dir”目錄下。
8.expdp xx(要匯出表所在的資料庫使用者名稱)/xx(密碼)@資料庫例項名 directory=bak_dir dumpfile=expdb_xx.dmp logfile=expdb_xxlog tables=表名
資料還原:
1.在命令列輸入:sqlplus "/as sysdba"
2. 執行以下語句登入xx資料庫,使用者名稱:xx,密碼:xx(請輸入當地實際密碼)
conn xx/xx;
3.如果恢復的表中有涉及到觸發器的請停止觸發器,例:A表
alter table A disable all triggers;
commit;
4. 執行以下語句退出當前使用者
5. 執行以下語句,恢復使用者資料。
impdp xx/[email protected]資料庫例項名 directory=bak_dir table_exists_action=truncate dumpfile=expdb_xx.dmp logfile=impdb_xx.log
5.在命令列輸入:sqlplus "/as sysdba"
6. 執行以下語句登入xx資料庫,使用者名稱:xx,密碼:xx(請輸入當地實際密碼)
conn xx/xx;
7. 執行以下語句開啟被禁止的觸發器
alter table A enable all triggers;
commit;
1.使用Linux系統下的資料庫管理員賬號連線linux終端。
2. 執行以下語句,建立“bak_dir”資料夾。
mkdir bak_dir
3. 執行以下語句,為“bak_dir”資料夾賦予讀、寫和執行許可權。chmod 777 bak_dir
4. 執行以下語句,以sysdba使用者登入Oracle資料庫伺服器。sqlplus 資料庫管理員賬號/密碼@資料庫例項名 as sysdba
5. 執行以下語句,將“bak_dir”指定為“/opt/oracle/bak_dir”。create or replace directory bak_dir as '/opt/oracle/bak_dir'
commit
grant all on directory bak_dir to xx
commit
7. 執行以下語句,退出oracle資料庫伺服器。
quit
執行以下語句,將sysdb使用者的表備份到“bak_dir”目錄下。
8.expdp xx(要匯出表所在的資料庫使用者名稱)/xx(密碼)@資料庫例項名 directory=bak_dir dumpfile=expdb_xx.dmp logfile=expdb_xxlog tables=表名
資料還原:
1.在命令列輸入:sqlplus "/as sysdba"
2. 執行以下語句登入xx資料庫,使用者名稱:xx,密碼:xx(請輸入當地實際密碼)
conn xx/xx;
3.如果恢復的表中有涉及到觸發器的請停止觸發器,例:A表
alter table A disable all triggers;
commit;
4. 執行以下語句退出當前使用者
quit;
impdp xx/[email protected]資料庫例項名 directory=bak_dir table_exists_action=truncate dumpfile=expdb_xx.dmp logfile=impdb_xx.log
5.在命令列輸入:sqlplus "/as sysdba"
6. 執行以下語句登入xx資料庫,使用者名稱:xx,密碼:xx(請輸入當地實際密碼)
conn xx/xx;
7. 執行以下語句開啟被禁止的觸發器
alter table A enable all triggers;
commit;