PLSQL使用教程——(1)資料庫導入導出方法教程

2020-09-13 安布達爾

資料庫導入導出:

①:傳統方式——exp(導出)和(imp)導入:
②:數據泵方式——expdp導出和(impdp)導入;
③:第三方工具——PL/sql Develpoer;

一、什麼是資料庫導入導出?
oracle11g資料庫的導入/導出,就是我們通常所說的oracle數據的還原/備份。
資料庫導入:把.dmp 格式文件從本地導入到資料庫伺服器中(本地oracle測試資料庫中);
資料庫導出:把資料庫伺服器中的數據(本地oracle測試資料庫中的數據),導出到本地生成.dmp格式文件。
.dmp 格式文件:就是oracle數據的文件格式(比如視頻是.mp4 格式,音樂是.mp3 格式);

二、二者優缺點描述:
1.exp/imp:
優點:代碼書寫簡單易懂,從本地即可直接導入,不用在伺服器中操作,降低難度,減少伺服器上的操作也就 保證了伺服器上數據文件的安全性。
缺點:這種導入導出的速度相對較慢,合適資料庫數據較少的時候。如果文件超過幾個G,大眾性能的電 腦,至少需要4~5個小時左右。
2.expdp/impdp:
優點:導入導出速度相對較快,幾個G的數據文件一般在1~2小時左右。
缺點:代碼相對不易理解,要想實現導入導出的操作,必須在伺服器上創建邏輯目錄(不是真正的目錄)。我們 都知道資料庫伺服器的重要性,所以在上面的操作必須慎重。所以這種方式一般由專業的程序人員來完 成(不一定是DBA(資料庫管理員)來幹,中小公司可能沒有DBA)。
3.PL/sql Develpoer:
優點:封裝了導入導出命令,無需每次都手動輸入命令。方便快捷,提高效率。
缺點:長時間應用會對其產生依賴,降低對代碼執行原理的理解。

三、特別強調:
目標資料庫:數據即將導入的資料庫(一般是項目上正式資料庫);
源資料庫:數據導出的資料庫(一般是項目上的測試資料庫);
1.目標資料庫要與源資料庫有著名稱相同的表空間。
2.目標數據在進行導入時,用戶名儘量相同(這樣保證用戶的權限級別相同)。
3.目標資料庫每次在進行數據導入前,應做好數據備份,以防數據丟失。
4.使用數據泵時,一定要先在伺服器端建立可用的邏輯目錄,並檢查是否可用。
5.弄清是導入導出到相同版本還是不同版本(oracle10g版本與oracle11g版本)。
6.目標數據導入前,弄清楚是數據覆蓋(替換),還是僅插入新數據或替換部分數據表。
7.確定目標資料庫磁碟空間是否足夠容納新數據,是否需要擴充表空間。
8.導入導出時注意字符集是否相同,一般Oracle資料庫的字符集只有一個,並且固定,一般不改變。
9.導出格式介紹:
   Dmp格式:.dmp是二進位文件,可跨平臺,還能包含權限,效率好;
   Sql格式:.sql格式的文件,可用文本編輯器查看,通用性比較好,效率不如第一種,
適合小數據量導入導出。尤其注意的是表中不能有大欄位 (blob,clob,long),如果有,會報錯;
   Pde格式:.pde格式的文件,.pde為PL/SQL Developer自有的文件格式,只能用PL/SQL Developer工具
導入導出,不能用文本編輯器查看;
10.確定操作者的帳號權限。
四、二者的導入導出方法:
1、傳統方法:
通用命令:exp(imp) username/password@SERVICENAME:1521 file=&34; full = y;
資料庫導出舉例:

exp xinxiaoyong/123456@127.0.0.1:1521 file=&34; full = y;

exp:導出命令,導出時必寫。
imp:導入命令,導入時必寫,每次操作,二者只能選擇一個執行。
username:導出數據的用戶名,必寫;
password:導出數據的密碼,必寫;
@:地址符號,必寫;
SERVICENAME:Oracle的服務名,必寫;
1521:埠號,1521是默認的可以不寫,非默認要寫;
file=&34; : 文件存放路徑地址,必寫;
full=y :表示全庫導出。可以不寫,則默認為no,則只導出用戶下的對象;
方法細分:
1.完全導入導出:
exp(imp) username/password@SERVICENAME:1521 file=&34; full = y;
2.部分用戶表table導入導出:
exp(imp) username/password@SERVICENAME:1521 file=&34; tabels= (table1,table2,table3,...);
3.表空間tablespaces導入導出:
//一個資料庫實例可以有N個表空間(tablespace),一個表空間下可以有N張表(table)。
exp(imp) username/password@SERVICENAME:1521 file=&34; tablespaces= (tablespace1,tablespace2,tablespace3,...);
4.用戶名username對象導入導出:
exp(imp) username/password@SERVICENAME:1521 file=&34; owner(username1,username2,username3);
2、數據泵方法:
創建directory:
expdp(impdp) username/password@SERVICENAME:1521 schemas=username dumpfile=file1.dmp logfile=file1.log directory=testdata1 remap_schema=test:test;
資料庫導出舉例:
expdp xinxiaoyong/123456@127.0.0.1:1521 schemas=xinxiaoyong dumpfile=test.dmp
logfile=test.log directory=testdata1;
exp:導出命令,導出時必寫。
imp:導入命令,導入時必寫,每次操作,二者只能選擇一個執行。
username:導出數據的用戶名,必寫;
password:導出數據的密碼,必寫;
@:地址符號,必寫;
SERVICENAME:Oracle的服務名,必寫;
1521:埠號,1521是默認的可以不寫,非默認要寫;
schemas:導出操作的用戶名;
dumpfile:導出的文件;
logfile:導出的日誌文件,可以不寫;
directory:創建的文件夾名稱;
remap_schema=源資料庫用戶名:目標資料庫用戶名,二者不同時必寫,相同可以省略;
1.查看表空間:
select * from dba_tablespaces;
2.查看管理理員目錄(同時查看作業系統是否存在,因為Oracle並不關心該目錄是否存在,如果不存 在,則出錯)。
select * from dba_directories;
3.創建邏輯目錄,該命令不會在作業系統創建真正的目錄,最好以system等管理員創建。
create directory testdata1 as &39;;
4.給xinxiaoyong用戶賦予在指定目錄的操作權限,最好以system等管理員賦予。
//xinxiaoyong 是用戶名(123456是用戶密碼)
grant read,write on directory testdata1 to xinxiaoyong;
5.導出數據

1)按用戶導 expdp xinxiaoyong/123456@orcl schemas=xinxiaoyong dumpfile=expdp.dmp directory=testdata1;

2)並行進程parallel expdp xinxiaoyong/123456@orcl directory=testdata1 dumpfile=xinxiaoyong3.dmp parallel=40 job_name=xinxiaoyong3
3)按表名導 expdp xinxiaoyong/123456@orcl tables=emp,dept dumpfile=expdp.dmp directory=testdata1;
4)按查詢條件導 expdp xinxiaoyong/123456@orcl directory=testdata1 dumpfile=expdp.dmp tables=emp query=&39;;
5)按表空間導 expdp system/manager directory=testdata1 dumpfile=tablespace.dmp tablespaces=temp,example;
6)到整個資料庫 expdp system/manager directory=testdata1 dumpfile=full.dmp FULL=y;
6.還原數據
1)導到指定用戶下 impdp xinxiaoyong/123456 directory=testdata1 dumpfile=expdp.dmp schemas=xinxiaoyong;
2)改變表的owner impdp system/manager directory=testdata1 dumpfile=expdp.dmp tables=xinxiaoyong.dept remap_schema =xinxiaoyong:system;
3)導入表空間 impdp system/manager directory=testdata1 dumpfile=tablespace.dmp tablespaces=example;
4)導入資料庫 impdb system/manager directory=dump_dir dumpfile=full.dmp FULL=y;
5)追加數據 impdp system/manager directory=testdata1 dumpfile=expdp.dmp schemas=system table_exists_action;
3、PLSQL方法:
登錄plsql工具,所使用用戶為源資料庫有導出權限(exp_full_database,dba等)的用戶。
  1.導出建表語句(包括存儲結構)

  導出步驟tools ->export user object,選擇要導出的對象,導出.sql格式文件並等待導出完成,如 下圖:

導出數據文件 ;
   2.導出步驟tools ->export tables,選擇要導出的表及導出的格式進行導出。

   導出為dmp格式,如下圖:

導出為sql格式,如下圖:

導出為pde格式,如下圖:

提示說明:採用第三方工具導出導入整個資料庫的話,耗時較長,一定要有足夠 的時間來操作(數據量大的話需要好幾個小時)。

3.導入建表語句
   導入步驟tools->import tables->SQL Inserts 導入.sql文件
4.導入數據;
   tools->import talbes,然後再根據導出的數據格式選擇導入dmp文件,或者sql文件,
或者pde文件。
提示說明:導入之前最好把以前的表刪除,當然導入另外資料庫除外。
另外導入時當發現進度條一直卡在一個點,而且導出的文件不再增大時,甚至是提示程序
未響應,千萬不要以為程序卡死了,這個導入導出就是比較緩慢,只要沒有提示報錯,或者導入完成就不要停止程序。

相關焦點

  • oracle11g資料庫導入導出方法教程
    oracle11g資料庫導入導出:①:傳統方式——exp(導出)和(imp)導入:②:數據泵方式——expdp導出和(impdp)導入;③:第三方工具——PL/sql Develpoer;一、什麼是資料庫導入導出?
  • 這是一篇長篇入門級資料庫講解:oracle資料庫數據導入導出步驟
    oracle資料庫數據導入導出步驟(入門)說明:1.資料庫數據導入導出方法有多種,可以通過exp/imp命令導入導出,也可以用第三方工具導出,如:plsql2.如果熟悉命令3.在目標資料庫導入時需要創建與導出時相同的用戶名(儘量一致),並賦予不低於導出時用戶的權限;同時還需創建與原資料庫相同的表空間名,若本地資料庫已存在相同的表空間,則只能進行表空間擴充。
  • 網站搬家教程(網站更換空間教程)新手網站搬家詳細圖文教程
    為了讓更多人學習怎麼進行網站搬家,我今天做一個教程,供大家參考。本文所說的網站搬家教程,適合市面上99%的php+mysql結構的網站。操作步驟為:1、備份老網站的mysql資料庫文件。2、備份老網站的網頁文件(原始碼,圖片、視頻、pdf等附件文件)。3、把域名解析到新的空間。
  • 測試員必備:資料庫Oracle+PLSQL常見操作文檔整理!
    前言:本篇文章主要針對oracle資料庫進行介紹,包括和資料庫相關的概念及使用,比如常見存儲過程,plsql工具的使用及導入導出表、資料庫升級等操作,適合小白及有一定基礎的測試人員參考。導入導出dmp文件主要可以實現資料庫的備份與還原。
  • mysql資料庫導入和導出
    以下的文章主要介紹的是MySQL導入sql 文件,即MySQL資料庫導入導出sql 文件的實際操作步驟,我們主要是將其分成5大步驟對其進行講述。MySQL->SHOW TABLES; 顯示錶信息,有那些可用的表MySQL->DESCRIBE tablename; 顯示創建的表的信息三.從資料庫導出資料庫文件:1.將資料庫mydb導出到e:\MySQL\mydb.sql文件中:打開開始->運行->輸入cmd 進入命令行模式
  • 安裝oracle客戶端 和plsql 連接資料庫完整版教程
    二: 安裝plsql 軟體1下載地址https://www.allroundautomations.com/registered-plsqldev/如果安裝的資料庫客戶端是32 位那麼就選32 位的plsql ,64 位就選64位。
  • 《愛思助手》導入導出照片的方法介紹
    導入,導出照片也可以通過愛思助手操作,而且非常的簡單方便。那麼具體的操作方法是什麼樣的呢?下面小編就來為大家詳細介紹一下。使用愛思助手導入、導出照片的方法一、照片導出教程1、導出整個相簿:選擇需要導出的相簿點擊「導出」,在彈出窗口選擇保存位置點「確定」,之後照片將會被導出,你選擇保存的位置會生成一個以相簿名稱命名的文件夾,所有導出的照片都在裡面;2、根據需要導出照片:進入照片所在相簿,選擇需要導出的照片,點擊「導出」,在彈出窗口選擇保存位置點「確定」,之後照片將會被導出
  • iTools文件無法導入的兩種方法教程
    iTools文件無法導入的兩種方法教程 2012-06-29 14:31 | 作者:SORA | 來源:265G QQ群號:624022706 | 我要分享:
  • PLSQL使用教程——(1)基本使用教程
    一、登錄1、在這裡配置好資料庫服務,之後就可以登錄了>2、輸入用戶名和密碼,並選擇之前配置好的資料庫服務。(這個名字隨意起。)三、創建用戶1、在新建中找到用戶選項。(或者外鍵,這裡設置的是主鍵。還可以設置索引等)
  • WordPress博客的文章及圖片導出導入 網站遷移搬家
    由於博主喜歡更換虛擬主機,用測試網站速度然後進行對比,就會遇到一些關於網站文章及圖片怎麼遷移的問題,在網上也找了對應的WordPress博客搬家的教程,測試了確實可以達到文章和圖片導入到其他網站,下面分享一下文章圖片遷移的經驗。
  • 如何使用plsql工具創建oracle資料庫的定時器
    我們使用的資料庫大部分是oracle、mysql、db2、sql server等資料庫,在使用oracle最匹配的工具plsql,如何用plsql創建定時器呢?下面我簡單介紹使用工具創建定時器的方法。通過plsql查看tables、views等文件夾,找到定時器對應的DBMS_Jobs文件夾。在文件夾或者在已有的定時器上右鍵 new... 創建一個新的job(定時器)輸入紅色選中的必輸參數。What裡面是一些存儲過程,可以是一個或者多個。多個之間用分好;隔開,可以數據一下注釋說明,格式「/*存過說明*/。點擊應用即可保存。
  • 《蝦米音樂》歌單導出教程
    蝦米音樂官方正式宣布將關停,對於之前在蝦米音樂中創建了歌單得小夥伴們來說,現在可以將裡面存的歌單給進行導出了。下面小編也為大家帶來了蝦米音樂歌單導出至網易雲音樂/qq音樂的方法教程,希望對你有所幫助。 蝦米音樂官方正式宣布將關停,對於之前在蝦米音樂中創建了歌單得小夥伴們來說,現在可以將裡面存的歌單給進行導出了
  • 前端開發神器WebStorm使用教程:如何使用資料庫插件
    本文主要講解如何在WebStorm中獲得對資料庫工具和SQL的支持。前往慧都網免費下載最新試用版。您可能已經知道,其他JetBrains IDE(例如PhpStorm和IntelliJ IDEA Ultimate)具有對資料庫工具和SQL的內置支持。
  • Navicat導入Oracle資料庫腳本操作教程
    標籤:Oracle NavicatNavicat導入Oracle資料庫腳本操作教程,可在開發過程中充分利用Navicat工具,完成資料庫導入或遷移工作。1、將SPOOL、PROMPT語句注釋掉,使用文本替換在查詢詞前面加上「-- 」就可以了
  • 3DS掌機存檔修改教程,導出修改存檔,SaveDataFiler的使用教程
    今天的教程介紹的是3DS存檔如何導出,導入和SaveDataFiler工具的使用教程首先我們需要確定要修改的存檔編碼.下圖是沒有修改存檔之前的可選角色數現在開始備份存檔,打開桌面上的sacefl程序(全面叫SaveDataFiler,搜索即可查到).
  • PLSQL工具對oracle數據的備份還原
    日常開發過程中,經常會遇到需要備份和還原oracle資料庫的情況,plsql能夠幫助我們簡單地完成這項任務,本次以oracle11g32位版本為例。一、準備工作1、 安裝oracle32位服務端2、 安裝32位的plsql3、 配置tnsnames.ora文件,把連接本地的配置新增進去二、備份1、登陸需要備份的資料庫2、點擊「tools」,選擇「export tables」,選擇需要導出的路徑,默認以dmp格式保存,點擊「export」即可。
  • Premiere教程,pr使用06,導入靜態圖片時長控制
    小編以Adobe Premiere Pro CC 2018這個版本為例,為您講解使用方法,希望每一位看完的小夥伴,都可以開啟視頻剪輯之旅!~首先新建一個項目,請參看前文Premiere教程,pr使用01,第一次使用看完這篇就可以做視頻剪輯了
  • Oracle資料庫管理工具PLSQL安裝教程
    pl/sql developer是一個專門面向oracle的資料庫管理應用。本文介紹如何安裝plsql。01原程序安裝1、下載好安裝文件,我這裡有4個文件,分別是安裝程序 pl-sql-dev-8-setup中文包 chinese.exe和Chinese.lang註冊工具 pl-sql-dev-8-keygen
  • eeclipse使用教程 clipse導入項目圖文教程
    eeclipse使用教程 clipse導入項目圖文教程時間:2017-04-20 13:23   來源:川北在線整理   責任編輯:沫朵 川北在線核心提示:原標題:eeclipse使用教程 clipse導入項目圖文教程 eclipse導入項目圖文教程: 關於導入Eclipse原生項目 如果在項目源碼看到裡面有.calsspath
  • 教程:使用Picasa對照片進行導入導出
    數碼照片導入   首先要將數碼相片導入到電腦中,Picasa本身就支持導入數碼相片,默認導入是放在「圖片收藏」文件夾中,這個默認地址可以在選項裡修改。操作很簡單,在Picasa中點導入,再輸入文件夾名稱,點完成即可導入。