主要内容
1. exp/imp的原理及使用
2. 如何进行可传输表空间的操作,特别是进行跨平台表空间传输
3. expdp/impdp的原理及使用
4. 如何使用外部表
5. 如何进行可传输数据库的操作
1. exp/imp
exp/imp 原理: 它是一个位于客户端的程序(在DB Server及远程客户端都能操作) , 能跨平台进行导出导入操作,
普通的exp出来的dmp文件包括两部分内容,一部分是文件头,还有一部分是表和其它对象的定义,如果是表 ,则
还包括二进制的行数据(如果选择rows=y),这种格式与实际块中存储的行格式一致(可以通过特殊工具比如UltraEdit
查看到,如下,当然这些语句前面还有很多的二进制的字符)。
基本可以看出,就是将建立Objects的脚本导出,数据部分采用insert into的方式进行记录。
"
CREATE TABLE "PF_TEMP_EXCEL" ("COL1" VARCHAR2(36), "COL2" VARCHAR2(36), "COL3" VARCHAR2(36), "COL4" VARCHAR2(36)) PCTFREE 10 PCTUSED 0
INITRANS 1 MAXTRANS 255 STORAGE(INITIAL 65536 FREELISTS 1 FREELIST GROUPS 1) TABLESPACE "USERS" LOGGING NOCOMPRESS
INSERT INTO
"PF_TEMP_EXCEL" ("COL1", "COL2", "COL3", "COL4") VALUES (:1, :2, :3, :4)
exp/imp 是跨平台的数据迁移工具,因为它的导出是一种逻辑模式,而不是物理的,也就是说它是以建立物件脚本以及
SQL语句插入数据为存储格式的,而不是block为单位来复制的(Standby就是以Block为单位来进行备份的),所以和
平台没有关系。exp/imp可以作为数据备份的补充手段(逻辑备份)。
备注: Oracle10g或以后可以使用expdp/impdp, 但是exp/imp还是可以使用。后面会详细讲到expdp/impdp.
exp有四种模式:
A. 表模式
B.