Oracle 数据库导入导出(imp/exp)
2017-01-17 16:42
411 查看
大多情况都可以用Oracle数据导入导出完成数据的备份和还原(不会造成数据的丢失)。导入和导出分别使用imp和exp两种命令,这些命令可以在cmd窗口下运行。
导入命令:imp usename/password@SID full=y file= d:\data\xxxx.dmp ignore=y。其中usename/password是你创建的用户名,@SID是你的数据库名称,比如使用的oracle 11g默认创建数据库名称是orcl,full=Y是指全部导入,ignore=y也是有用处的,假如你的数据库第一次没有导入成功,再没有完全删除它的情况下第二次导入会出现无法导入的错误,此时加入ignore=y这条语句后可以正常导入,正常情况下可以不用输入ignore=y这条命令。
示例:imp c##scott/tiger@orcl file=F:\智能配电网-大数据\SDCXFX_20161216.DMP full=y
导入\导出的基本语法和实例:
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)
这样用户SONIC的表SONIC就被导入。
密码输入注意事项:
如果你的密码中包含特殊字符,在Windows下就需要用三个双引号扩起来,如:
exp skytf/"""#$adf`%6^=dfom"""@skytf buffer=52428800 file=skytf.dmp
如果是在Linux系统下,则密码用一对双引号, 整体userid和password用对单引号括住,如:
exp 'skytf/"?`}:=*H"@skytf'"<akJWI-q-@#<>?`}:Q*H"@skytf' DIRECT=Y buffer=52428800 FEEDBACK=10000 statistics=none file=skytf.dmp
密码中包含特殊字符的使用,具体请看《Oracle密码中含有特殊字符时exp,imp的使用》文章
注意事项:
1.如果加上“full=y”,将整个数据库全部导出,需要特殊的权限(具体什么权限没研究过),一般用system用户就足够了,普通用户是不可以的
2.不加“full=y”,默认导出连接数据库的用户数据库对象,比如:exp aaa/abc@oracle file=a.dmp,导出aaa模式下的所有数据库对象
3.你说的有多个用户,可以使用system来指定导出哪个用户的数据库对象,比如:exp aaa/abc@oracle file=a.dmp owner=(bbb,ccc),普通用户是不可以指定owner的
4.数据有多个实例的情况,这个要看你“@”后面是什么,如果@oracle,则在oracle实例上进行导出,@ora,则在ora实例上进行导出
FULL 导出整个数据库 默认是禁止的
不加的就是不导出整个数据库 只导出该用户下的数据 那么bbb用户的数据就不会导出来。
导入命令:imp usename/password@SID full=y file= d:\data\xxxx.dmp ignore=y。其中usename/password是你创建的用户名,@SID是你的数据库名称,比如使用的oracle 11g默认创建数据库名称是orcl,full=Y是指全部导入,ignore=y也是有用处的,假如你的数据库第一次没有导入成功,再没有完全删除它的情况下第二次导入会出现无法导入的错误,此时加入ignore=y这条语句后可以正常导入,正常情况下可以不用输入ignore=y这条命令。
示例:imp c##scott/tiger@orcl file=F:\智能配电网-大数据\SDCXFX_20161216.DMP full=y
'IMP HELP=Y' 获取帮助信息提示
导入\导出的基本语法和实例:
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)
这样用户SONIC的表SONIC就被导入。
密码输入注意事项:
如果你的密码中包含特殊字符,在Windows下就需要用三个双引号扩起来,如:
exp skytf/"""#$adf`%6^=dfom"""@skytf buffer=52428800 file=skytf.dmp
如果是在Linux系统下,则密码用一对双引号, 整体userid和password用对单引号括住,如:
exp 'skytf/"?`}:=*H"@skytf'"<akJWI-q-@#<>?`}:Q*H"@skytf' DIRECT=Y buffer=52428800 FEEDBACK=10000 statistics=none file=skytf.dmp
密码中包含特殊字符的使用,具体请看《Oracle密码中含有特殊字符时exp,imp的使用》文章
注意事项:
1.如果加上“full=y”,将整个数据库全部导出,需要特殊的权限(具体什么权限没研究过),一般用system用户就足够了,普通用户是不可以的
2.不加“full=y”,默认导出连接数据库的用户数据库对象,比如:exp aaa/abc@oracle file=a.dmp,导出aaa模式下的所有数据库对象
3.你说的有多个用户,可以使用system来指定导出哪个用户的数据库对象,比如:exp aaa/abc@oracle file=a.dmp owner=(bbb,ccc),普通用户是不可以指定owner的
4.数据有多个实例的情况,这个要看你“@”后面是什么,如果@oracle,则在oracle实例上进行导出,@ora,则在ora实例上进行导出
FULL 导出整个数据库 默认是禁止的
不加的就是不导出整个数据库 只导出该用户下的数据 那么bbb用户的数据就不会导出来。
相关文章推荐
- 用exp_imp远程操作数据库,附帶Oracle数据导入导出imp/exp詳解
- Oracle exp/imp导出导入命令及数据库备份
- oracle客户端备份导入导出数据库(exp,imp)
- 用exp_imp远程操作数据库,附帶Oracle数据导入导出imp/exp詳解
- Oracle exp/imp导出导入命令及数据库备份
- Oracle用imp和exp导入导出数据库
- Oracle 数据库导出(exp)导入(imp)说明
- 用exp_imp远程操作数据库,附帶Oracle数据导入导出imp/exp詳解
- oracle数据库文件中的导入/导出(imp/exp命令)
- Oracle 数据库导出(exp)导入(imp)说明
- Oracle 数据库导出(exp)导入(imp)说明
- Windows DOS窗体下Oracle 数据库的导入导出(IMP/EXP)命令
- Oracle 中用 imp 和 exp 命令导入导出数据库(附问题及解决办法)
- Oracle 多实例环境数据库的导入导出(imp exp)
- Oracle 中用 imp 和 exp 命令导入导出数据库(附问题及解决办法)
- 用exp_imp远程操作数据库,附帶Oracle数据导入导出imp/exp詳解
- 运用exp 导出oracle数据与 运用imp 将dmp格式数据导入数据库
- oracle数据库文件中的导入/导出(imp/exp命令)
- Oracle 数据库导出(exp)导入(imp)说明
- oracle数据库文件中的导入/导出(imp/exp命令)详解