oracle 10g的dmp如何匯入9i

2021-12-30 12:58:17 字數 2409 閱讀 4614

oracle 10g的dmp如何匯入9i

問題描述:如何將oracle 10g中的資料庫物件遷移到9i中.這個10g和9i的伺服器分別搭建在區域網的兩個機器上,可以相互訪問.

問題分析:在網上查了一些資料,表明要想將10g匯出的dmp檔案匯入到9i中,是不可實現的.只能實現9i往10g中導.如果想要把10g中的資料匯入到9i中,可以先到9i那台伺服器上配置乙個tnsnames.ora串,用於訪問10g資料庫,之後在9i伺服器中用9i客戶端提供的exp命令實現匯出,再用imp命令實現匯入.

10g匯出的dmp往9i中匯入,可能會報以下錯誤.

在安裝有9i客戶端執行匯入命令時會報:

sql**  

import started on 2013-3-13 14:17:13  

e:\oracle\ora92\bin\imp.exe log=c:\docume~1\wangzh\locals~1\temp\plsimp.log file=d:\yusj\d**z\d**z20130308.dmp userid=d**z/d**z@orcl buffer=30720 commit=no full=yes grants=yes ignore=yes indexes=yes rows=yes show=no constraints=yes  

連線到: oracle9i enterprise edition release 9.2.0.1.0 - production  

with the partitioning, olap and oracle data mining options  

jserver release 9.2.0.1.0 - production  

imp-00010: 不是有效的匯出檔案,標題驗證失敗  

imp-00000: 未成功終止匯入  

import finished on 2013-3-13 14:17:13  

在安裝有10g客戶端執行匯入命令時會報:

sql**  

import started on 2013-3-13 上午 11:13:02  

d:\oracle\product\10.2.0\db_1\bin\imp.exe log=c:\docume~1\admini~1\locals~1\temp\plsimp.log file=c:\d**z20130308.dmp userid=d**z/d**z@orcl_232 buffer=30720 commit=no full=yes grants=yes ignore=yes indexes=yes rows=yes show=no constraints=yes  

imp-00058: 遇到 oracle 錯誤 6550  

ora-06550: 第 1 行, 第 33 列:   

pls-00302: 必須說明 'set_no_outlines' 元件  

ora-06550: 第 1 行, 第 7 列:   

pl/sql: statement ignored  

imp-00000: 未成功終止匯入  

import finished on 2013-3-13 上午 11:13:03  

問題解決:

1. 在安裝有9i客戶端的機器中配置tnsnames.ora,保證可以正常連線到10g資料庫.

2. 在安裝有9i客戶端的機器中執行exp命令匯出dmp檔案之前,需要解決乙個問題,那就是對blob的支援,如果要匯出的表中含有blob欄位,那麼在執行exp命令的時候會報exp-00003錯誤,解決方法如下:需要先連線到10資料庫,用sys使用者登入,找到exu9tne檢視(view),備份出來.再把執行下面sql語句:

sql**  

create or replace view sys.exu9tne  

(tsno, fileno, blockno, length)  

as  

select ts#, segfile#, segblock#, length  

from sys.uet$  

where ext# = 1  

union all  

select "tsno","fileno","blockno","length" from sys.exu9tneb;  

注意,在匯出完資料之後,乙個要把這個view恢復到初始值. 

我本地的初始值為:

sql**  

create or replace view sys.exu9tne  

(tsno, fileno, blockno, length)  

as  

select  ts#, segfile#, segblock#, length  

from    sys.uet$  

where   ext# = 1;  

3. 在安裝有9i客戶端的機器中執行imp命令,完成匯入操作(注意在匯入之前一定要先建立相應的表空間,使用者等).

oracle 10g 恢復dmp檔案。

1.在winxp下,安裝10g,預設選擇,一路ok。安裝前自檢出現dhcp警告,可直接忽略 2.命令列,在xp下,輸入sqlplus,即可啟動,登陸用 sqlplus as sysdba 用管理員登陸 3.在恢復oracle時,先在 sqlplus裡,先建立表空間,建使用者,並給使用者授權,並解鎖。...

Oracle 10g 匯入匯出dmp檔案

oracle資料匯入dmp檔案可以是 某個使用者下的資料庫 也可以是 某張表 這裡以匯入資料庫為例說明 方法1 使用客戶端enterprise manager console 用sys使用者名稱,以dba的身份在ie中登入到資料庫 oracle客戶端enterprise manager consol...

如何完全解除安裝Oracle 10g

解除安裝oracle 10g資料庫的過程不想解除安裝一般應用軟體那麼簡單,如果疏忽了一些步驟,就會在系統中留有安裝oracle資料庫的痕跡,從而占用系統資源或者影響系統的執行。可以按照如下步驟完全解除安裝oracle 10g資料庫。1 如果資料庫配置了自動儲存管理 asm 應該先刪除聚集同步服務cs...