還原Oracle數據庫dmp文件(Win系統)

準備工做:sql

    一、覈對數據字符集:  oracle

        通常Oracle在安裝的時候默認是選擇ZHS16GBK,若有改動,使用 select userenv('language') from dual;語句查看使用的字符集,確保兩邊的字符集一致。app

     不一致的狀況下,在導入數據時,可能回到字段長度變長致使數據寫入失敗,甚至亂碼等狀況。ide

 

    二、建立表空間:工具

       建立表空間時,能夠根據須要導入的文件大小去建立spa

     方法1:直接給到導入數據量大小的表空間(個人將近60個G)日誌

     語法:create tablespace 表空間名 datafile '數據文件名' size 表空間大小cmd

     例子:create tablespace  ATMCS_01  datafile 'E:\APP\ADMINISTRATOR\ORADATA\ORCL\ATMCS_01.bdf' size 30000m;string

     補充說明:表空間大小是有上限的,每一個文件不大於32GB(精確的值爲32768M),因此當須要導入的數據大於最大表空間值時,咱們能夠利用語句:it

          alter tablespace ATMCS_01 add datafile 'E:\APP\ADMINISTRATOR\ORADATA\ORCL\ATMCS_02.bdf' size 30000m;進行追加表空間大小

          從上面語句不難發現,表空間明要求一致,文件名是不一樣名的,追加的大小根據自身需求定。若是還不夠,那就再加。

     方法2:自增加表空間

     語法:create tablespace 表空間名 datafile '數據文件名' size 初始大小  autoextend on next 每次擴展大小 maxsize unlimited

     例子:create tablespace ATMCS_01 datafile 'E:\APP\ADMINISTRATOR\ORADATA\ORCL\ATMCS_02.bdf'  size 200m  autoextend on next 10m  maxsize unlimited

     補充說明:從語句上看是最大不設限,其實仍是不大於32GB, 本人以前用自增加表空間發生過表空間不足,因此後來索性開到最大。

 

    三、建立用戶指定表空間:

      語法:create user 用戶名  identified by 密碼  default tablespace 表空間名;

      例子:create user TEST  identified by Admin123456 default tablespace ATMCS_01;

    

    4:用戶受權:

       語法: grant connect,resource,dba to 用戶名;

       例子:  grant connect,resource,dba to TEST  ;

開始導入:

    導入方法1:

      win+R 直接喚醒cmd 

      語法:imp  用戶名/密碼 @服務名  file=‘Dmp文件地址’ log=‘導入日誌存放地址’ full=y ignore=y

      例子:imp TEST/Admin123456@orcl file="D:\data\oracle\2020-11-27.dmp"  log="D:\data\oracle\test.log" full =y ignore=y;

    導入方法2:

      利用plsql ,Tools(工具)>Import tables(導入表)>選擇可執行文件>右下角選擇導入文件>點擊import(導入)

      選擇可執行文件時,可執行文件就在:安裝盤:\app\Administrator\product\11.2.0\dbhome_1\bin\imp.exe 中,個人

      就在D:\app\Administrator\product\11.2.0\dbhome_1\bin\imp.exe

     進入導入表時,按默認選擇便可,除非有本身特殊要求,好比再也不須要約束關係,取消勾選便可

    補充說明:兩種方法原理一致,plsql相對穩定一下,會去掉一些權限方面的問題,更多的狀況需各位本身去嘗試了。無論以上說得是否全都正確,記得回來評論,分享給本身在導入

     oracle數據時的心得或者問題。

導入結束:

    在導入過程,還會遇到各類問題,好比 IMP-00017: 因爲 ORACLE 錯誤 2153, IMP-00017: 因爲 ORACLE 錯誤 959...等等, 總之碰見什麼問題就解決什麼問題, 若是沒有問

               題,恭喜你了。

 

  

                                                                 記錄分析一些奇怪的知識。

相關文章
相關標籤/搜索