ホームページ >データベース >mysql チュートリアル > oracle下逻辑的导入导出工具exp/imp
oracle下逻辑的导入导出工具exp/impexp/imp简介:exp/imp是oracle幸存的最古老的两个命令行备份工具,在小型数据库的转储、表空间的迁移、表的抽
oracle下逻辑的导入导出工具exp/imp
exp/imp简介:
exp/imp是oracle幸存的最古老的两个命令行备份工具 ,在小型数据库的转储、表空间的迁移、表的抽取、检测逻辑和物理冲突中使用非常广泛,我们可以把它作为小型数据库的物理备份后的一个逻辑备份。它可以跨平台、跨版本。
exp/imp的工作原理:
exp用户进程通过服务器进程连接到数据库,开启shadow进程,同时执行select语句查询数据库中的数据,通过buffer cache并通过SQL语句处理层再转移出exp导出文件,即exp进程需要占用服务器上的SGA和PGA资源。
imp读取exp导出的.dmp文件,虚拟主机,构造DDL语句,插入创建表与其他对象以及添加数据的语句
exp的导出数据的方式:
1、全库导出(这种方式一般不用)
2、按用户导出
3、按表导出
exp常用参数简介:exp help=y
3、按表导出
4、在导出是,只导出表结构不导出数据
exp工具的缺点:
速度慢,由于exp连接到数据库需要先select要导出的数据,再通过SGA、PGA传输给exp。
如果此连接断开,网站空间,则exp需从头开始导出,没有断点续传的功能
消耗服务端资源,只能服务端业务的前提下使用
imp 常用参数:imp help=y
导入数据,将导出的数据导入到windows平台的oracle 11g 64位中
使用11g客户段导入数据
1、按用户导入
imp system/oracle@orcl fromuser=lck touser=lck file=d:\lck_tables.dmp;
再导入
又报错了,对data表空间没权限,因为没有给lck用户分配在data表空间上的配额,香港空间,其实现在表结构已经导进来了,看一下
好吧,那就再给lck的配额,再导入
啊,还是报错,对象已存在,加参数ignore=y (忽略创建错误),再导入
ok,导入成功, 原来导入数据不是一帆风顺的啊。
总结:导入数据前需要在目标数据库中创建对应的用户,并给用户相应的权限和该用户在自己默认表空间上的配额
2、按表导入
exp system/oracle@orcl talbes=tab1 fromuser=lck,test touser=lck,test file=d:\lck_test_tables.dmp
ok,导入成功!!
本文出自 “挨踢小蝌蚪” 博客,请务必保留此出处