oracle資料庫匯入資料步驟

2021-10-24 12:06:24 字數 3812 閱讀 7082

我們在資料庫匯入資料時,常規步驟如下:

登入使用者system管理員

–【必須步驟:建立表空間】

–【非必須步驟:建立使用者】

create user esb_user identified by esb_user default tablespace test;

–【非必須步驟:建立角色】

create role esb_role;

–【非必須步驟:給角色授權】

grant esb_role to esb_user;

–【必須步驟:建立匯入目錄,建立之後需要把dmp的備份檔案放到該目錄下】

create directory dump_file_dir as 'd:\expdp1'

;

–【必須步驟:cmd執行】

–impdp 使用者名稱/密碼@資料庫 schemas=要匯入的a,要匯入的使用者b,要匯入的使用者c directory=dump_file_dir dumpfile=備份檔案.dmp logfile=匯入日誌_in.log;

impdp system/hissystem@hsp schemas=hsp,lis,esb_user   directory=dump_file_dir dumpfile=2020031901.dmp logfile=2020031901_in.log;
—給使用者名稱授dba的許可權

–grant connect,resource,dba to 使用者名稱;

grant connect,resource,dba to hsp_cp;
—授權(登入sys使用者授權)

grant select on sys.v_$session to hsp_cp;
方法描述

授予select any dictionary許可權(對所有字典表和檢視);

授予該使用者select on sys.v_ses

sion

許可權,並

使用有權

限使用者對

vsession許可權,並使用有許可權使用者對v

sessio

n許可權,

並使用有

許可權使用者

對vsession建立公共同義詞(如授予public select on sys.v_katex parse error: expected group after '_' at position 38: …select on sys.v_̲session許可權,並在該使用者下建立對sys.v_ses

sion

的私有同

義詞(對

該使用者,

也對該視

圖)。v

session的私有同義詞(對該使用者,也對該檢視)。v

sessio

n的私有

同義詞(

對該使用者

,也對該

檢視)。

vsession 是v_$session 的別名

–【必須步驟】

–資料庫匯入完之後需要在pl/sql中編譯無效物件

impdp hsp/test directory=lis_file_dir dumpfile=lis20200526.dmp logfile=lis20200526.dmp_in.log full=y table_exists_action=replace
好啦,以上所訴為常規導資料的操作,一般沒問題的,下面說說特殊情況!

1,當我們不需要某個庫的所以資料,只需要某個模組的資料時,這種我們需要匯入到自己的本地庫里。就有點小坑!

2,首先安裝常規操作,建立表空間,使用者,然後執行imp命令。

impdp system/123456@orcl schemas=hsp directory = dump_file_dir dumpfile =test.dmp logfile=export.log
cmd視窗報錯:sys_import_full_01作業方案無效,物件表無效之類的。

原因:大概就是使用者衝突或者許可權問題吧,情景不好還原了,使用了語句

impdp system/123456@orcl directory=dump_dir dumpfile=test.dmp logfile=export.log remap_schema=hsp:hsp  table_exists_action=replace transform=segment_attributes:n
報錯如下:

原因是沒給使用者表空間許可權和dba許可權

—給使用者名稱授dba的許可權

--grant connect,resource,dba to  使用者名稱;
最後優化一下imp命令:

impdp hsp/hsp@orcl directory=dump_dir dumpfile=test.dmp logfile=export.log remap_schema=hsp:hsp
成功如圖:

最後貼上幾個常用的語句:

–以system使用者登入,查詢需要刪除的使用者:

–查詢使用者

select  * from dba_users;
–查詢工作空間的路徑

select * from dba_data_files;
–刪除使用者

drop user hsp cascade;
–刪除表空間

drop tablespace hsp_blob including contents and datafiles cascade constraint;
–修改使用者密碼

alter user hsp identified  by hsp;
–查詢目錄位置

select * from dba_data_files ;
–查詢dba目錄

select * from dba_directories;
–刪除目錄

drop directory 目錄名稱;
例如:刪除使用者名稱成為lyk,表空間名稱為lyk

–刪除使用者,及級聯關係也刪除掉

drop user lyk cascade;
–刪除表空間,及對應的表空間檔案也刪除掉

drop tablespace hsp_cls including contents and datafiles cascade constraint;
–查詢表空間

select t.tablespace_name,

round

(sum

(bytes /

(1024

*1024))

,0) ts_size

from dba_tablespaces t, dba_data_files d

where t.tablespace_name = d.tablespace_name

group by t.tablespace_name;

oracle資料庫資料匯入匯出步驟(入門)

1.資料庫資料匯入匯出方法有多種,可以通過exp imp命令匯入匯出,也可以用第三方工具匯出,如 plsql 2.如果熟悉命令,建議用exp imp命令匯入匯出,避免第三方工具版本差異引起的問題,同時效率更高,但特別注意 採用命令時要注意所使用的使用者及其許可權等細節。3.在目標資料庫匯入時需要建立...

Oracle資料庫匯入

1 進入dos介面 2 f 3 cd f oracle product 10.2.0 db 1 bin 4 imp system manager hcdc 5 d 豐電二期 fdeq2010 12 13db 2010 12 13db.dmp 6 第乙個為no,之後全部為yes 7 設定環境變數ora...

資料批量匯入Oracle資料庫

表resultxt 3 行載入成功 由於資料錯誤,0 行沒有載入。由於所有 when 子句失敗,0 行沒有載入。由於所有欄位都為空的,0 行沒有載入。為結合陣列分配的空間 65016位元組 63行 除繫結陣列外的記憶體空間分配 0位元組 跳過的邏輯記錄總數 0 讀取的邏輯記錄總數 3 拒絕的邏輯記錄...