博客
关于我
oracle数据泵常用命令
阅读量:767 次
发布时间:2019-03-23

本文共 1498 字,大约阅读时间需要 4 分钟。

oracle 数据泵(Data Pump)是 oracle 数据库中用于数据迁移和复制的重要工具。最常用的命令工具是 expdp 和 impdp。这两个工具需要在数据库服务端使用,不能在客户端执行。本文将为大家提供 expdp 和 impdp 的基本使用方法,以及相关的操作指南。

expdp 命令概述

expdp 是 oracle 数据泵中用来向外导出数据的命令工具。它允许用户将数据库中的数据导出到所指定的目标目录。expdp 命令需要配置正确,确保操作系统上已存在目标目录,并且数据库用户具备必要的权限。

expdp 使用注意事项

  • 权限要求:导数的数据库用户需要对指定目录对象有 read 和 write 权限。
  • 目录存在性:在操作系统中,目标目录必须已经存在。
  • 路径权限:oracle 系统用户在操作时会导出用户的元数据(如用户创建的表单、视图等),这些元数据的导出需要保证目标路径的 oracle 用户有 sufficient 权限。
  • system 用户权限:只有 system 用户才有权限导出元数据,普通用户无法执行此类操作。
  • expdp 命令示例

    • 导出单个表
      expdp system/oracle directory=my_dir dumpfile=expdp.dmp logfile=expdp.log tables=scott.emp
    • 导出多张表
      expdp system/oracle directory=my_dir dumpfile=expdp.dmp logfile=expdp.log tables=(scott.emp, scott.dept)
    • 导出用户数据
      expdp system/oracle directory=my_dir dumpfile=expdp.dmp logfile=expdp.log schemas=scott

    目录操作指南

    在使用 expdp 进行数据导出之前,需要确保目标目录已经为 database 目录配备完毕。以下是一些常用的目录操作命令:

    • 查询目录信息
      select * from dba_directories;
    • 创建目录(需要在操作系统层面完成,数据库会自动创建对应的 oracle 目录):
      create directory my_dir as '/home/oracle/tmp';
    • 设置目录权限
      grant read, write on directory my_dir to scott;

    impdp 命令使用

    当需要将数据从一个 oracle 数据库引入另一个数据库时,可以使用 impdp 命令。impdp 需要与 expdp 类似的权限设置:

    impdp 命令示例

    • 从文件中恢复数据
      impdp system/oracle directory=my_dir dumpfile=expdp.dmp logfile=expdp.log
    • 指定表或用户
      impdp system/oracle directory=my_dir dumpfile=expdp.dmp logfile=expdp.log tables=scott.emp
    • 使用表达式选择多个表
      impdp system/oracle directory=my_dir dumpfile=expdp.dmp logfile=expdp.log tables=(scott.emp, scott.dept)

    通过以上命令,您可以轻松地在不同的 oracle 数据库之间迁移数据。请注意,在操作前确保目标数据库已经准备好,并且拥有必要的权限。

    转载地址:http://abazk.baihongyu.com/

    你可能感兴趣的文章
    MySQL8修改密码报错ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
    查看>>
    MySQL8修改密码的方法
    查看>>
    Mysql8在Centos上安装后忘记root密码如何重新设置
    查看>>
    Mysql8在Windows上离线安装时忘记root密码
    查看>>
    MySQL8找不到my.ini配置文件以及报sql_mode=only_full_group_by解决方案
    查看>>
    mysql8的安装与卸载
    查看>>
    MySQL8,体验不一样的安装方式!
    查看>>
    MySQL: Host '127.0.0.1' is not allowed to connect to this MySQL server
    查看>>
    Mysql: 对换(替换)两条记录的同一个字段值
    查看>>
    mysql:Can‘t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock‘解决方法
    查看>>
    MYSQL:基础——3N范式的表结构设计
    查看>>
    MYSQL:基础——触发器
    查看>>
    Mysql:连接报错“closing inbound before receiving peer‘s close_notify”
    查看>>
    mysqlbinlog报错unknown variable ‘default-character-set=utf8mb4‘
    查看>>
    mysqldump 参数--lock-tables浅析
    查看>>
    mysqldump 导出中文乱码
    查看>>
    mysqldump 导出数据库中每张表的前n条
    查看>>
    mysqldump: Got error: 1044: Access denied for user ‘xx’@’xx’ to database ‘xx’ when using LOCK TABLES
    查看>>
    Mysqldump参数大全(参数来源于mysql5.5.19源码)
    查看>>
    mysqldump备份时忽略某些表
    查看>>