Oracle数据的导出与导入(基本用法)

网站地址:

http://blog.csdn.net/pingkongyouyuan/archive/2009/09/12/4545464.aspx

 

 

 

http://www.cnblogs.com/ztf2008/archive/2009/03/04/1403213.html

 

 

一、下面的导入,导出都是在xp系统上操作的,(linux 上的数据库也是在xp系统的dos下面操作的,但是前提是要要在xp系统上配好Oracle Net Configuration Assistant  。)

 

-- 下面是自己总结的,不建议看,看上面两位高手总结的就可以了 

导出名字:

exp_table_oa.bat

 

导出语句

@echo on
 
set ptime=%time:~0,1%
if exist D:\oraclebak\%date:~0,4%%date:~5,2%%date:~8,2%*.dmp goto :END
if "%ptime%" == " " goto :Usage
exp oras/oras@orcl buffer=4096 GRANTS=y TRIGGERS=y file=D:\%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%.dmp
goto  :END
:Usage
exp oras/oras@orcl  buffer=4096 GRANTS=y TRIGGERS=y file=D:\%date:~0,4%%date:~5,2%%date:~8,2%0%time:~1,1%%time:~3,2%%time:~6,2%.dmp
:END
pause

 

 

导入名字

imp100.bat

 

导入语句

imp  oras/oras@ORCL  full=y  grants=y statistics=none  file = d:\jack\oras_20091225.dmp
pause

 

 

一、下面是创建表空间,用户,给用户赋表空间,给用户赋一些必要的权限。
--创建数据表空间
create tablespace jack_data
logging
datafile 'D:\oracle\product\10.2.0\oradata\jack_data.dbf'
size 32m
autoextend on
next 32m maxsize 2048m
extent management local;
--创建用户并指定表空间
create user jack identified by jack
default tablespace jack_data;

--给用户授予权限

grant dba,connect,resource,CTXAPP,create view to jack;

 

 

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

 

 

二、下面是oracle数据库导出总结。

方案1、
1、先输入根目录,我的oracle放在了d盘所以先进入dos(cmd回车):
d: 回车

2、找到oracle里面的bin的路径位置
cd\oracle\product\10.1.0\db_1\BIN

3、看看里面的执行文件
\oracle\product\10.1.0\db_1\BIN>dir

4、开始到处:
\oracle\product\10.1.0\db_1\BIN> exp userid=scott/tiger@orcl tables=(emp) file=d:\emp.dmp


5、--只导用户中的表.要是想同时导出多个表的话,就在
tables=(emp,dept,等等) 就ok了。
exp userid=scott/tiger@orcl tables=(emp) file=d:\emp.dmp


6、导出用户包含(表,视图,序列,索引,函数......)
--导出一个用户(加不加 userid 都可以)
exp   userid=scott/tiger@orcl  owner=scott file=d:\total.dmp
exp          scott/tiger@orcl  owner=scott file=d:\total.dmp

如果用户要导出其它方案,则需要DBA的权限或是
exp_full_database的权限,例如system用户就可以导出其它方案
exp userid=system/manager@orcl owner=(system,scott,admin2,等等)  file=d:\system.dmp
exp        system/manager@orcl owner=(system,scott,admin2,等等)  file=d:\system.dmp

 

三、导入可以用plsql工具,很简单(这里就不说了,后期总结)。

 

 

四、基本语法和实例:

 

 

  1、EXP:
  有三种主要的方式(完全、用户、表)
  1、完全:
  EXP SYSTEM/MANAGER BUFFER=64000 FILE=C:\FULL.DMP FULL=Y
  如果要执行完全导出,必须具有特殊的权限
  2、用户模式:
  EXP SONIC/SONIC BUFFER=64000 FILE=C:\SONIC.DMP OWNER=SONIC
  这样用户SONIC的所有对象被输出到文件中。
  3、表模式:  
  EXP SONIC/SONIC BUFFER=64000 FILE=C:\SONIC.DMP OWNER=SONIC TABLES=(SONIC)
  这样用户SONIC的表SONIC就被导出
  2、IMP:
  具有三种模式(完全、用户、表)
  1、完全:
  IMP SYSTEM/MANAGER BUFFER=64000 FILE=C:\FULL.DMP FULL=Y
  2、用户模式:
  IMP SONIC/SONIC BUFFER=64000 FILE=C:\SONIC.DMP FROMUSER=SONIC TOUSER=SONIC
  这样用户SONIC的所有对象被导入到文件中。必须指定FROMUSER、TOUSER参数,这样才能导入数据。
  3、表模式:
  EXP SONIC/SONIC BUFFER=64000 FILE=C:\SONIC.DMP OWNER=SONIC TABLES=(SONIC)

 

 

  我要问的问题是?

 1、 EXP SONIC/SONIC  BUFFER=64000 FILE=C:\SONIC.DMP OWNER=SONIC
 2、  EXP SONIC/SONIC  BUFFER=64000 FILE=C:\FULL.DMP FULL=Y

   SONIC是DBA用户,这两句的导出有什么区别吗? 

答:有区别的,OWNER=SONIC 只导出自己的数据。而FULL=Y要导处SONIC用户下的说所用户。

      要是SONIC是个单独的用户,下面没有任何用户,SONIC具备DBA的权限。还有什么区别吗?

 

 

3、IMP SONIC/SONIC BUFFER=64000 FILE=C:\SONIC.DMP FROMUSER=SONIC TOUSER=SONIC
fromuser 是原来的用户,touser是要导入的用户!这样理解对吗?

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值