您的位置:首页 > 数据库 > Oracle

用数据泵导入/导出Oracle数据库

2017-03-15 17:05 330 查看
今天下午在大牛的帮助下解决完oracle的tns连接问题后,就要把oracle的数据库搬到另外一个服务器上。原来以为比较简单,还是遇到了一些问题,再次感谢大牛琪琪,记录一下。

1. 使用数据泵导出命令expdp将数据导出:

expdp user/psw@orcl schemas=schema dumpfile=user_expdp.dmp directory=DATA_PUMP_DIR version=10.2.0
在这个命令中,user是用户名,psw是密码,orcl是服务名,schema是表空间名。dumpfile=后面的是导出的文件名。directory=后面的是服务器上导出文件的路径。
注意1,在使用expdp命令之前,要检查一下DATA_PUMP_DIR这个变量是否存在,并且服务器上是否有这个文件夹。
注意2,这个命令后面带了一个version的参数,表示导出成什么版本的oracle数据库文件。在后面使用impdp命令导入这个文件的时候,也要加上同样的version=xxx

2. 将user_expdp.dmp文件拷贝到目标服务器上的DATA_PUMP_DIR文件夹中
检查DATA_PUMP_DIR这个变量,并将user_expdp.dmp文件拷贝到文件夹中

3. 使用数据泵导入命令impdp将数据导入新的oracle服务器:
impdp  user/psw@orcl DIRECTORY=DATA_PUMP_DIR DUMPFILE=user_expdp.dmp SCHEMAS=schema REMAP_SCHEMA=schema:schema version=10.2.0

注意,后面加上了version=的参数
这一步出了问题。根据错误提示,新的服务器上没有schema表空间,也没有user用户。所以需要在服务器上先创建schema表空间和user用户。
创建完成后,再次执行以上命令,数据导入,但有一个视图导入报错,不知道为什么。所以只能再用CREATE VIEW命令重新创建该视图。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  oracle 数据泵 expdp imp