亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Oracle數(shù)據(jù)IMP和EXP命令用法詳解

 更新時(shí)間:2023年11月25日 11:03:51   作者:沒(méi)有實(shí)現(xiàn)不了的夢(mèng)  
這篇文章主要給大家介紹了關(guān)于Oracle數(shù)據(jù)IMP和EXP命令用法詳解的相關(guān)資料,我們可以使用Oracle自帶的exp、imp命令來(lái)進(jìn)行數(shù)據(jù)庫(kù)備份,imp和exp稱之為導(dǎo)入導(dǎo)出,這種方式也能快速的導(dǎo)入導(dǎo)出table或數(shù)據(jù)庫(kù),需要的朋友可以參考下

前言

Oracle 的 EXP(Export)和 IMP(Import)是兩個(gè)非常重要的命令,它們用于數(shù)據(jù)庫(kù)的備份和恢復(fù)。下面我們將詳細(xì)介紹這兩個(gè)命令及其參數(shù)的用法。

1. EXP(Export)

EXP命令可以看作是一個(gè)搬運(yùn)工人,他的工作就是將你指定的物品(數(shù)據(jù))從Oracle數(shù)據(jù)庫(kù)搬出,并打包成一個(gè) .dmp 文件。這個(gè)過(guò)程就像是你要搬家,需要將你的所有物品打包好,準(zhǔn)備搬到新家。

以下是EXP命令的一般格式和常用參數(shù):

exp userid=<用戶名>/<密碼>@<數(shù)據(jù)庫(kù)連接> file=<導(dǎo)出文件的路徑和名稱> owner=<要導(dǎo)出的用戶名稱> tables=<要導(dǎo)出的表名稱> full=<是否全庫(kù)導(dǎo)出>
  • userid:這是告訴搬運(yùn)工人鑰匙在哪(數(shù)據(jù)庫(kù)連接信息),以及如何開(kāi)門(用戶名和密碼)。

  • file:這是告訴搬運(yùn)工人將物品搬到哪個(gè)箱子里(即導(dǎo)出文件的路徑和名稱)。

  • owner:這是指定要導(dǎo)出哪個(gè)公司的物品(即用戶名稱)。如果沒(méi)有指定,那么搬運(yùn)工人將打包你擁有權(quán)限的所有物品。

  • tables:這是指定要搬運(yùn)哪些特定的物品(即表名稱)。如果沒(méi)有指定,那么就搬運(yùn)全部的物品。

  • full:這是告訴搬運(yùn)工人是否要打包整棟樓的物品(即是否全庫(kù)導(dǎo)出)。如果設(shè)置為 y,則不論你是否擁有權(quán)限,只要能搬走的,他都會(huì)搬。

舉例

假設(shè)我們有一個(gè)用戶名為scott,密碼為tiger,在數(shù)據(jù)庫(kù)orcl中,我們想導(dǎo)出該用戶下的所有表,并保存到D:\backup\scott.dmp。

exp scott/tiger@orcl file=D:\backup\scott.dmp owner=scott

在這個(gè)命令中:

  • 必須的參數(shù):userid(在這里是scott/tiger@orcl),file(在這里是D:\backup\scott.dmp
  • 可選的參數(shù):owner,tables,full

2. IMP(Import)

IMP命令就像是EXP的反向操作,是另一位搬運(yùn)工人,他的工作是從 .dmp 文件中取出物品(數(shù)據(jù))并將它們放入Oracle數(shù)據(jù)庫(kù)。這個(gè)過(guò)程就像是你搬到新家后,需要將你的物品從箱子中取出并放置到合適的位置。

以下是IMP命令的一般格式和常用參數(shù):

imp userid=<用戶名>/<密碼>@<數(shù)據(jù)庫(kù)連接> file=<導(dǎo)入文件的路徑和名稱> fromuser=<原用戶> touser=<新用戶> tables=<要導(dǎo)入的表名稱> full=<是否全庫(kù)導(dǎo)入> ignore=<是否忽略錯(cuò)誤>
  • userid:這是告訴搬運(yùn)工人鑰匙在哪(數(shù)據(jù)庫(kù)連接信息),以及如何開(kāi)門(用戶名和密碼)。

  • file:這是告訴搬運(yùn)工人在哪個(gè)箱子里取物品(即導(dǎo)入文件的路徑和名稱)。

  • fromuser:這是告訴搬運(yùn)工人原來(lái)的物品是屬于哪個(gè)公司的(即原用戶)。

  • touser:這是告訴搬運(yùn)工人將物品放到新公司的哪個(gè)地方(即新用戶)。

  • tables:這是指定搬運(yùn)工人取出箱子中的哪些特定物品(即表名稱)。如果沒(méi)有指定,那么就取出全部的物品。

  • full:這是告訴搬運(yùn)工人是否要把箱子里的所有物品都取出并放到新家(即是否全庫(kù)導(dǎo)入)。如果設(shè)置為 y,則不論是否需要,只要箱子里有,他都會(huì)取出來(lái)。

  • ignore=y:如果目標(biāo)表已存在,將忽略錯(cuò)誤,繼續(xù)將數(shù)據(jù)導(dǎo)入到已存在的表中。

舉例

假設(shè)我們想將上面導(dǎo)出的文件D:\backup\scott.dmp導(dǎo)入到用戶scott,密碼為tiger在數(shù)據(jù)庫(kù)orcl中。

命令如下:

imp scott/tiger@orcl file=D:\backup\scott.dmp fromuser=scott touser=scott

在這個(gè)命令中:

  • 必須的參數(shù):userid(在這里是scott/tiger@orcl),file(在這里是D:\backup\scott.dmp
  • 可選的參數(shù):fromuser,touser,tables,full希望以上的解釋能幫助你理解EXP和IMP命令的工作方式。

使用導(dǎo)入工具imp時(shí)可能出現(xiàn)的問(wèn)題 :

(1) 數(shù)據(jù)庫(kù)對(duì)象已經(jīng)存在

一般情況, 導(dǎo)入數(shù)據(jù)前應(yīng)該徹底刪除目標(biāo)數(shù)據(jù)下的表, 序列, 函數(shù)/過(guò)程,觸發(fā)器等;

數(shù)據(jù)庫(kù)對(duì)象已經(jīng)存在, 按缺省的imp參數(shù), 則會(huì)導(dǎo)入失敗

如果用了參數(shù)ignore=y, 會(huì)把exp文件內(nèi)的數(shù)據(jù)內(nèi)容導(dǎo)入

如果表有唯一關(guān)鍵字的約束條件, 不合條件將不被導(dǎo)入

如果表沒(méi)有唯一關(guān)鍵字的約束條件, 將引起記錄重復(fù)

(2) 數(shù)據(jù)庫(kù)對(duì)象有主外鍵約束

不符合主外鍵約束時(shí), 數(shù)據(jù)會(huì)導(dǎo)入失敗

解決辦法: 先導(dǎo)入主表, 再導(dǎo)入依存表

disable目標(biāo)導(dǎo)入對(duì)象的主外鍵約束, 導(dǎo)入數(shù)據(jù)后, 再enable它們

(3) 權(quán)限不夠

如果要把A用戶的數(shù)據(jù)導(dǎo)入B用戶下, A用戶需要有imp_full_database權(quán)限

(4) 導(dǎo)入大表( 大于80M ) 時(shí), 存儲(chǔ)分配失敗

默認(rèn)的EXP時(shí), compress = Y, 也就是把所有的數(shù)據(jù)壓縮在一個(gè)數(shù)據(jù)塊上

導(dǎo)入時(shí), 如果不存在連續(xù)一個(gè)大數(shù)據(jù)塊, 則會(huì)導(dǎo)入失敗

導(dǎo)出80M以上的大表時(shí), 記得compress= N, 則不會(huì)引起這種錯(cuò)誤

(5) imp和exp使用的字符集不同

如果字符集不同, 導(dǎo)入會(huì)失敗, 可以注冊(cè)表里NLS_LANG相關(guān)信息

導(dǎo)入完成后再改回來(lái)

--查詢當(dāng)前系統(tǒng)所使用的字符集
select * from v$nls_parameters where parameter='NLS_CHARACTERSET';
--查詢所有有關(guān)字符集的參數(shù)
select * from v$nls_parameters; 

修改系統(tǒng)的字符集:

在oracle8之前,可以用直接修改數(shù)據(jù)字典表props$ 來(lái)改變數(shù)據(jù)庫(kù)的字符集,但oracle8之后,至少有三張系統(tǒng)表記錄了數(shù)據(jù)庫(kù)字符集的信息,只改props$表并不完全,可能引起嚴(yán)重的后果。正確的修改方法如下

若此時(shí)數(shù)據(jù)庫(kù)服務(wù)器已啟動(dòng),則先執(zhí)行SHUTDOWN IMMEDIATE命令關(guān)閉數(shù)據(jù)庫(kù)服務(wù)器,然后執(zhí)行以下命令:

SQL>STARTUP MOUNT;
SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION;
SQL>ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
SQL>ALTER SYSTEM SET AQ_TM_PROCESSES=0;
SQL>ALTER DATABASE OPEN;
SQL>ALTER DATABASE CHARACTER SET INTERNAL_USE ZHS16GBK; //跳過(guò)超子集檢測(cè)  AL32UTF8;
SQL>ALTER DATABASE national CHARACTER SET INTERNAL ZHS16GBK;AL32UTF8;

流程為:關(guān)庫(kù),啟動(dòng)數(shù)據(jù)庫(kù)到mount狀態(tài),進(jìn)入數(shù)據(jù)庫(kù)維護(hù)模式,此時(shí)只有system和sys用戶可登錄數(shù)據(jù)庫(kù)。關(guān)閉DBMS調(diào)度程序和DBMS調(diào)度任務(wù),關(guān)閉自動(dòng)任務(wù)啟動(dòng),跳過(guò)字符超子集檢查,設(shè)定系統(tǒng)字符集,關(guān)庫(kù),重新啟動(dòng)數(shù)據(jù)庫(kù)。

(6) imp和exp版本不能往上兼容

imp可以成功導(dǎo)入低版本exp生成的文件, 不能導(dǎo)入高版本exp生成的文件

根據(jù)情況我們可以用

exp和imp與數(shù)據(jù)泵expdp和impdp的區(qū)別:

1、exp和imp是客戶端工具程序,它們既可以在客戶端使用,也可以在服務(wù)端使用。exp在客戶端使用,要受到網(wǎng)速的影響,因此會(huì)比較慢。
2、expdp和impdp是服務(wù)端的工具程序,他們只能在Oracle服務(wù)端使用,不能在客戶端使用。
3、imp只適用于exp導(dǎo)出的文件,不適用于expdp導(dǎo)出文件;impdp只適用于expdp導(dǎo)出的文件,而不適用于exp導(dǎo)出文件。
4、對(duì)于10g以上的服務(wù)器,使用exp通常不能導(dǎo)出0行數(shù)據(jù)的空表,而此時(shí)必須使用expdp導(dǎo)出。
5、數(shù)據(jù)泵expdp和impdp導(dǎo)出可以使用parallel屬性指定并行任務(wù)導(dǎo)出,parallel=2就是并行2個(gè)任務(wù)導(dǎo)出。當(dāng)然,這個(gè)并不是越多越好,需要考慮服務(wù)器的性能和cpu的個(gè)數(shù)等等因素。還可以通過(guò)導(dǎo)出多個(gè)文件的方式提高性能,即使用dumpfile=expdp.dp1,expdp.dp2這種方式提高性能。需要用戶根據(jù)實(shí)際情況設(shè)置
6、exp導(dǎo)出時(shí)讀取的是sql,通過(guò)加載sql查詢結(jié)果到緩存,然后在寫進(jìn)目標(biāo)文件,而expdp是直接讀取的數(shù)據(jù)塊,直接從數(shù)據(jù)塊寫進(jìn)目標(biāo)文件。

總結(jié) 

到此這篇關(guān)于Oracle數(shù)據(jù)IMP和EXP命令用法詳解的文章就介紹到這了,更多相關(guān)Oracle IMP和EXP命令內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 基于ora2pg遷移Oracle19C到postgreSQL14的全過(guò)程

    基于ora2pg遷移Oracle19C到postgreSQL14的全過(guò)程

    ora2pg是一個(gè)開(kāi)源工具,可將Oracle數(shù)據(jù)庫(kù)模式轉(zhuǎn)換為PostgreSQL格式,支持導(dǎo)出數(shù)據(jù)庫(kù)絕大多數(shù)對(duì)象類型,本文就給大家介紹了基于ora2pg遷移Oracle19C到postgreSQL14的全過(guò)程,文中有詳細(xì)的代碼示例,需要的朋友可以參考下
    2023-11-11
  • 分享Oracle 11G Client 客戶端安裝步驟(圖文詳解)

    分享Oracle 11G Client 客戶端安裝步驟(圖文詳解)

    這篇文章主要介紹了分享Oracle 11G Client 客戶端安裝步驟(圖文詳解),非常具有實(shí)用價(jià)值,需要的朋友可以參考下。
    2016-12-12
  • oracle 數(shù)據(jù)庫(kù)隔離級(jí)別學(xué)習(xí)

    oracle 數(shù)據(jù)庫(kù)隔離級(jí)別學(xué)習(xí)

    這篇文章主要介紹了oracle數(shù)據(jù)庫(kù)的隔離級(jí)別相關(guān)的知識(shí),數(shù)據(jù)庫(kù)操作的隔離級(jí)別,有需要的朋友可以參考下
    2014-05-05
  • Oracle實(shí)現(xiàn)主鍵字段自增的四種方式

    Oracle實(shí)現(xiàn)主鍵字段自增的四種方式

    眾所周知MySQL數(shù)據(jù)庫(kù)的主鍵自增設(shè)置非常簡(jiǎn)單,任何一個(gè)常用的可視化工具都支持,只要打一下勾就可以開(kāi)啟主鍵自增了,然而Oracle并沒(méi)有那么簡(jiǎn)單,這篇文章主要給大家介紹了關(guān)于Oracle實(shí)現(xiàn)主鍵字段自增的四種方式,需要的朋友可以參考下
    2023-03-03
  • Oracle數(shù)據(jù)庫(kù)的系統(tǒng)結(jié)構(gòu)

    Oracle數(shù)據(jù)庫(kù)的系統(tǒng)結(jié)構(gòu)

    這篇文章主要介紹了Oracle數(shù)據(jù)庫(kù)的系統(tǒng)結(jié)構(gòu),Oracle數(shù)據(jù)庫(kù)的存儲(chǔ)結(jié)構(gòu)(Storage Structure)分為物理存儲(chǔ)結(jié)構(gòu)和邏輯存儲(chǔ)結(jié)構(gòu)兩種,分別描述了在操作系統(tǒng)中和數(shù)據(jù)庫(kù)系統(tǒng)內(nèi)部數(shù)據(jù)的組織管理方式,需要的朋友可以參考下
    2023-07-07
  • Oracle創(chuàng)建和管理分區(qū)索引的操作方法

    Oracle創(chuàng)建和管理分區(qū)索引的操作方法

    創(chuàng)建和管理分區(qū)索引(Partitioned Index)是數(shù)據(jù)庫(kù)管理中的重要任務(wù),特別是在處理大規(guī)模數(shù)據(jù)集時(shí),以下是如何在Oracle數(shù)據(jù)庫(kù)中創(chuàng)建和管理分區(qū)索引的詳細(xì)步驟和示例代碼,感興趣的朋友一起看看吧
    2024-08-08
  • oracle?指定類型和指定位數(shù)創(chuàng)建序列號(hào)的代碼詳解

    oracle?指定類型和指定位數(shù)創(chuàng)建序列號(hào)的代碼詳解

    這篇文章主要介紹了oracle?指定類型和指定位數(shù)創(chuàng)建序列號(hào),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-05-05
  • Oracle 12CR2查詢轉(zhuǎn)換教程之表擴(kuò)展詳解

    Oracle 12CR2查詢轉(zhuǎn)換教程之表擴(kuò)展詳解

    Oracle 12cR2版本已經(jīng)發(fā)布有一段時(shí)間,下面這篇文章主要給大家介紹了關(guān)于Oracle 12CR2查詢轉(zhuǎn)換教程之表擴(kuò)展的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-11-11
  • oracle數(shù)據(jù)庫(kù)id自增及生成uuid問(wèn)題

    oracle數(shù)據(jù)庫(kù)id自增及生成uuid問(wèn)題

    這篇文章主要介紹了oracle數(shù)據(jù)庫(kù)id自增及生成uuid問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • Oracle 數(shù)據(jù)庫(kù)優(yōu)化實(shí)戰(zhàn)心得總結(jié)

    Oracle 數(shù)據(jù)庫(kù)優(yōu)化實(shí)戰(zhàn)心得總結(jié)

    優(yōu)化sql語(yǔ)句、優(yōu)化io、表設(shè)計(jì)優(yōu)化、充分利用系統(tǒng)cpu資源、優(yōu)化數(shù)據(jù)庫(kù)連接、充分利用數(shù)據(jù)的后臺(tái)處理方案減少網(wǎng)絡(luò)流量,實(shí)施系統(tǒng)資源管理分配計(jì)劃等等,感興趣的朋友可以參考下哈
    2013-06-06

最新評(píng)論