欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Oracle數(shù)據(jù)庫表備份導入導出dmp的方式及踩坑記錄

 更新時間:2022年07月25日 09:15:42   作者:必相依  
dmp是數(shù)據(jù)庫導出的文件,用以備份數(shù)據(jù)庫用,一般會用exp命令來導出,用imp命令來導入也就是恢復數(shù)據(jù)庫,下面這篇文章主要給大家介紹了關(guān)于Oracle數(shù)據(jù)庫表備份導入導出dmp的方式及踩坑記錄,需要的朋友可以參考下

一、備份導出前的注意事項

1.導出導出的時候需要注意數(shù)據(jù)庫的字符集是否一致,使用工具導入的話也需要確認工具的字符集

   --查詢服務端的編碼命令
SELECT * FROM Nls_Database_Parameters where parameter = 'NLS_CHARACTERSET';
   --查詢客戶端軟件的編碼命令
SELECT Userenv('language') FROM dual where parameter = 'NLS_CHARACTERSET';

2.導出時要確認導出文件的目錄,使用oracle自帶的邏輯目錄或者自己創(chuàng)建邏輯目錄,需要用到目錄名稱和目錄路徑,在導出時只需指定目錄名稱,導出的文件存放在目錄路徑下

   --2.1.查看oracle已有的目錄,
select * from dba_directories;
   --2.2.自己創(chuàng)建邏輯目錄
create directory 目錄名稱 as ‘目錄路徑';
   --2.3.如果是自己創(chuàng)建的目錄,需要給用戶添加讀寫此文件夾的權(quán)限
grant read,write on directory dir to scott;

3.需要確認要導出的目錄中空間是否夠用,空間不足時導入會停止

二、導出的兩種方式

2.1.使用exp導出

    --2.1.1.導出命令
exp 用戶名/密碼@數(shù)據(jù)庫IP:端口號/orcl file=導出的目標文件名稱 tables=要導出的表名(多個表時用逗號隔開)
exp TJ_DATA/a123456@10.10.1.54:1521/orcl file=export.dmp tables=USER_INFO,POLICY_INFO;

   --2.1.2.導入命令
imp 用戶名/密碼@數(shù)據(jù)庫IP:端口號/orcl file=導出的目標文件名稱 tables=要導出的表名(多個表時用逗號隔開)
imp TJ_DATA/a123456@10.10.1.54:1521/orcl file=export.dmp tables=USER_INFO,POLICY_INFO;

2.2.使用數(shù)據(jù)泵expdp導出

   --2.2.1.導出命令
expdp 用戶名/密碼@數(shù)據(jù)庫IP:端口號/orcl file=導出的目標文件名稱 tables=要導出的表名(多個表時用逗號隔開)
expdp TJ_DATA/a123456@10.10.1.54:1521/orcl file=export.dmp tables=USER_INFO,POLICY_INFO;

   --2.2.2.導入命令
impdp 用戶名/密碼@數(shù)據(jù)庫IP:端口號/orcl file=導出的目標文件名稱 tables=要導出的表名(多個表時用逗號隔開)
impdp TJ_DATA/a123456@10.10.1.54:1521/orcl file=export.dmp tables=USER_INFO,POLICY_INFO

三、在備份時遇到的坑

   --3.1. 要備份的表如果是分區(qū)表,不能使用exp導出命令.只能使用數(shù)據(jù)泵導出方式.

   --3.2. dmp文件導入時,數(shù)據(jù)庫中不能存在同名的表

   --3.3. 導入時,數(shù)據(jù)庫表的表空間要一致,在命令中可以修改表空間,在導入導入命令后面加上 ‘remap_tablespace=原表空間名:新表空間名’
impdp TJ_DATA/a123456@10.10.1.54:1521/orcl file=export.dmp tables=USER_INFO remap_tablespace=OLD_SPACE:NEW_SPACE

   – 3.4. 導出時如果表空間不足,需要為當前表空間新增數(shù)據(jù)文件來擴容,數(shù)據(jù)文件可以設(shè)置初始大小,并設(shè)置自增,也可以限定最大值
ALTER TABLESPACE 表空間名 ADD DATAFILE ‘數(shù)據(jù)文件路徑及名稱’ size 文件初始大小 autoextend on (設(shè)置是否開啟自增) MAXSIZE 文件最大值;

ALTER TABLESPACE TJ_DATA ADD DATAFILE '/oracle/oradata/ds.dbf' size 1024M autoextend on MAXSIZE 20480M;

   --3.5.導入導出有三種類型,分別是表方式(T方式),用戶方式(U方式),全庫方式(Full方式),這里只記錄了表導出方式

附:Oracle導出指定用戶下dmp文件

1.導出指定用戶下的全部表

exp DEMO/DEMO@ORCL file=D:\dmp\DEMO_20220121.dmp owner=DEMO buffer=8192000 log=D:\dmp\DEMO_20220121_daochu.log

上述內(nèi)容代表將用戶DEMO的全部表導出為D盤dmp文件夾下的DEMO_20220121.dmp文件,導出日志為相同目錄下的DEMO_20220121_daochu.log

2.導出指定表名的表

exp DEMO/DEMO@ORCL file=D:\dmp\DEMO_20220121_ep.dmp tables=('EP_SYS_CQ_COND','EP_SYS_CONSIGN_REC','EP_SYS_CQ_COND_DEF') buffer=8192000 log=D:\dmp\DEMO_20220121_ep_daochu.log

表示導出指定的三個表('EP_SYS_CQ_COND','EP_SYS_CONSIGN_REC','EP_SYS_CQ_COND_DEF')

3.導出以**開頭的表

exp DEMO/DEMO@ORCL_MDPC file=D:\dmp\DEMO_20220307_demo.dmp tables=(DEMO.DEMO_%) buffer=8192000 log=D:\dmp\DEMO_20220307_demo_daochu.log

表示導出DEMO用戶下DEMO_開頭的全部表

總結(jié)

到此這篇關(guān)于Oracle數(shù)據(jù)庫表備份導入導出dmp的文章就介紹到這了,更多相關(guān)Oracle備份導入導出dmp內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論