导出/导入Oracle数据库对象和数据

在Oracle中,我们可以把远程数据库服务器中的数据连同对象定义都导出到一个本地dmp文件中,也可以把 dmp文件从本地导入到远处的数据库服务器中。利用这个功能可以构建数个相同的数据库,以用于测试。当然,条件是你已经安装了本机上安装了Oracle客户端。

我们可以由DOS命令行或者SQLPLUS执行操作,当然,导入/导出工作实际由Oracle安装目录\Bin中的exp.exe与imp.exe来完成的。

下面是导入/导出语句的语句(username、password、servicename、filename分别为用户名、密码、本地服务名和文件名)

  • 数据导出
    1. 将数据库内容完全导出:exp username/password@servicename file=filename full=y
    2. 指定的数据库内容导出:exp username/password@servicename file=filename owner=(user1,user2),其导出结果为user1和user2的所有对象和数据。应当指出,如果username为一般用户,并去除owner=(user1,user2)内容,那么导出的结果为username所属的所有对象和数据
    3. 单独导出表结构和表数据:exp username/password@servicename file=filename tables=(table1,table2),导出结果为username用户的table1、table2表结构和和数据
    4. 数据压缩:在上述语句的最后加上compress=y就搞定了
  • 数据导入
    1. 导入到同名(且同密码)的用户中:imp username/password@servicename file=filename
    2. 导入到其它用户中:imp username/password@servicename file=filename fromuser=username touser=username2

嗯,还有,username要有足够的权限,否则Oracle会给出提示。

posted on 2007-03-14 14:30  阿齐  阅读(2408)  评论(0编辑  收藏  举报