今天尝试了数据库的导出,直接在命令行里面使用了导出指令:

exp uname/pwd@127.0.0.1:1521/orcl  file='xx.dmp'

出现的问题:

直接@tnsnames里面配的网络服务名 exp uname/pwd@test  是报错;

改为exp uname/pwd@127.0.0.1:1521/orcl (test在tnsnames文件里面对应的IP地址加上实例名127.0.0.1:1521/orcl时,导出成功)

参考帖子参考帖子2,概念搞错了
@后面跟的不是实例名,只是在tnsnames里面配的网络服务名

导入导出常见的命令,参考帖子

数据库导出功能:

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 将数据库中的表table1 、table2导出
exp system/manager@TEST file=d:\daochu.dmp tables=(table1,table2)
4 将数据库中的表table1中的字段filed1以"00"打头的数据导出
exp system/manager@TEST file=d:\daochu.dmp tables=(table1) query=\" where filed1 like '00%'\"

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

3.更多示例

【示例】

1、【全库模式】将备份数据库文件中的数据导入数据库orcl中,用户名scott密码scott,数据文件路径D:/orcl/scott.dmp,日志文件路径D:/orcl/scott.log

imp scott/scott@orcl file = D:/orcl/scott.dmp log =D:/orcl/scott.log full = y ignore = y

2、【表模式】将备份数据库文件中的表emp、dept数据导入数据库orcl中,用户名scott密码scott,数据文件路径D:/orcl/scott.dmp

imp scott/scott@orcl file = D:/orcl/scott.dmp log =D:/orcl/scott.log ignore = y tables = (emp,dept)

另外,如果导出时使用了表模式,导入时要导入所有表数据,则也可以使用full = y,如:

imp scott/scott@orcl file = D:/orcl/scott_empdept.dmp ignore= y full = y

3、【用户模式】备份数据文件中存在ng_lxj1、ng_lxj2两用户数据,数据文件路径D:/orcltest/ng_lxj_user.dmp

将ng_lxj1的数据导入到ng_lxj中:

imp system/manager@243 file = D:/orcltest/ng_lxj_user.dmpfromuser = ng_lxj1 touser = ng_lxj

将ng_lxj1和ng_lxj2的数据均导入到ng_lxj中:

imp system/manager@243 file = D:/orcltest/ng_lxj_user.dmpfromuser = (ng_lxj1,ng_lxj2) touser = (ng_lxj,ng_lxj)

注意ng_lxj要写两遍与之前的对应,若仅写一个,Oracle会默认没得到对应的将导入到本用户下,如:

imp system/manager@243 file = D:/orcltest/ng_lxj_user.dmpfromuser = (ng_lxj1,ng_lxj2)

该命令将从ng_lxj1导入ng_lxj1,ng_lxj2导入ng_lxj2

将ng_lxj1的数据分别导入ng_lxj1和ng_lxj2两个用户:

不能写成imp system/manager@243 file = D:/orcltest/ng_lxj_user.dmpfromuser = (ng_lxj1,ng_lxj1) touser = (ng_lxj1,ng_lxj2)

否则会报错:

IMP-00034: 警告: 在导出文件中未找到 FromUser "NG_LXJ1"

猜测:Oracle将数据文件抽取到缓存区,一旦使用过就会进行清除。

所以,一个用户导向两个用户需要分开写两条命令语句。

将ng_lxj1用户下的t1表的数据导入ng_lxj2用户中:

imp system/manager@243 file = D:/orcltest/ng_lxj_user.dmpfromuser = ng_lxj1 touser = ng_lxj2 tables = t1

4、从备份数据文件中,仅导入建表语句而不导入数据记录,文件路径D:/orcl/scott.dmp

imp scott/scott@orcl file = D:/orcl/scott.dmp full = yignore = y rows = n

5、使用参数文件

imp system/manager@243 parfile=bible_tables.par

bible_tables.par参数文件:

file = D:/orcltest/ng_lxj_user.dmp fromuser = ng_lxj1touser = ng_lxj

《oracle每日一练》oralce数据库的导入导出的更多相关文章

  1. ORACLE数据库在导入导出时序列不一致的问题

    ORACLE数据库在导入导出时序列不一致的问题   在使用ORACLE数据库时,当给一个表设置自增字段时,我们经常会使用到序列+触发器来完成.但当你需要对数据库进行导入导出时,序列很容易出问题. 当你 ...

  2. oracle数据库数据导入导出步骤(入门)

    oracle数据库数据导入导出步骤(入门) 说明: 1.数据库数据导入导出方法有多种,可以通过exp/imp命令导入导出,也可以用第三方工具导出,如:PLSQL 2.如果熟悉命令,建议用exp/imp ...

  3. oracle数据库的导入 导出实例

    oracle数据库的导入 导出实例 分类: DataBase2011-09-07 23:25 377人阅读 评论(0) 收藏 举报 数据库oraclefileusercmdservice 我要从另外一 ...

  4. mysql数据库的导入导出

    当我们在操作数据库的时候,难免会遇到数据导入导出的一些操作,今天突然学到了这个知识点,特意来给大家分享. 我用的是data的这条数据 1.使用数据 mysql> use data; Databa ...

  5. linux mysql 数据库操作导入导出 数据表导出导入

    linux mysql 数据库操作导入导出 数据表导出导入 1,数据库导入 mysql -uroot -p show databases; create database newdb; use 数据库 ...

  6. Linux数据库的导入导出

    Linux数据库的导入导出 1.导入数据库 mysql -u username -p test < /home/data/test.sql 说明:username是数据库用户名,test为目标数 ...

  7. oracle 中数据库完全导入导出:cmd命令行模式(转载)

    http://www.3lian.com/edu/2012/12-01/47252.html Oracle数据导入导出imp/exp就相当于oracle数据还原与备份.exp命令可以把数据从远程数据库 ...

  8. Oracle创建删除用户,角色,表空间,导入导出数据库命令总结(转载)

    无意间看到一篇文章,觉得对于ORACLE的新手很实用,特转载,原文出处这里 说明:在创建数据库时输入的密码,是修改系统默认的密码,以system和sysman等系统默认身份登录时要输入的密码就是修改后 ...

  9. JAVA实现数据库数据导入/导出到Excel(POI)

    准备工作: 1.导入POI包:POI下载地址http://mirrors.tuna.tsinghua.edu.cn/apache/poi/release/src/(重要) 如下 2.导入Java界面美 ...

随机推荐

  1. JavaScript 面向对象程序设计(下)——继承与多态 【转】

    JavaScript 面向对象程序设计(下)--继承与多态 前面我们讨论了如何在 JavaScript 语言中实现对私有实例成员.公有实例成员.私有静态成员.公有静态成员和静态类的封装.这次我们来讨论 ...

  2. SQLServer中获取特定表的所有列名

    1.获取特定表的所有列名: Select Name FROM SysColumns Where id=Object_Id('tableName') 参考:http://blog.csdn.net/wu ...

  3. asp.net core 中的MD5加密

    尝试了很长时间,但是一直报core 5 不可用,当时就崩溃了. 但是偶然的机会 我添加了Microsoft.AspNet.Identity 之后.MD5就好用了. 估计是这个报实现了core5下的MD ...

  4. jqueryui / accordion的用法记录

    jqueryui 的 widget 中包含了基本上我们都需要的ui组件, 除了那个unslider. 参考地址是: www.jqueryui.com. 要能够看懂/并使用/ 完全掌握的话, 就要使用其 ...

  5. java系列-安装MySql(三)

    第一大步:MySQL安装文件分为两种,一种是msi格式的,一种是zip格式的.如果是msi格式的可以直接点击安装,按照它给出的安装提示进行安装(相信大家的英文可以看懂英文提示),一般MySQL将会安装 ...

  6. cocos布局分析

    HBox和VBox布局 HBox只是一个水平布局包装类. HBox里面所有的孩子节点都会水平排列成一行 VBox仅仅是对垂直布局的一个简便的类封装. VBox把它的子节点布局在一竖列中. Layout ...

  7. httpd服务访问控制

    客户机地址限制 通过配置Order.Deny from.Allow from 来限制客户机 allow.deny :先"允许"后"拒绝" ,默认拒绝所有为明确的 ...

  8. javaweb项目中的WEB-INF与META-INF

    /WEB-INF 放置web应用程序配置文件.jsp页面.lib包.classes文件等. /META-INF java打jar包时,自动生成的一个文件夹.相当于一个信息包,目录中的文件和目录获得ja ...

  9. iOS开发——源代码管理——SVN

    一.源代码管理(svn)简介 01. 源代码管理工具概述 ======================================================================= ...

  10. BZOJ2229—— [Zjoi2011]最小割

    0.题目大意:求两点之间的最小割,然后找出其中小于x的数量 1.分析:最小割树水题,上个板子就好 #include <queue> #include <ctime> #incl ...