逻辑导入导出

2021-07-27  本文已影响0人  个人精进成长营

1、导出(exp)和导入(imp)实用程序:Oracle 数据库之间传送数据对象,即使这些数据库位于具有不同硬件和软件 配置的平台上。

    对Oracle 数据库运行导出实用程序时,该实用程序可导出整个数据库(不包括SYS用户数据)、用户、表、表空间。

    提取出的数据写入一个导出文件中,该文件是一个Oracle 二进制格式的转储文件,且通常位于磁盘或磁带上。

    导入实用程序从导出转储文件中读取对象定义和表数据。它用于将数据对象插入Oracle数据库。

    EXP作用:

      1):备份-保存历史数据

      2):在计算机和数据库之间,或在不同版本的Oracle服务器之间移动数据-迁移数据库

二、导出模式

2.1)表模式

表模式可以导出用户方案中的指定的表,而不是导出所有表。已授权的用户可以导出其他用户所拥有的指定的表。

2.2)用户模式

用户模式可以导出某个用户方案的所有对象。已授权的用户可以导出一组指定用户的方案中的所有对象。此模式可用于执行完全数据库导出。

2.3)表空间模式

表空间模式可用于导出指定表空间中的所有表。

2.4)完全数据库模式

完全数据库模式可以导出所有数据库对象,SYS 方案中的对象除外。

查看exp的参数:exp help=y

        EXP和IMP是客户端工具程序,它们既可以在客户端使用,也可以在服务端使用。

三、exp的用法:

3.1导出工具exp交互式命令方式

  3.1.1 导出数据库

  3.1.2 导出用户

  3.1.3 导出表

交互式导出weisi用户的数据库表

3.2导出工具exp非交互式命令行方式

3.2.1  全库导出

exp \"/ as sysdba\" full=y file=/opt/soft/weisi_exp_20160331.dump log=/opt/soft/weisi_exp_20160331.log

3.2.2  用户导出

exp \"sys/oracle as sysdba\" owner=weisi file=/opt/soft/weisi_exp_20160331.dump log=/opt/soft/weisi_exp_20160331.log

3.2.3  表导出

exp \"sys/oracle as sysdba\"  tables=weisi.BIG_RMAN_T file=/opt/soft/weisi_exp__t20160331.dump log=/opt/soft/weisi_exp_t20160331.log

3.2.4 表空间导出

exp \"sys/oracle as sysdba\"  tablespaces=RMAN_TABLESPACE_TEST file=/opt/soft/weisi_exp_tbs_t20160331.dump log=/opt/soft/weisi_exp_tbs_20160331.log

3.2.5  QUERY参数

QUERY参数后面跟的是where条件,值得注意的是,整个where子句需要使用""括起来,where子句的写法和SELECT中相同.

exp \"sys/oracle as sysdba\"  tables=weisi.BIG_RMAN_T query="'where object_id < 3000'"file=/opt/soft/weisi_exp__t20160331.dump log=/opt/soft/weisi_exp_t20160331.log

3.2.6  FILESIZE设置导出的数据文件的大小

exp \"sys/oracle as sysdba\" full=y file=/opt/soft/weisi_exp_20160331.dump log=/opt/soft/weisi_exp_20160331.log filesize=50M

4、imp用法

      具有三种模式(完全、用户、表)

      1、完全:     

      2、用户模式:

      3、表模式:

4.1  导入用户

      imp  \"/ as sysdba\"  fromuser=weisi touser=weisi file=/opt/soft/u_weisi_exp_20160331.dmp log=/opt/soft/u_weisi_imp_20160331.log

FROMUSER和TOUSER使用它们实现将数据从一个SCHEMA中导入到另外一个SCHEMA中。

SQL>  create user imp_test identified by imp_test;

    grant connect ,resource to imp_test;

exp \"sys/oracle as sysdba\"  owner=weisi file=/opt/soft/weisi_exp_20160331.dump log=/opt/soft/weisi_exp_20160331.log

imp  \"sys/oracle as sysdba\" fromuser=weisi touser=weisi file=/opt/soft/weisi_exp_20160331.dump log=/opt/soft/weisi_imp_20160331.log

imp  \"sys/oracle as sysdba\" fromuser=weisi touser=imp_test file=/opt/soft/weisi_exp_20160331.dump log=/opt/soft/weisi_imp_20160331.log

4.2 导入一个完整数据库

        exp \"sys/oracle as sysdba\" full=y file=/opt/soft/weisi_exp_20160331.dump log=/opt/soft/weisi_exp_20160331.log

imp \"sys/oracle as sysdba\" file=/opt/soft/weisi_exp_20160331.dump log=/opt/soft/weisi_imp_20160331.log

4.3 导入一个表

exp \"sys/oracle as sysdba\"  tables=weisi.BIG_RMAN_T file=/opt/soft/weisi_exp__t20160331.dump log=/opt/soft/weisi_exp_t20160331.log

上一篇下一篇

猜你喜欢

热点阅读