oracle物件的表空間遷移

2021-09-30 14:58:32 字數 1473 閱讀 5284

imp資料的時候,由於表空間的匯入匯出表空間的不同,匯入資料到了system表空間,因此需要move到user表空間,具體過程如下

1,確定需要move的物件

select owner,segment_name,tablespace_name,segment_type from dba_segments where owner='user' order by segment_type desc;

有table、index和lob segment

2,move table

3,move index

--for index

alter index user.pk_mail_confirm rebuild tablespace user;

...4,move lob

--fro lob

select a.owner,a.table_name,a.column_name,b.segment_name,b.tablespace_name,index_name,b.bytes

from dba_lobs a,dba_segments b

where a.segment_name=b.segment_name

and a.segment_name = b.segment_name

and b.owner='user';

alter table user.resume move lob(intro) store as( tablespace user);

。。。5,-編譯無效物件

set heading off

set pagesize 1000

set linesize 200

set verify off

set echo off

select

decode( object_type, 'package body',

'alter package ' || owner||'.'||object_name || ' compile body;',

'alter ' || object_type || ' ' || owner||'.'||object_name || ' compile;' )

from

dba_objects

where

status = 'invalid' and

object_type in ( 'package body', 'package', 'function', 'procedure',

'trigger', 'view' )

order by

object_type,

object_name;

alter procedure user.sp_temp_rescore_batch_resume compile;

oracle遷移表空間

可遷移表空間 使用可遷移表空間 transportable tablespaces 的特性在資料庫之間移動大量資料,效能比export import和unload load要快很多,因為它遷移表空間只需要複製資料檔案和插入表空間元資料到目標資料庫中。遷移表空間對以下應用特別有用 分階段將oltp的資...

Oracle表空間遷移

源伺服器環境 dell r710 red hat linux 5.4 x64 目標伺服器環境 辦公室台式計算機 windows2008 32位 資料庫都是oracle 11.2.0.1 下面是測試全過程 並不是所有的平台都可以相互遷移的。檢視平台列表命令如下 select from v transp...

Oracle表空間遷移

1 查詢當前資料庫的表空間情況 根據下面的 查詢出當前資料庫的表空間名稱,以及路徑等相關資訊,找到要遷移的表空間。select a.tablespace name,a.file id,a.file name,round a.bytes 1024 1024 0 total space from dba...