数据导出:
1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中
exp system/manager@TEST file=d:\daochu.dmp full=y
2 将数据库中system用户与sys用户的表导出
exp system/manager@TEST file=d:\daochu.dmp owner=(system,sys)
3 将数据库中的表table1 、table2导出
exp system/manager@TEST file=d:\daochu.dmp tables=(table1,table2)
4 将数据库中的表table1中的字段filed1以"00"打头的数据导出
exp system/manager@TEST file=d:\daochu.dmp tables=(table1)query=\" where filed1 like '00%'\"
上面是常用的导出,对于压缩我不太在意,用winzip把dmp文件可以很好的压缩。
不过在上面命令后面 加上 compress=y 就可以了
数据的导入
1 将D:\daochu.dmp 中的数据导入 TEST数据库中。
imp system/manager@TEST file=d:\daochu.dmp
上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。
在后面加上 ignore=y 就可以了。
2 将d:\daochu.dmp中的表table1 导入
imp system/manager@TEST file=d:\daochu.dmp tables=(table1)
基本上上面的导入导出够用了。不少情况我是将表彻底删除,然后导入。
注意:
你要有足够的权限,权限不够它会提示你。
数据库时可以连上的。可以用tnsping TEST 来获得数据库TEST能否连上
附录一:
给用户增加导入数据权限的操作
第一,启动sql*puls
第二,以system/manager登陆
第三,create user 用户名 IDENTIFIED BY 密码 (如果已经创建过用户,这步可以省略)
第四,GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,
DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,
DBA,CONNECT,RESOURCE,CREATE SESSION TO 用户名字
第五, 运行-cmd-进入dmp文件所在的目录,
imp userid=system/manager full=y file=*.dmp
或者 imp userid=system/manager full=y file=filename.dmp
增量导出包括三个类型:
(1)“完全”增量导出(Complete)
即备份整个数据库,比如:
$exp system/manager inctype=complete file=990702.dmp
(2) “增量型”增量导出
备份上一次备份后改变的数据。比如:
$exp system/manager inctype=incremental file=990702.dmp
(3) “累计型”增量导出(Cumulative)
累计型导出方式只是导出自上次“完全” 导出之后数据库中变化了的信息。比如:
$exp system/manager inctype=cumulative file=990702.dmp
数据库管理员可以排定一个备份日程表,用数据导出的三个不同方式合理高效地完成。
比如数据库的备份任务可作如下安排:
星期一:完全导出(A)
星期二:增量导出(B)
星期三:增量导出(C)
星期四:增量导出(D)
星期五:累计导出(E)
星期六:增量导出(F)
星期日:增量导出(G)
如果在星期日,数据库遭到意外破坏,数据库管理员可按以下步骤来恢复数据库:
第一步:用命令CREATE DATABASE重新生成数据库结构;
第二步:创建一个足够大的附加回段。
第三步:完全增量导入A:
$imp system./manager inctype= RECTORE FULL=Y FILE=A
第四步:累计增量导入E:
$imp system/manager inctype= RECTORE FULL=Y FILE =E
第五步:最近增量导入G:
$imp system/manager inctype=RESTORE FULL=Y FILE=G
但是 数据库的增量备份意义没想象中那么大,因为增量备份最小的差异单元是表,也就是说只要一个表的数据有变动,那么这个表就要被全表导出。
后来我做了一个试验,证明他的观点是错误的
首先在数据库的suk用户下建立a、b两个表,并分别插入2、3条数据,执行导出:
C:>exp system/space6212 file='d:tempincri_com.dmp' inctype=complete log='d:
empincri_com.log' full=y
Export: Release 9.2.0.1.0 - Production on 星期五 3月 24 15:14:10 2006
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
连接到: Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 - Production
EXP-00041: INCTYPE 参数已废弃
今天遇到一个需求,需要对两个数据库做数据同步,由于两个数据分别处于内网和外网,无法直接连通。由于数据量较大,同事建议用EXP做增量备份。我的观点是EXP的增量备份没有意义,因为增量备份最小的差异单元是表,也就是说只要一个表的数据有变动,那么这个表就要被全表导出。同事的观点是EXP的增量是只导出新增的数据行,并说以前做过测试验证过。
目前我们的数据库版本是9204。
后来我做了一个试验,证明他的观点是错误的
首先在数据库的suk用户下建立a、b两个表,并分别插入2、3条数据,执行导出:
C:>exp system/space6212 file='d:tempincri_com.dmp' inctype=complete log='d:
empincri_com.log' full=y
Export: Release 9.2.0.1.0 - Production on 星期五 3月 24 15:14:10 2006
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
连接到: Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 - Production
EXP-00041: INCTYPE 参数已废弃
已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集
即将导出整个数据库...
. 正在导出表空间定义
. 正在导出配置文件
. 正在导出用户定义
. 正在导出角色
. 正在导出资源成本
. 正在导出回退段定义
. 正在导出数据库链接
. 正在导出序号
. 正在导出目录别名
. 正在导出上下文名空间
. 正在导出外部函数库名称
. 正在导出对象类型定义
. 正在导出系统过程对象和操作
. 正在导出 pre-schema 过程对象和操作
. 正在导出群集定义
. 即将导出 SYSTEM 的表通过常规路径 ...
. . 正在导出表 AQ$_INTERNET_AGENTS 0 行被导出
. . 正在导出表 AQ$_INTERNET_AGENT_PRIVS 0 行被导出
. . 正在导出表 DEF$_AQCALL 0 行被导出
. . 正在导出表 DEF$_AQERROR 0 行被导出
. . 正在导出表 DEF$_CALLDEST 0 行被导出
. . 正在导出表 DEF$_DEFAULTDEST 0 行被导出
. . 正在导出表 DEF$_DESTINATION 0 行被导出
. . 正在导出表 DEF$_ERROR 0 行被导出
. . 正在导出表 DEF$_LOB 0 行被导出
. . 正在导出表 DEF$_ORIGIN 0 行被导出
. . 正在导出表 DEF$_PROPAGATOR 0 行被导出
. . 正在导出表 DEF$_PUSHED_TRANSACTIONS 0 行被导出
. . 正在导出表 DEF$_TEMP$LOB 0 行被导出
. . 正在导出表 HELP 918 行被导出
. . 正在导出表 LOGSTDBY$APPLY_MILESTONE 0 行被导出
. . 正在导出表 LOGSTDBY$APPLY_PROGRESS
. . 正在导出分区 P0 0 行被导出
. . 正在导出表 LOGSTDBY$EVENTS 0 行被导出
. . 正在导出表 LOGSTDBY$PARAMETERS 0 行被导出
. . 正在导出表 LOGSTDBY$PLSQL 0 行被导出
. . 正在导出表 LOGSTDBY$SCN 0 行被导出
. . 正在导出表 LOGSTDBY$SKIP 0 行被导出
. . 正在导出表 LOGSTDBY$SKIP_TRANSACTION 0 行被导出
. . 正在导出表 REPCAT$_AUDIT_ATTRIBUTE 2 行被导出
. . 正在导出表 REPCAT$_AUDIT_COLUMN 0 行被导出
. . 正在导出表 REPCAT$_COLUMN_GROUP 0 行被导出
. . 正在导出表 REPCAT$_CONFLICT 0 行被导出
. . 正在导出表 REPCAT$_DDL 0 行被导出
. . 正在导出表 REPCAT$_EXCEPTIONS 0 行被导出
. . 正在导出表 REPCAT$_EXTENSION 0 行被导出
. . 正在导出表 REPCAT$_FLAVORS 0 行被导出
. . 正在导出表 REPCAT$_FLAVOR_OBJECTS 0 行被导出
. . 正在导出表 REPCAT$_GENERATED 0 行被导出
. . 正在导出表 REPCAT$_GROUPED_COLUMN 0 行被导出
. . 正在导出表 REPCAT$_INSTANTIATION_DDL 0 行被导出
. . 正在导出表 REPCAT$_KEY_COLUMNS 0 行被导出
. . 正在导出表 REPCAT$_OBJECT_PARMS 0 行被导出
. . 正在导出表 REPCAT$_OBJECT_TYPES 28 行被导出
. . 正在导出表 REPCAT$_PARAMETER_COLUMN 0 行被导出
. . 正在导出表 REPCAT$_PRIORITY 0 行被导出
. . 正在导出表 REPCAT$_PRIORITY_GROUP 0 行被导出
. . 正在导出表 REPCAT$_REFRESH_TEMPLATES 0 行被导出
. . 正在导出表 REPCAT$_REPCAT 0 行被导出
. . 正在导出表 REPCAT$_REPCATLOG 0 行被导出
. . 正在导出表 REPCAT$_REPCOLUMN 0 行被导出
. . 正在导出表 REPCAT$_REPGROUP_PRIVS 0 行被导出
. . 正在导出表 REPCAT$_REPOBJECT 0 行被导出
. . 正在导出表 REPCAT$_REPPROP 0 行被导出
. . 正在导出表 REPCAT$_REPSCHEMA 0 行被导出
. . 正在导出表 REPCAT$_RESOLUTION 0 行被导出
. . 正在导出表 REPCAT$_RESOLUTION_METHOD 19 行被导出
. . 正在导出表 REPCAT$_RESOLUTION_STATISTICS 0 行被导出
. . 正在导出表 REPCAT$_RESOL_STATS_CONTROL 0 行被导出
. . 正在导出表 REPCAT$_RUNTIME_PARMS 0 行被导出
. . 正在导出表 REPCAT$_SITES_NEW 0 行被导出
. . 正在导出表 REPCAT$_SITE_OBJECTS 0 行被导出
. . 正在导出表 REPCAT$_SNAPGROUP 0 行被导出
. . 正在导出表 REPCAT$_TEMPLATE_OBJECTS 0 行被导出
. . 正在导出表 REPCAT$_TEMPLATE_PARMS 0 行被导出
. . 正在导出表 REPCAT$_TEMPLATE_REFGROUPS 0 行被导出
. . 正在导出表 REPCAT$_TEMPLATE_SITES 0 行被导出
. . 正在导出表 REPCAT$_TEMPLATE_STATUS 3 行被导出
. . 正在导出表 REPCAT$_TEMPLATE_TARGETS 0 行被导出
. . 正在导出表 REPCAT$_TEMPLATE_TYPES 2 行被导出
. . 正在导出表 REPCAT$_USER_AUTHORIZATIONS 0 行被导出
. . 正在导出表 REPCAT$_USER_PARM_VALUES 0 行被导出
. . 正在导出表 SQLPLUS_PRODUCT_PROFILE 0 行被导出
. 即将导出 OUTLN 的表通过常规路径 ...
. . 正在导出表 OL$ 0 行被导出
. . 正在导出表 OL$HINTS 0 行被导出
. . 正在导出表 OL$NODES 0 行被导出
. 即将导出 DBSNMP 的表通过常规路径 ...
. 即将导出 WMSYS 的表通过常规路径 ...
. . 正在导出表 WM$ADT_FUNC_TABLE 0 行被导出
. . 正在导出表 WM$ENV_VARS 1 行被导出
. . 正在导出表 WM$INSTEADOF_TRIGS_TABLE 0 行被导出
. . 正在导出表 WM$LOCKROWS_INFO 0 行被导出
. . 正在导出表 WM$MODIFIED_TABLES 0 行被导出
. . 正在导出表 WM$MW_TABLE
. . 正在导出表 WM$NESTED_COLUMNS_TABLE 0 行被导出
. . 正在导出表 WM$NEXTVER_TABLE 0 行被导出
. . 正在导出表 WM$REPLICATION_TABLE 0 行被导出
. . 正在导出表 WM$RESOLVE_WORKSPACES_TABLE 0 行被导出
. . 正在导出表 WM$RIC_TABLE 0 行被导出
. . 正在导出表 WM$RIC_TRIGGERS_TABLE 0 行被导出
. . 正在导出表 WM$TMP_DBA_CONSTRAINTS 0 行被导出
. . 正在导出表 WM$UDTRIG_DISPATCH_PROCS 0 行被导出
. . 正在导出表 WM$UDTRIG_INFO 0 行被导出
. . 正在导出表 WM$VERSIONED_TABLES 0 行被导出
. . 正在导出表 WM$VERSIONED_TABLES_UNDO_CODE 0 行被导出
. . 正在导出表 WM$VERSION_HIERARCHY_TABLE 1 行被导出
. . 正在导出表 WM$VERSION_TABLE 0 行被导出
. . 正在导出表 WM$VT_ERRORS_TABLE 0 行被导出
. . 正在导出表 WM$WORKSPACES_TABLE 1 行被导出
. . 正在导出表 WM$WORKSPACE_PRIV_TABLE 8 行被导出
. . 正在导出表 WM$WORKSPACE_SAVEPOINTS_TABLE 0 行被导出
. 即将导出 SUK 的表通过常规路径 ...
. . 正在导出表 A 3 行被导出
. . 正在导出表 B 2 行被导出
. 正在导出同义词
. 正在导出视图
. 正在导出引用完整性约束条件
. 正在导出存储的过程
. 正在导出运算符
. 正在导出索引类型
. 正在导出位图, 功能性索引和可扩展索引
. 正在导出后期表活动
. 正在导出触发器
. 正在导出实体化视图
. 正在导出快照日志
. 正在导出作业队列
. 正在导出刷新组和子组
. 正在导出维
. 正在导出 post-schema 过程对象和操作
. 正在导出用户历史记录表
. 正在导出默认值和系统审计选项
. 正在导出统计
导出成功终止,但出现警告。
然后在a表再插入一条数据,提交,增量导出:
C:>exp system/space6212 file='d:tempincri_incremental.dmp' inctype=incremen
l log='d:tempincri_incremental.log' full=y
Export: Release 9.2.0.1.0 - Production on 星期五 3月 24 15:15:57 2006
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
连接到: Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 - Production
EXP-00041: INCTYPE 参数已废弃
已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集
即将导出整个数据库...
. 正在导出表空间定义
. 正在导出配置文件
. 正在导出用户定义
. 正在导出角色
. 正在导出资源成本
. 正在导出回退段定义
. 正在导出数据库链接
. 正在导出序号
. 正在导出目录别名
. 正在导出上下文名空间
. 正在导出外部函数库名称
. 正在导出对象类型定义
. 正在导出系统过程对象和操作
. 正在导出 pre-schema 过程对象和操作
. 正在导出群集定义
. 即将导出 SYSTEM 的表通过常规路径 ...
. 即将导出 OUTLN 的表通过常规路径 ...
. 即将导出 DBSNMP 的表通过常规路径 ...
. 即将导出 WMSYS 的表通过常规路径 ...
. 即将导出 SUK 的表通过常规路径 ...
. . 正在导出表 A 4 行被导出. 正在导出同义词
. 正在导出视图
. 正在导出引用完整性约束条件
. 正在导出存储的过程
. 正在导出运算符
. 正在导出索引类型
. 正在导出位图, 功能性索引和可扩展索引
. 正在导出后期表活动
. 正在导出触发器
. 正在导出实体化视图
. 正在导出快照日志
. 正在导出作业队列
. 正在导出刷新组和子组
. 正在导出维
. 正在导出 post-schema 过程对象和操作
. 正在导出用户历史记录表
. 正在导出默认值和系统审计选项
. 正在导出有关删除对象的信息
. 正在导出统计
导出成功终止,但出现警告。