Oracle可传输表空间实现跨平台移植
2007-05-12 12:26:50 来源:WEB开发网 exp tablespaces=users transport_tablespace=y file=exp_ts_users.dmp
exp_ts_users.dmp 文件只包含元数据(不是表空间 USERS 的内容)因此它将非常小。将文件 exp_ts_users.dmp 和 users_01.dbf 拷贝至主机 TGT1。如果使用 FTP,那么将需要指定二进制选项。
将表空间插入到数据库中。在操作系统命令提示符下执行下面的语句:
imp tablespaces=users transport_tablespace=y
file=exp_ts_users.dmp datafiles='users_01.dbf'
在第 4 步之后,目标数据库将有一个名称为 USERS 的表空间,并将提供该表空间的内容。请记住,系统 SRC1 和 TGT1 分别是 Linux 和 Windows。到 Oracle9i 为止,运行在 TGT1 上的数据库不能识别第 4 步中的数据文件 users_01.dbf,从而使得整个过程无用。您将必须求助其它一些方法(如常规的导出和导入、创建纯文本文件并通过 SQL*Loader 加载,或直接在不同的数据库间连接加载插入)。
在 10g 中,不再需要这些替代方法,因为目标数据库能够识别来自另一个平台的数据文件。在我们的示例中,源主机和目标主机运行的操作系统的字节顺序是相同的(低地址低字节序),因此不需要任何转换。
这个功能在数据仓库中特别有用,其中更小的面向对象的数据集市常常在刷新之后从仓库中进行填充。利用 10g,这些数据集市现在能够放在更小、更廉价的计算机(如运行 Linux 的 Intel boxes)中,而将数据仓库服务器放在更大的企业级计算机中。从本质上讲,利用可传输表空间,现在可以更好地利用各种硬件和操作系统的组合。
跨不同字节顺序的平台
如果平台是不同字节顺序的,那么将如何实现可传输性?正如我之前说明的,目标计算机的字节顺序如果与源计算机的字节顺序不同,那么将不能正确地读取数据文件,因而不可能简单地拷贝数据文件。但别灰心,在 Oracle 10g RMAN 实用程序中提供了帮助,它支持将数据文件从一种字节顺序向另一种字节顺序转换。
- ››oracle 中 UPDATE nowait 的使用方法
- ››Oracle ORA-12560解决方法
- ››Oracle 10g RAC 常用维护命令
- ››Oracle如何在ASM中定位文件的分布
- ››Oracle的DBMS_RANDOM.STRING 的用法
- ››oracle 外部表导入时间日期类型数据,多字段导入
- ››Oracle中查找重复记录
- ››oracle修改用户登录密码
- ››Oracle创建删除用户、角色、表空间、导入导出等命...
- ››Oracle中登陆时报ORA-28000: the account is lock...
- ››Oracle数据库在配置文件中更改最大连接数
- ››Oracle中在pl/sql developer修改表的两种方式
更多精彩
赞助商链接