使用oracle自带的命令进行导入导出

栏目: 数据库 · 发布时间: 7年前

内容简介:使用oracle自带的命令进行导入导出

1.          使用 ORACLE 自带的 EXP 命令和 IMP 命令。

使用前提: 你得拥有 系统管理员 的权限才能使用这些命令进行操作。

参数: CMD 窗口(别告诉我不会进入 CMD 窗口啊,在运行对话框中敲入 cmd ,然后确定就可以进入了。)敲入 exp help=y   即可看到所有的 EXP 参数。 Imp 命令也一样。如果提示错误的话,就得确定系统环境变量中的 PATH 参数有没有指向你的 ORACLE 安装目录下的 BIN 目录。

石头在此 SHOW 一个导出整库的命令: exp user/password@database full=y file=d:\temp.dmp

看不懂?!不要急,听石头慢慢道来。

User :系统管理员的账号

Password User 账号的密码

Database :你所要导出数据库的服务名。

Full=y :这个参数的意思是导出整个 Oracle 数据库。

File=d:\temp.dmp :这个参数是指将数据库导出后的文件,可以指定目录,不指定则默认为当前目录下。

好了,这样一来就可以大功告成了,你就可以慢慢看着数据一条一条的导出来了。

这里有一个问题需要注意一下,石头在这个问题上卡了两个小时。错误信息如下:

EXP-00056:   遇到   ORACLE   错误   942

ORA-00942:   表或视图不存在

EXP-00000:   导出终止失败

解决办法:报此错误并不是因为你的权限不够,也不是因为你的命令有误,而是 ORACLE 本身的问题,是由于你的客户端版本低于服务器端的版本造成的。最好的办法就是装一个与服务器端版本相同客户端。要不就到服务器端去导吧。

IMP EXP 命令非常相似,连命令都是一样的,自己去摸索一下吧。

2.          使用第三方工具: TOAD FOR ORACLE

石头这一段时间以来,一直在使用 TOAD 操作 ORACLE ,感觉上 TOAD 非常好用,而且功能非常强大。如果你没有管理员的账号,而且想把一个库中的某些表导出到另一个表。用 TOAD 吧,没错。(我不是 TOAD 派来的间谍啊,只是小打一下广告。)

我们假设要把 A 数据库的 TABLE 导出到 B 数据库中。导出的步骤如下:

1)   连接 A 数据库和 B 数据库。

使用“ FILE ”菜单下的“ NEW CONNECTION ”命令可以连接多个数据库。

2)   进入 A 数据库的 TABLE 列表( Schema Browser ),在左边窗口中选择你要导出的表,然后右键。在弹出的菜单中选择“ Copy data to another schema ”。弹出一个对话框了吧。

3)   在“ Destination Connection ”中选择 B 数据库连接。在“ Destination Schema ”选择数据库你要导出的数据库空间。

4)   点击“ Execute ”按钮。可以了,导完了。

同样的,以上方法也适合于导出多个表。

3.          导出视图中的数据

相信大家都碰到过这种问题,我想导出一个数据库的数据,但是我只够权限看得到该数据库的视图,看不到表,更别提有管理员权限了。这个时候我要导出视图中的数据,该怎么办咧?!

石头因为这个问题整整抓狂了一天,头发又少了 N 多根,按照这个速度,估计很快就会谢顶了,我才 24 啊,这个年轻就谢了。扯远了,我们继续。

在这种情况下,我们还得使用简单好用,功能强大的 TOAD

我们假设要导出 A 数据库的 X 视图中的数据至 B 数据库中。

导出数据步骤如下:

1)         首先你得在 B 数据库建一个用来存储 X 视图中数据的表;(表结构可以在 TOAD 中看到)

2)         A 数据库中的 X 视图的数据上点击鼠标右键。

选择“ SAVE AS ”命令。

在“ Format ”中选择“ SQL LOADER ”单选项。

在“ Insert Table ”中输入你在 B 数据库中所建表的名字。

在“ Filed separator ”中输入分隔符“ , ”。

在“ save to ”中选择你要存储该导出数据的目录。

在“ options ”中选择“ Insert ”单选项。

3)         点击“ OK ”。

在目录下是不是看到有一个扩展名为 ctl 的文件啊。这就是导出后的数据文件了。导入数据步骤如下:

1)         进入 CMD 窗口,不知道的看前面。

2)         输入命令“ sqlldr user/password@database control=x:\temp.ctl log=x:\temp.log bad=x:\temp.bad errors= 100000

参数如下:

User :数据库用户名。

Password :密码

Control :你导出的 CTL 文件(可以包含目录名)

Log :日志文件(可以包含目录名)

BAD :错误记录文件,用以记录没有导入成功的数据(同上)

Errors :允许出错的条数,

3)         OK ,导入成功。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Automate This

Automate This

Christopher Steiner / Portfolio / 2013-8-9 / USD 25.95

"The rousing story of the last gasp of human agency and how today's best and brightest minds are endeavoring to put an end to it." It used to be that to diagnose an illness, interpret legal docume......一起来看看 《Automate This》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具