oracle資料庫匯出與恢復
阿新 • • 發佈:2020-12-12
oracle資料庫匯出與恢復
exp匯出
--建立表空間
create tablespace PRO
logging
datafile '/tmp/oracle/obak_pro_01.dbf'
size 1500m
autoextend on
next 100m maxsize 10000m
extent management local;
--建立使用者並且繫結表空間
create user dba_user identified by abcd1234 DEFAULT TABLESPACE PRO;
--給使用者賦許可權
grant connect ,resource,dba,CTXAPP,create view,debug any procedure,debug connect session to dba_user;
登陸使用者就可以使用了
匯出
exp dba_user/abcd1234@SJZXBJT file=/tmp/oracle_base/test00120201211.dmp tables=class001
```sql
exp 使用者名稱/密碼@例項名 file=dmp檔案存放路徑 tables=那張表
exp匯入
恢復表結構
--建立表空間
create tablespace PRO
logging
datafile '/tmp/oracle/obak_pro_01.dbf'
size 1500m
autoextend on
next 100m maxsize 10000m
extent management local;
--建立使用者並且繫結表空間
create user dba_user identified by abcd1234 DEFAULT TABLESPACE PRO;
--給使用者賦許可權
grant connect,resource,dba,CTXAPP,create view,debug any procedure,debug connect session to dba_user;
--匯入
mv test00120201211.dmp /oracle/ 11g/admin/SJZXBJT/dpdump/
chown -R oracle:oinstall htglsjzxdb20201109.dmp
imp dba_user/abcd1234 file=test00120201211.dmp full=y ignore=n
expdp
先建立備份目錄
create or replace directory zyy as '/tmp/oracle_base';
expdp dba_user/abcd1234@SJZXBJT TABLES=class002 directory=zyy dumpfile=2020_12_11_DIDP.dmp logfile=2020_12_11_DIDP.log;
有時候會遇到這種錯誤
--重新建立備份目錄
drop directory zyy ;
create or replace directory zyy as '/tmp/oracle_base';
grant read,write on directory zyy to public ;
--修改備份目錄的屬主和屬組
mkdir tmp/oracle_base
chown -R oracle:oinstall tmp/oracle_base
impdp
--建立表空間
create tablespace PRO
logging
datafile '/tmp/oracle/obak_pro_01.dbf'
size 1500m
autoextend on
next 100m maxsize 10000m
extent management local;
--建立使用者並且繫結表空間
create user dba_user identified by abcd1234 DEFAULT TABLESPACE PRO;
--給使用者賦許可權
grant connect,resource,dba,CTXAPP,create view,debug any procedure,debug connect session to dba_user;
--匯入
mv 2020_12_11_DIDP.dmp /oracle/11g/admin/SJZXBJT/dpdump/
chown -R oracle:oinstall 2020_12_11_DIDP.dmp
impdp dba_user/abcd1234@SJZXBJT dumpfile=data_pump_dir:2020_12_11_DIDP.dmp