欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Linux下Oracle传输表空间高手支招

程序员文章站 2022-05-15 16:17:50
...

Oracle经过长时间的发展,很多用户都很了解Oracle传输表空间了,这里我发表一下个人理解,和大家讨论讨论。有时候,可以使用

  Oracle经过长时间的发展,很多用户都很了解Oracle传输表空间了,这里我发表一下个人理解,和大家讨论讨论。有时候,可以使用exp将以传输表空间的方式将其导出,Oracle传输表空间是一种机制,用来把一个数据库上的格式数据文件附加到另一个数据库。需要注意:

  对于导出文件dmp来说,Oracle实现了跨平台的处理,即在任何一个可运行的平台上,都能使用imp将其导入,,但是对于表空间所包含的数据文件而言,各个平台上是不一样的,包含不能通过简单的复制来处理。数据文件不是独立于OS的。Oracle传输表空间移动数据速度非常快。

  使用前提:

  1.源和目标数据库使用相同的字符集。

  2.目标数据库不能有和源表空间相同的表空间

  3.源和目标数据库拥有相同的块大小

  4.必须传输自包含的对象集

  5.源和目标数据库运行的硬件平台必须相同

  这里以Linux下Oracle9.2.0.4为例,简要介绍一下使用:

  1. 创建表空间,并生成数据

  sqlplus "/ as sysdba" create tablespace hexiong datafile ?/hexiong.dbf size 1M; create user hexiong identified by hexiong default tablespace hexiong; grant connect, resource to hexiong; conn hexiong/hexiong create table t as select * from all_objects;

  2.检查一下表空间是否齐备:

  exec sys.dbms_tts.transport_set_check('hexiong', TRUE); PL/SQL procedure successfully completed. SQL> select * from sys.transport_set_violations; no rows selected

Linux下Oracle传输表空间高手支招