要执行exp或imp命令,首先:
1.看Oracle安装目录的bin目录下有没有 exp.exe和 imp.exe这两个文件,要不然可能无法执行这个命令的。
2.或者可以直接进username/pwd BUFFER=64000 FILE=D:orcldatatest_full201110241059.dmp OWNER=username
看能不能执行,如果可以,就不需要那2个文件。我的没有imp.exe,也可以导出。
exp,imp
基本语法和实例:
1、EXP:
有三种主要的方式(完全、用户、表)
1、完全:
EXP SYSTEM/MANAGER BUFFER=64000 FILE=/oracle/ora10/backup/FULL.DMP FULL=Y
如果要执行完全导出,必须具有特殊的权限.这里我试了用sys和system用户,都报错(但是sys和system用户,在pl/sql中都是可以以DBA身份登录的,此问题,暂时无解):
用户名: sys
口令:
EXP-00056: 遇到 ORACLE 错误 28009
ORA-28009: connection as SYS should be as SYSDBA or SYSOPER
用户名: system
口令:
EXP-00056: 遇到 ORACLE 错误 1017
ORA-01017: invalid username/password; logon denied
2、用户模式:(一般用用户模式就可以了)
EXP username/pwd BUFFER=64000 FILE=D:orcldatatest_full201110241059.dmp OWNER=username
这样用户username的所有对象被输出到文件中。( 注意:相对路径用/,绝对路径用)
3、表模式:
EXP SONIC/SONIC BUFFER=64000 FILE=/oracle/ora10/backup/SONIC.DMP OWNER=SONIC TABLES=(SONIC)
这样用户SONIC的表SONIC就被导出
2、IMP:
具有三种模式(完全、用户、表)
1、完全:
IMP SYSTEM/MANAGER BUFFER=64000 FILE=/oracle/ora10/backup/FULL.DMP FULL=Y
2、用户模式:
IMP SONIC/SONIC BUFFER=64000 FILE=/oracle/ora10/backup/SONIC.DMP FROMUSER=SONIC TOUSER=SONIC
这样用户SONIC的所有对象被导入到文件中。必须指定FROMUSER、TOUSER参数,这样才能导入数据。
3、表模式:
EXP SONIC/SONIC BUFFER=64000 FILE=/oracle/ora10/backup/SONIC.DMP OWNER=SONIC TABLES=(SONIC)