Oracle表空间传输

Oracle表空间传输是8i 新增加的一种快速在数据库间移动数据的一种办法,是把一个数

据库上的格式数据文件附加到另外一个数据库中,而不是把数据导出成dmp 文件,这

在有些时候是非常管用的,因为传输表空间移动数据就象复制文件一样快。

1.关于传输表空间有一些规则(10g前):

· 源数据库和目标数据库必须运行在相同的硬件平台上。

[ Oracle备份与恢复总结] E-Mail / MSN : db.dw.dm@gmail.com

[ Oracle备份与恢复总结] E-Mail / MSN : db.dw.dm@gmail.com

9/84

· 源数据库与目标数据库必须使用相同的字符集。

· 源数据库与目标数据库一定要有相同大小的数据块

· 目标数据库不能有与迁移表空间同名的表空间

· SYS的对象不能迁移

· 必须传输自包含的对象集

· 有一些对象,如物化视图,基于函数的索引等不能被传输

(同字节序文件的跨平台可以用更换数据文件的文件头的方法)

(10g 支持跨平台的表空间传输,只要操作系统字节顺序相同,就可以进行表空间

传输。需要使用RMAN 转换文件格式,略)

2. 检测一个表空间是否符合传输标准的方法:

SQL > exec sys.dbms_tts.transport_set_check(‘tablespace_name’,true) ;

SQL > select * from sys.transport_set_violations;

如果没有行选择,表示该表空间只包含表数据,并且是自包含的。对于有些非自包

含的表空间,如数据表空间和索引表空间,可以一起传输。

3. 简要使用步骤:

如果想参考详细使用方法,也可以参考ORACLE DBA联机帮助。

1.设置表空间为只读(假定表空间名字为APP_Data 和APP_Index)

SQL > alter tablespace app_data read only;

SQL > alter tablespace app_index read only;

时间: 2024-12-03 05:25:38

Oracle表空间传输的相关文章

Oracle 表空间时点恢复(TSPITR)

表空间时点恢复,是Oracle在基于冷备,热备恢复以外的一种以表空间为粒度的,不完全恢复的形式来将表空间恢复到过去某个特定的时间点的一种恢复方式.它整合了RMAN以及DataPump这2个备份恢复工具来实现时点恢复.那它具体的过程和逻辑是怎样的?下文是其具体的描述. 一.什么是表空间时点恢复 Oracle表空间时点恢复有2个需要理解的概念. 恢复粒度   表空间级别,也就是说恢复的粒度是以表空间为单位 时点恢复   时点恢复意味着是一个不完全恢复.也就是说可以把某个或几个表空间恢复到过去的特定时

Oracle表空间名称是区分大小写

今天在通过imp导入数据时,日志提示TS_W5_D表空间不存在.感觉很奇怪,导入用户的表空间是ts_w5_d,并且这个表空间也存在啊. 为什么还是提报表空间不存在呢? 并且,当时试图通过>drop tablespace ts_w5_d 时,提示ts_w5_d 表空间不存在,明明有啊,怎么说不存在? 排查了半天,最终得知,oracle表空间名称分大小写的:TS_W5_D.ts_w5_d 是两个表不同的表空间. Oracle数据库内部是对大小写不敏感的,默认全是大写.如果需要小写需要使用双引号强制(

数据库-oracle表空间修改后导出,然后导入修改好的表空间,导入失败,显示导入的表空间还是不存在!

问题描述 oracle表空间修改后导出,然后导入修改好的表空间,导入失败,显示导入的表空间还是不存在! 我原先的数据库的表空间是XMGL,然后我修改了一张表,将其表空间修改为了 WGP,然后导出,然后通过一台服务器,这台服务器的表空间就是 WGP,然后导入就报错 报错说是 XMGL不存在,问题是我原先导出前已经修改了表空间,导出还是原先的表空间,求解,数据库我也重启了,还是不行,求大神! 解决方案 参考Import: Tablespace does not exist tips 你的表里面有CL

Oracle 表空间与数据文件

--============================== --Oracle 表空间与数据文件 --============================== /* 一.概念     表空间:是一个或多个数据文件的逻辑集合     表空间逻辑存储对象:永久段-->如表与索引                         临时段-->如临时表数据与排序段                      回滚段-->用于事物回滚或闪回内存的撤销数据     表空间分类:系统表空间(sys

Oracle 表空间查询与操作方法_oracle

一.查询篇 1.查询oracle表空间的使用情况 select b.file_id 文件ID, b.tablespace_name 表空间, b.file_name 物理文件名, b.bytes 总字节数, (b.bytes-sum(nvl(a.bytes,0))) 已使用, sum(nvl(a.bytes,0)) 剩余, sum(nvl(a.bytes,0))/(b.bytes)*100 剩余百分比 from dba_free_space a,dba_data_files b where a.

六分钟学会创建Oracle表空间的实现步骤_oracle

经过长时间学习创建Oracle表空间,于是和大家分享一下,看完本文你肯定有不少收获,希望本文能教会你更多东西. 1.先查询空闲空间 复制代码 代码如下: select tablespace_name,file_id,block_id,bytes,blocks from dba_free_space; 2.增加Oracle表空间 先查询数据文件名称.大小和路径的信息,语句如下: 复制代码 代码如下: select tablespace_name,file_id,bytes,file_name fr

Oracle表空间查看sql使用情况_oracle

DBA在日常工作中,最重要的一点就是查看表空间的使用情况,去了解是否有表空间满了的情况出现. 具体方法和步骤如下所示: 第一步:打开PLSQL 第二步:新建一个SQL窗口 第三步:输入代码: select a.tablespace_name tablespace_name ,nvl(ceil((1 - b.free / a.total) * 100), 100) "usage_of_tablespace%" ,nvl(b.free, 0) "left_space(M)&quo

10g新特性之-跨平台表空间传输

1.准备工作:  查询源数据库平台信息 SQL> col platform_name for a40 SQL> SELECT d.PLATFORM_NAME, ENDIAN_FORMAT  2 FROM V$TRANSPORTABLE_PLATFORM tp, V$DATABASE d  3 WHERE tp.PLATFORM_NAME = d.PLATFORM_NAME; PLATFORM_NAME ENDIAN_FORMAT  -------------------------------

Oracle表空间容量的计算

-- 数据表空间容量使用情况 SELECT a.tablespace_name as "表空间名称", to_char(b.total/1024/1024,999999.99)||'M'  as "总容量", to_char((b.total-a.free)/1024/1024,'9999990D99')||'M'  as "已使用容量", to_char(a.free/1024/1024,'9999990D99')||'M' as "