`
awaitdeng
  • 浏览: 216523 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

oracle imp导入数据到另一个表空间

阅读更多
oracle imp导入数据到另一个表空间

很多人在进行数据迁移时,希望把数据导入不同于原系统的表空间,在导入之后却往往发现,数据被导入了原表空间。
本例举例说明解决这个问题:
1.如果缺省的用户具有DBA权限
那么导入时会按照原来的位置导入数据,即导入到原表空间
$ imp bjbbs/passwd file=bj_bbs.dmp fromuser=jive touser=bjbbs grants=n
Import: Release 8.1.7.4.0 - Production on Mon Sep 22 11:49:41 2003
(c) Copyright 2000 Oracle Corporation.  All rights reserved.
Connected to: Oracle8i Enterprise Edition Release 8.1.7.4.0 - 64bit Production
With the Partitioning option
JServer Release 8.1.7.4.0 - 64bit Production
Export file created by EXPORT:V08.01.07 via conventional path
Warning: the objects were exported by JIVE, not by you
import done in ZHS16GBK character set and ZHS16GBK NCHAR character set
. . importing table                "HS_ALBUMINBOX"         12 rows imported
. . importing table                "HS_ALBUM_INFO"         47 rows imported
. . importing table                   "HS_CATALOG"         13 rows imported
. . importing table          "HS_CATALOGAUTHORITY"          5 rows imported
. . importing table         "HS_CATEGORYAUTHORITY"          0 rows imported
....
. . importing table                 "JIVEUSERPROP"          4 rows imported
. . importing table                    "JIVEWATCH"          0 rows imported
. . importing table                   "PLAN_TABLE"          0 rows imported
. . importing table                   "TMZOLDUSER"          3 rows imported
. . importing table                  "TMZOLDUSER2"          3 rows imported
About to enable constraints...
Import terminated successfully without warnings.


查询发现仍然导入了USER表空间

$ sqlplus bjbbs/passwd
SQL*Plus: Release 8.1.7.0.0 - Production on Mon Sep 22 11:50:03 2003
(c) Copyright 2000 Oracle Corporation.  All rights reserved.
Connected to:
Oracle8i Enterprise Edition Release 8.1.7.4.0 - 64bit Production
With the Partitioning option
JServer Release 8.1.7.4.0 - 64bit Production
SQL> select table_name,tablespace_name from user_tables;
TABLE_NAME                     TABLESPACE_NAME
------------------------------ ------------------------------
HS_ALBUMINBOX                  USERS
HS_ALBUM_INFO                  USERS
HS_CATALOG                     USERS
HS_CATALOGAUTHORITY            USERS
HS_CATEGORYAUTHORITY           USERS
HS_CATEGORYINFO                USERS
HS_DLF_DOWNLOG                 USERS
...
JIVEWATCH                      USERS
PLAN_TABLE                     USERS
TMZOLDUSER                     USERS
TABLE_NAME                     TABLESPACE_NAME
------------------------------ ------------------------------
TMZOLDUSER2                    USERS
45 rows selected.

2.回收用户unlimited tablespace权限
这样就可以导入到用户缺省表空间

SQL> create user bjbbs identified by passwd
  2  default tablespace bjbbs
  3  temporary tablespace temp
  4  /
User created.
SQL> grant connect,resource to bjbbs;
Grant succeeded.
SQL> grant dba to bjbbs;
Grant succeeded.
SQL> revoke unlimited tablespace from bjbbs;
Revoke succeeded.
SQL> alter user bjbbs quota 0 on users;
User altered.
SQL> alter user bjbbs quota unlimited on bjbbs;
User altered.
SQL> exit
Disconnected from Oracle8i Enterprise Edition Release 8.1.7.4.0 - 64bit Production
With the Partitioning option
JServer Release 8.1.7.4.0 - 64bit Production


重新导入数据

$ imp bjbbs/passwd file=bj_bbs.dmp fromuser=jive touser=bjbbs grants=n
Import: Release 8.1.7.4.0 - Production on Mon Sep 22 12:00:51 2003
(c) Copyright 2000 Oracle Corporation.  All rights reserved.
Connected to: Oracle8i Enterprise Edition Release 8.1.7.4.0 - 64bit Production
With the Partitioning option
JServer Release 8.1.7.4.0 - 64bit Production
Export file created by EXPORT:V08.01.07 via conventional path
Warning: the objects were exported by JIVE, not by you
import done in ZHS16GBK character set and ZHS16GBK NCHAR character set
. . importing table                "HS_ALBUMINBOX"         12 rows imported
. . importing table                "HS_ALBUM_INFO"         47 rows imported
. . importing table                   "HS_CATALOG"         13 rows imported
. . importing table          "HS_CATALOGAUTHORITY"          5 rows imported
. . importing table         "HS_CATEGORYAUTHORITY"          0 rows imported
. . importing table              "HS_CATEGORYINFO"          9 rows imported
. . importing table               "HS_DLF_DOWNLOG"          0 rows imported
....
. . importing table                     "JIVEUSER"        102 rows imported
. . importing table                 "JIVEUSERPERM"         81 rows imported
. . importing table                 "JIVEUSERPROP"          4 rows imported
. . importing table                    "JIVEWATCH"          0 rows imported
. . importing table                   "PLAN_TABLE"          0 rows imported
. . importing table                   "TMZOLDUSER"          3 rows imported
. . importing table                  "TMZOLDUSER2"          3 rows imported
About to enable constraints...
Import terminated successfully without warnings.
SQL> select table_name,tablespace_name from user_tables;
TABLE_NAME                     TABLESPACE_NAME
------------------------------ ------------------------------
HS_ALBUMINBOX                  BJBBS
HS_ALBUM_INFO                  BJBBS
HS_CATALOG                     BJBBS
HS_CATALOGAUTHORITY            BJBBS
....
JIVETHREAD                     BJBBS
JIVETHREADPROP                 BJBBS
JIVEUSER                       BJBBS
JIVEUSERPERM                   BJBBS
JIVEUSERPROP                   BJBBS
JIVEWATCH                      BJBBS
PLAN_TABLE                     BJBBS
TMZOLDUSER                     BJBBS
TABLE_NAME                     TABLESPACE_NAME
------------------------------ ------------------------------
TMZOLDUSER2                    BJBBS
45 rows selected.


现在数据被导入到正确的用户表空间中.
注:exp imp在sql puls上用的时候加上$ 是$exp $imp.
分享到:
评论

相关推荐

    ORACLE导入数据文件到指定的表空间

    "ORACLE导入数据文件到指定的表空间"这个主题涉及了Oracle数据库的导入工具(IMP)、数据泵(IMPDP)以及如何规划和管理表空间。 首先,我们需要了解Oracle的导入工具IMP。IMP是Oracle Data Pump Import的简称,它...

    Oracle中如何使用imp语句导入不同表空间?

    在实际工作中,有时需要将exp导出的历史备份dmp文件进行恢复,若之前的建表语句及表空间名无法找到,则直接用imp语句进行导入的话可能报错表空间不存在,且导入数据占用空间可能会非常大。使用本文方法可将exp导出的...

    oracle 删除表后imp导入数据的脚本

    一般的做法是直接删除表空间然后imp导入数据,但是我这边的情况是远程有一个web始终连着,为了免得每天还要去启动那个web服务,我就采用了这个做法,只删除表,这样不会断开连接,注意,这个web只是白天在用。...

    oracle导入时表空间不一致解决方法

    本文将详细介绍如何解决这一常见问题,并确保数据能够顺利地从一个环境迁移到另一个环境中。 #### 一、问题背景 在进行Oracle数据迁移时,源系统与目标系统的表空间可能存在差异,这会导致在执行`imp`命令时出现...

    Oracle数据库中imp导入数据

    ### Oracle数据库中IMP导入数据详解 #### 一、引言 在Oracle数据库管理与维护过程中,数据导入是一项非常重要的操作。对于刚接触Oracle的新手来说,掌握如何使用`IMP`命令进行数据导入尤为关键。本文将详细介绍...

    Oracle11G导入导出(imp和exp)少表解决方法

    Oracle 11G 是一个功能强大且复杂的数据库管理系统,它提供了多种方式来导入和导出数据。然而,在使用 Oracle 11G 时,用户可能会遇到一些问题,例如无法导出空表的问题。在本文中,我们将讨论如何解决这个问题,并...

    Oracle dmp文件导出导入(还原)到不同的表空间和不同的用户操作

    通过上述步骤,可以从一个现有的Oracle环境中导出DMP文件,并将其导入到不同的表空间和不同的用户下,从而实现数据的有效迁移和管理。这种方式在进行数据迁移、测试环境搭建等方面非常实用,能够有效避免数据丢失和...

    Oracle11G导入导出(imp和exp)少表解决方法.docx

    然而,在11G R2 版本中,由于一个新特性,空表在没有数据的情况下不会分配 segment,导致无法通过 exp 导出。这个问题可以通过以下几种方法解决: 1. **插入并回滚数据**:向空表中插入一行数据,然后执行 rollback...

    Oracle数据库逻辑增量备份之exp/imp

    逻辑备份不同于物理备份,它不涉及数据文件的复制,而是导出数据库对象的定义和数据到一个文件中,然后在需要时导入这些数据。 21、逻辑备份原理 逻辑备份通过创建数据库对象的元数据和数据的文本表示来工作。exp...

    Oracle数据导入导出

    1. Oracle EXP工具:Export是Oracle数据库提供的一个实用程序,用于从数据库中导出数据和对象定义。它可以创建一个二进制的转储文件,包含了用户选择的数据和对象信息。导出过程可以按照用户、表空间、表或整个...

    oracle9i全备份导入到11g说明

    - 在目标数据库中手动创建名为`temp3`和`temp101`的临时表空间,确保这两个表空间的`block size`与源数据库保持一致。 - 例如,如果源数据库的`block size`为16K,则创建的临时表空间也应设置为16K。 ##### 3. 分...

    从一个表空间 另一个表空间

    当需要将用户的表和其他对象从一个表空间转移到另一个表空间时,有几种方法可以实现这一目标: #### 1. 先在新表空间创建表再导入数据 这种方法的基本思路是在新表空间中预先创建好所需的表结构,然后通过导入操作...

    oracle 数据导入导出

    SQL*Loader是一个批处理工具,能够快速将数据从外部文件加载到Oracle数据库中。它支持多种格式的输入文件,并允许通过控制文件定义数据字段和转换规则。使用SQL*Loader时,你需要创建一个控制文件,指定表结构、...

    ORACLE 导入导出表空间文档

    Oracle的IMP(Import)和EXP(Export)工具用于数据的备份和恢复,允许将数据从一个数据库导出到另一个数据库。这些工具在SQL*Plus或DOS命令行中运行,通过`EXP.EXE`和`IMP.EXE`执行。 ##### 数据导出 导出数据的常见...

    Oracle 19c 备份恢复-导入导出

    参数文件方式:将所需的参数写入到一个文件中,然后使用 exp 或 imp 命令加上 parfile 选项来指定参数文件,例如,exp parfile=username.par。 三、模式 exp 和 imp 工具都有三种模式:表方式、用户方式和全库方式...

    在oracle两个表空间之间移动表

    在Oracle数据库管理中,有时需要将表从一个表空间移动到另一个表空间。这种操作可能是为了优化存储空间使用、提升性能或是满足特定的业务需求。Oracle提供了多种方法来实现这一目标,包括直接移动表、重建索引以及...

    oracle导入导出命令(imp、exp)

    `impdp`(Import Data Pump)是Oracle提供的一种高效的数据导入工具,它能够实现表空间、表或整个数据库的快速导入,相比传统`imp`命令,在性能和功能上都有显著提升。下面将详细介绍`impdp`的一些关键选项及其应用...

    Oracle expimp,备份或导入时注意的事项

    exp(Export)用于导出数据库中的对象和数据,而imp(Import)则用于将这些导出的数据导入到另一个数据库中。在实际操作中,由于各种原因,可能会遇到一些问题,下面将详细讨论在使用exp/imp时需要注意的事项。 ...

    oracle数据导入

    Oracle 数据导入过程中,可能会遇到将数据从一个用户迁移到另一个用户,同时改变其所属表空间的问题。本案例中,我们探讨了如何从一个数据库导出数据并将其导入到另一个数据库的特定用户和表空间,以及解决过程中...

Global site tag (gtag.js) - Google Analytics