exp imp 是数据库导出、导入常用的命令,但是经常会有一些怪异的问题让人很苦恼,今天我把我遇到过的问题在此记录,希望对于我有相同困惑的人有所帮助。
一版情况下我们都是从一台服务器上exp备份一个库,需要的时候imp到需要的数据库中。所以我们从exp开始。
一、exp
- exp 导出基本命令的写法
exp username/password@数据库 file=导出文件存放位置\文件名.dmp log=导出文件时的log文件位置\log文件名.txt
exp test/test@orcl file=D:\dmp\test.dmp log=D:\log\log.txt
注意:orcl 指的是你连接数据库的服务名。那么问题来了,如果没有配置服务名怎么办。exp text/text@192.168.1.211:1521/orcltest file=D:\test.dmp log=D:\log.txt
也就是说可以用ip:数据库端口号/数据库实例名 这种方式进行连接。
温情提示,这里的log路径必须存在。否则会报无法打开这个文件的错误。
- exp 空表并没有导出
从导出的log中可能会发现导出的表要少于导出用户所拥有的表,这是因为这个表是个空表。select t.SEGMENT_CREATED,t. * from user_tables t where num_rows = 0 or num_rows is null;
SEGMENT_CREATED 单独列出来正是因为它表示了表是否分配了segment,没有分配便导不出来。
其中TEST3便是空表,导出的时候是导不出来的。
此时就需要设置表,给表分配空间。alter table tableName allocate extent;
因为如果空表比较多,所以如何批量设置呢。select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows = 0 or num_rows is null;
将生成的批量设置语句一起执行。然后在执行导出语句便可导出空表了。 - 需要注意的就是导出前看看该用户表空间的名字,以便于导入的时候提前创建对应的表空间,否则会报表空间不存在无法导入。
select t.username,t.default_tablespace from dba_users t where t.username='TEST';
二、imp
-
导入前如果库中已经存在想要导入的用户需要先将这个用户删掉,提到删掉肯定会有人遇到提示该用户存在连接不让删。
这个时候就得先杀掉连接的会话。
select t.sid,t.serial# from V$session t where t.username='TEST'; 结果: sid serial# ---------- -------- 1 63 115 alter system kill session 'sid,serial#'; alter system kill session '63,115';
如果查出此用户存在很多会话那就批量删除吧。
select 'alter system kill session ',''''||trim(sid)||','||trim(serial#)||''';' from v$session where username='TEST'
批量杀掉会话后就可以删掉这个用户了,然后重新创建用户。以备导入使用
-
如果导出时发现需要特定的表空间,那么就得创建表空间
create tablespace Test datafile 'test.dbf' size 50M autoextend on next 1G;
-
imp 基本命令导入
imp test/test@orcl file=D:/test.dmp log=D:/log.txt fromuser=test touser=test full=y
相关推荐
本文档总结了 Oracle 数据库的完全导入导出、imp 和 exp 命令的使用方法,以及本机和异机恢复的步骤。 一、数据库的完全导入导出 Oracle 的数据库导入导出可以使用 exp 和 imp 两个命令来实现。exp 命令用于将...
### Oracle数据导入导出技巧之imp/exp命令 #### 数据导入详解 ##### 1. 基础导入命令 - **基本语法**: ```shell ... imp system/manager@TEST file...希望本文能对您理解和使用Oracle数据库的`imp/exp`命令有所帮助。
通过对 Oracle 表空间创建命令的分析以及对 exp/imp2 导入导出工具的介绍,我们可以看到,在 Oracle 数据库管理中,合理配置表空间属性和灵活运用备份恢复工具对于保障数据的安全性和可靠性至关重要。希望本文能帮助...
### Oracle IMP/EXP 命令详解与实例 在Oracle数据库管理中,`IMP`(Import)和`EXP`(Export)是两个非常重要的工具,它们用于数据的备份与恢复。通过这两个命令,用户可以方便地对整个数据库、特定表或用户对象...
根据给定文件的信息,我们可以深入探讨Oracle数据库中的两个重要命令:`exp`和`imp`。这两个命令分别用于导出(export)和导入(import)数据,是Oracle数据库管理中的核心工具之一。以下是对这两个命令及其相关参数...
imp命令同样有多个参数,如 owner(所有者)、file(输入文件)、log(日志文件)、ignore(忽略错误)、from_time(从指定时间点恢复)等,用于控制恢复过程。 3三、exp逻辑备份 exp提供了三种备份模式: - 表模式...
总结来说,Oracle的exp和imp命令是数据库备份和恢复的基础工具,通过灵活的参数配置,可以实现不同级别的数据备份和恢复操作。尽管现代Oracle提供了更先进的工具,但了解和掌握exp和imp的基本用法,仍然是数据库管理...
总结来说,`exp`和`imp`操作需要注意以下几个方面: 1. 权限管理:确保用户具有足够的角色来执行跨模式的操作。 2. 特权用户:谨慎使用`DBA`和`SYSDBA`权限,尽量避免不必要的风险。 3. 版本兼容:导出和导入时,要...
本文将对Oracle数据库中的EXP和IMP命令进行详细总结,并结合具体的命令实例来讲解不同的使用场景。 #### 二、EXP和IMP的基本概念 ##### 2.1 EXP导出命令 `EXP`命令用于将Oracle数据库中的数据导出为一个或多个二...
本文将深入解析Oracle的imp和exp命令的使用方法及示例,帮助读者理解如何有效地利用这些工具进行数据管理。 ### Oracle EXP(Export) `exp`命令用于将Oracle数据库中的数据导出到一个二进制文件中,这个过程被...
总结,Oracle 11g的IMP和EXP工具在数据管理和迁移中起着关键作用。理解并熟练掌握这两个工具的使用,能帮助数据库管理员高效地处理数据备份、恢复和迁移任务,确保数据库的稳定运行和数据的安全。
总结起来,Oracle的EXP和IMP工具提供了灵活的逻辑备份解决方案,而冷备份则提供了一种快速、安全的物理备份方式。在实际操作中,数据库管理员应根据业务需求和风险承受能力,制定合适的备份策略,确保在灾难发生时...
### Oracle expimp 导出导入工具的使用详解 #### 一、导出工具exp **1. 概述** - **位置与功能**: `exp` 是 Oracle 提供的一个用于导出数据库对象及其数据的强大工具,通常位于 `/ORACLE_HOME/bin` 目录下。 - *...
Oracle的`imp`和`exp`命令是管理数据库数据的关键工具,尤其是在备份和恢复、迁移和测试场景中。理解并掌握这些命令的使用方法,对于任何Oracle数据库管理员或开发者来说都是必不可少的技能。通过上述技巧,你可以更...
在日常工作中,我们经常遇到数据库操作时中文显示不正确的问题,尤其是在使用 Oracle 的 `exp` 和 `imp` 命令进行数据导入导出以及通过 PL/SQL Developer 工具查询数据时出现中文乱码的情况尤为常见。本文将详细探讨...
### Oracle exp、imp 注意事项与使用方法 #### 一、Oracle exp、imp 概述 在Oracle数据库管理中,`exp` 和 `imp` 是两个非常重要的工具,用于数据的导出(Export)和导入(Import)。它们为数据库管理员提供了一种...
例如,你可能需要使用`sqlplus`命令来启动Oracle的命令行客户端,然后运行`exp`或`imp`命令。有时,为了自动化这些任务,你可能还会编写shell脚本,结合使用`cron`定时任务来定期执行数据库的备份和恢复。 在执行...
以上是Oracle在SQLPlus下使用`EXP`和`IMP`命令进行数据导入导出的基本介绍。通过这些命令及其各种选项,可以灵活地管理数据库中的数据,无论是备份还是迁移数据都非常方便。理解这些命令的用法对于Oracle数据库管理...
通过了解 EXP-IMP 工具以及其具体的命令参数,我们可以更加高效地管理和维护 Oracle 数据库。尤其需要注意的是 CONSISTENT 参数的使用,它可以有效地确保导出数据的一致性,这对于数据备份和恢复至关重要。此外,...
本文将详细介绍 imp/exp 的工作原理、应用场景以及具体的命令使用方法。 #### 二、Oracle imp/exp 概述 Oracle 数据库中的 imp/exp 是两个非常实用的工具,它们分别代表“导入”和“导出”。通过使用 exp 命令,...