Heim  >  Artikel  >  Datenbank  >  备份Oracle 10g的库 在Oracle 9i中还原

备份Oracle 10g的库 在Oracle 9i中还原

WBOY
WBOYOriginal
2016-06-07 17:01:46868Durchsuche

要把同事机子上的一个库还原到自己的机子上,结果同事给的DMP文件没法用。突然想到人家的是Oracle 10G,咱还停留在Oracle 9I阶段

要把同事机子上的一个库还原到自己的机子上,结果同事给的DMP文件没法用。突然想到人家的是Oracle 10G,咱还停留在Oracle 9I阶段。用自己的9I客户端重新备份,结果EXP-00003错误。在网上查了一下是表中使用了BLOB字段造成的(貌似此字段要是没有存储数据的话也不影响),顺便找到找到了解决办法,使用后,,记录如下:

1.使用SYS用户登录Oracle 10g,执行如下SQL更新view

CREATE OR REPLACE VIEW exu9tne (

tsno, fileno, blockno, length) AS

SELECT ts#, segfile#, segblock#, length

FROM sys.uet$

WHERE ext# = 1

UNION ALL

SELECT * FROM SYS.EXU9TNEB

2.在装Oracle 9I的机器上EXP操作

3.在装Oracle 9I的机器上IMP操作

4.记得给Oracle 10G把视图改回来

CREATE OR REPLACE VIEW exu9tne (

tsno, fileno, blockno, length) AS

SELECT ts#, segfile#, segblock#, length

FROM sys.uet$

WHERE ext# = 1

linux

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn