`

oracle 用户创建 数据库的导入导出imp/exp 可以在SQLPLUS.EXE或者DOS(命令行)中执行

 
阅读更多

执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行,
DOS中可以执行时由于 在oracle 8i 中 安装目录ora81BIN被设置为全局路径,
该目录下有EXP.EXE与IMP.EXE文件被用来执行导入导出。

创建用户

给用户增加导入数据权限的操作
第一,启动sql*puls
第二,以system/manager登陆
第三,create user 用户名 IDENTIFIED BY 密码 (如果已经创建过用户,这步可以省略)
第四,GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,
   DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,
      DBA,CONNECT,RESOURCE,CREATE SESSION TO 用户名字
第五, 运行-cmd-进入dmp文件所在的目录,
      imp userid=system/manager full=y file=*.dmp
      或者 imp userid=system/manager full=y file=filename.dmp

执行示例:
F:WorkOracle_Databackup>imp userid=test/test full=y file=inner_notify.dmp

 

下面介绍的是导入导出的实例。
数据导出:
1 将数据库TEST完全导出,用户名system 密码manager 导出到D:daochu.dmp中
   exp system/manager@TEST file=d:daochu.dmp full=y
2 将数据库中system用户与sys用户的表导出
   exp system/manager@TEST file=d:daochu.dmp owner=(system,sys)
3 将数据库中的表inner_notify、notify_staff_relat导出
    exp aichannel/aichannel@TESTDB2 file= d:datanewsmgnt.dmp tables=(inner_notify,notify_staff_relat)

4 将数据库中的表table1中的字段filed1以"00"打头的数据导出
   exp system/manager@TEST file=d:daochu.dmp tables=(table1) query=" where filed1 like '00%'"

上面是常用的导出,对于压缩,既用winzip把dmp文件可以很好的压缩。
也可以在上面命令后面 加上 compress=y 来实现。

数据的导入
1 将D:daochu.dmp 中的数据导入 TEST数据库中。
   imp system/manager@TEST file=d:daochu.dmp
   imp aichannel/aichannel@HUST full=y file=d:datanewsmgnt.dmp ignore=y
   上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。
   在后面加上 ignore=y 就可以了。
2 将d:daochu.dmp中的表table1 导入
imp system/manager@TEST file=d:daochu.dmp tables=(table1)

基本上上面的导入导出够用了。不少情况要先是将表彻底删除,然后导入。

附录一:
Oracle 不允许直接改变表的拥有者, 利用Export/Import可以达到这一目的.
先建立import9.par,
然后,使用时命令如下:imp parfile=/filepath/import9.par
例 import9.par 内容如下:
        FROMUSER=TGPMS      
        TOUSER=TGPMS2     (注:把表的拥有者由FROMUSER改为TOUSER,FROMUSER和TOUSER的用户可以不同)         
        ROWS=Y
        INDEXES=Y
        GRANTS=Y
        CONSTRAINTS=Y
        BUFFER=409600
        file==/backup/ctgpc_20030623.dmp
        log==/backup/import_20030623.log

转载 http://www.cnblogs.com/jason_lb/archive/2007/02/09/645586.html

 

更新2009-7-20

         用Oracle闪回功能恢复偶然丢失的数据

 

Oracle 10g的闪回查询概述

  与Oracle 9i相比Oracle 10g的Flashback有了非常大的改进,从普通的Flashback Query发展到了多种形式,主要表现在如下几方面新特性:

  1、Flashback Database

  Oracle Flashback Database特性允许通过SQL语句Flashback Database语句,让数据库前滚到当前的前一个时间点或者SCN,而不需要做时间点的恢复。闪回数据库可以迅速将数据库回到误操作或人为错误的前一个时间点,如Word中的"撤消"操作,可以不利用备份就快速的实现基于时间点的恢复。Oracle通过创建新的Flashback Logs(闪回日志),记录数据库的闪回操作。如果希望能闪回数据库,需要设置如下参数:DB_RECOVER_FILE_DEST日志的存放位置,DB_RECOVER_FILE_DEST_SIZE恢复区的大小。在创建数据库的时候,Oracle将自动创建恢复区,但默认是关闭的,需要执行alter database flashback on命令。

  例:执行Flashback Database命令格式。

SQL>flashback database to time to_timestamp(xxx);
SQL>flashback database to scn xxx

  2、Flashback Table

  Oracle Flashback Table特性允许利用Flashback Table语句,确保闪回到表的前一个时间点。与Oracle 9i中的Flashback Query相似,利用回滚段信息来恢复一个或一些表到以前的一个时间点(一个快照)。要注意的是,Flashback Table不等于Flashback Query,Flashback Query仅仅是查询以前的一个快照点而已,并不改变当前表的状态,而Flashback Table将改变当前表及附属对象一起回到以前的时间点。

  语法:

flashback table tablename to timestamp xxx或
flashback table tablename to scn xxx

  注意:如果需要闪回一个表,需要以下条件:

  ·需要有flashback any table的系统权限或者是该表的flashback对象权限;

  ·需要有该表的select,insert,delete,alter权限;

  ·必须保证该表row movement。

  例:执行将test表闪回到2005年5月7日下午3点。

SQL>flashback table test to timestamp to_timestamp(’2005-05-07 15:00:00’,’yyyy-mm-dd hh24:mi:ss’);

  3、Flashback Drop

  Oracle Flashback Drop特性提供一个类似回收站的功能,用来恢复不小心被删除的表。当删除表时,Oracle 10g并不立刻释放被删除的表所占用的空间,而是将这个被删除的表进行自动重命名(为了避免同类对象名称的重复)并放进回收站中。所谓的回收站类似于Windows系统中的回收站,是一个虚拟的容器,用于存放所有被删除的对象,在回收站中被删除的对象将占用创建时的同样的空间。如果这个被删除的表需要进行恢复,就可利用Flashback Drop功能。

  例:进行一个删除表后恢复的简单测试。

  (1)显示回收站信息

SQL>show recyclebin;

  可以看到,回收站中是没有任何结果的,表示没有任何表在回收站中。

  (2)创建一个表,并删除,再次显示回收站信息

SQL>create table test_drop(name varchar2(10));
SQL>drop table test_drop;
SQL>show recyclebin;
ORIGINAL NAME RECYCLEBIN NAME OBJECT TYPE DROP TIME
TEST_DROP BIN$b+XkkO1RS5K10uKo9BfmuA==$0 TABLE 2005-05-07:14:30:47

  (3)对被删除的表进行恢复

SQL>flashback table test_drop to before drop;或
SQL>flashback table "BIN$b+XkkO1RS5K10uKo9BfmuA==$0" to before drop;

  (4)管理回收站

  清除回收站中的单个表:purge table test_drop

  清除整个回收站:purge recyclebin

  清除不同的对象回收站:purge user_recyclebin或purge dba_recyclebin

  (5)确认删除一个表

SQL>drop table test_drop purge;

  如果删除一个表且不放到回收站中不能进行恢复,在drop语句中可以利用purge选项。

http://space.itpub.net/8870051/viewspace-101738

 

更新2009-8-1

如何查看oracle中数据库名?

SELECT NAME FROM V$DATABASE;  

select * from v$instance

 

分享到:
评论

相关推荐

    oracle 用户创建 数据库的导入导出impexp 可以在SQLPLUS.EXE或者DOS(命令行)中执行

    在Oracle中创建用户可以通过SQL*Plus或命令行方式完成。例如,在SQL*Plus中,可以使用以下命令来创建一个名为`testuser`的新用户,并为其设置密码: ```sql SQL> create user testuser identified by password; ```...

    Oracle11g64bit下的bin目录,包含导入导出用的imp.exe以及exp.exe文件,可用于plsql导入导出

    在Oracle11g 64位的`bin`目录下,除了`imp.exe`和`exp.exe`,还有其他许多关键的数据库管理工具,比如用于启动和关闭数据库实例的`sqlplus.exe`,用于数据库性能分析的`sqlplusw.exe`,以及用于管理数据库配置的`...

    Oracle导入导出命令及数据库备份

    执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行, DOS中可以执行时由于 在oracle 8i 中 安装目录\ora81\BIN被设置为全局路径, 该目录下有EXP.EXE与IMP.EXE文件被用来执行导入导出。 oracle用java编写,...

    oracle11g的BIN目录exp.exe下载

    5. **BIN目录中的其他工具**:除了exp.exe,Oracle 11g的BIN目录还包括许多其他重要工具,如imp.exe(导入工具)、sqlplus.exe(SQL命令行工具)、dbca(数据库创建助手)等,它们共同构成了Oracle数据库管理的基础...

    oracle11g数据库三种方式导入导出必备的exe文件

    例如,首先使用exp.exe将源数据库中的数据导出,然后在目标环境中创建相应的数据库结构,接着使用imp.exe将导出的数据导入新环境中,最后通过sqlplus.exe执行必要的调整和验证,确保数据的一致性和完整性。...

    Oracle中导出、导入.dmp数据库文件.doc

    可以在SQLPLUS.EXE或DOS(命令行)中执行imp和exp命令。在oracle 8i中安装目录\ora81\BIN被设置为全局路径,该目录下有EXP.EXE与IMP.EXE文件被用来执行导入导出。 五、数据导出实例 例如,将数据库TEST完全导出,...

    oracle导入导出(imp,exp本机或异机恢复)-详细笔记文档总结

    Oracle 的数据库导入导出(imp/exp)是数据库管理员经常使用的两个命令,它们分别用于数据库的导出和导入。本文档总结了 Oracle 数据库的完全导入导出、imp 和 exp 命令的使用方法,以及本机和异机恢复的步骤。 一...

    oracle新建数据库,及创建用户,表空间,sqlplus导入导出数据库.docx

    Oracle 数据库新建、用户创建、表空间管理、SQLPlus 导入导出数据库详解 概述: 本文档详细介绍了 Oracle 数据库的新建、用户创建、表空间管理、SQLPlus 导入导出数据库的步骤。通过逐步指导,读者可以了解 Oracle ...

    Oracle数据导入导出impexp命令

    2. **环境变量**: Oracle 8i 及其之后版本的安装目录(例如 ora81\bin)应该被设置为全局路径的一部分,以便可以直接调用 `exp.exe` 和 `imp.exe`。 3. **权限**: 执行导入导出操作的用户需要有足够的权限。例如,在...

    dos和sqlplus导出oracle数据库_用户和表

    下面我们将详细介绍如何使用dos命令和sqlplus来导出和导入Oracle数据库用户和表。 一、导出数据库用户和表 使用exp工具可以将Oracle数据库用户和表导出到dmp文件中。基本语法为: exp (userid=) 用户名/口令@...

    oracle数据库导入导出命令

    通过使用`exp`(Export)和`imp`(Import)命令,我们可以方便地将整个数据库或者部分数据对象导出为一个二进制文件(`.dmp`文件),也可以将该文件重新导入到另一个数据库中。这对于数据迁移、备份和灾难恢复等场景...

    orcale数据库导出导入.pdf

    在使用 exp 和 imp 命令时,需要在 SQLPLUS.EXE 或 DOS 命令行中执行。exp 命令的基本语法为:exp <username>/<password>@<database_name> file=<filename> [options],其中 <username> 是用户名,<password> 是密码...

    Oracle数据导入导出命令.pdf

    - **执行环境:** 可以在 SQLPLUS.EXE 或者 DOS(命令行) 中执行。 - **权限要求:** 执行导入导出操作的用户需要有足够的权限。例如,对于完全导出,需要具有 EXP_FULL_DATABASE 权限;对于完全导入,则需要具有 IMP_...

    ORACLE数据库导入导出详细流程

    这里,`buffer`参数用于设置导入缓冲区的大小,`log`参数用于指定导入过程中的日志文件,而`feedback`参数则用于控制在导入多少行记录后显示一次进度。 **(2)EXPDP导出(数据泵)** - **命令格式**:`expdp ...

    oracle数据库导入导出DMP文件操作

    通过使用Oracle的导出工具(EXPDP或传统的EXP),可以将数据库中的特定对象或整个数据库的数据导出成DMP文件。 **具体操作步骤如下:** 1. **定义导出脚本:** - **脚本命名规则:** 通常以`exp`开头,后跟数据库...

    linux oracle imp exp 执行命令安装

    通过以上步骤,你可以在Linux环境中成功安装并使用Oracle的`imp`和`exp`命令进行数据的导入和导出操作。在实际应用中,根据具体的网络环境、数据库版本和安全策略,可能还需要进行额外的配置和调整。

    Centos7.6下oracle impdp导入和expdp导出.docx

    通过上述步骤,我们可以在 Centos7.6 下顺利完成 Oracle 数据库的导出与导入操作。需要注意的是,在实际操作过程中可能会遇到各种问题,如权限问题、磁盘空间不足等,因此建议在正式执行前做好充分的测试和准备。...

    Oracle导入导出dmp文件[参考].pdf

    在Oracle中,`exp` 和 `imp` 是两个关键的命令行实用程序,用于将数据从一个数据库导出到DMP(Data Pump)文件,然后将这些数据从DMP文件导入到另一个数据库。 `exp` 命令用于导出数据,其基本语法如下: ```bash ...

    数据库导入导出模板(CMD命令)

    "数据库导入导出模板(CMD命令)" 主要关注如何通过命令行界面(CMD)来执行Oracle数据库的导入和导出工作,这在某些情况下比图形用户界面(GUI)工具更为高效和灵活。以下是对这些CMD命令的详细解释和相关知识点。 ...

    oracle数据泵的方式导入导出数据库

    在导入过程中还可以使用 `REMAP_TABLESPACE` 和 `REMAP_SCHEMA` 参数来进行表空间或模式的映射。例如: ```bash $ impdp system/password directory=dump_dir dumpfile=xx.dmp logfile=impdp.log remap_tablespace=...

Global site tag (gtag.js) - Google Analytics