ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

Oracle数据库下将一个用户下所有表备份到另一个用户

2021-02-04 12:35:58  阅读:228  来源: 互联网

标签:gs dump 备份 导出 用户 dev cs Oracle ds


1.需求
开发环境ds用户下有很多历史冗余表,但可能有的表是游泳的,不能贸然删除,所以需要将ds下的表都备份到ds_dev用户下,这样万一删除ds中有用表后还可以再根据备份进行恢复。

2.实施
a.使用expdp/impdp数据泵导入导出
导出命令:expdp cs_gs_ds/cs_gs_ds directory=expdir tables=tab_a,tab_b dumpfile=csgsds%U.dump logfile=csgsds_expdp.log parallel=4;
其中cs_gs_ds/cs_gs_ds登陆本机数据库
directory导出目录:指定导出的dump文件及日志文件的路径 create directory expdir as '/csdata/oradata2/orcl/';
tables导出的表清单
dumpfile导出dump文件名,当开启并行也就是parallel时要保证并行个数要小于等于dump文件个数,命名dumpfile时可以用%U.dump,%U可以根据并行个数自动生成dump文件(csgsds01.dump,csgsds02.dump,csgsds03.dump,csgsds04.dump)
logfile导出日志,不用创建会自动生成
parallel并行,可以加快导出效率,并行个数要小于等于dump文件个数
导入命令:impdp cs_gs_ds/cs_gs_ds directory=expdir tables=tab_a,tab_b remap_schema=cs_gs_ds:cs_gs_ds_dev remap_tablespace=cs_gs_ds:cs_gs_ds_dev dumpfile=csgsds%U.dump logfile=csgsds_impdp.log parallel=4 TABLE_EXISTS_ACTION=replace
其中cs_gs_ds/cs_gs_ds 要有对cs_gs_ds_dev用户和cs_gs_ds_dev表空间的操作权限
directory需要导入的dump包的路径,此次导入是在同一个库中导出导入所以directory路径没变
remap_schema:导入时将cs_gs_ds用户映射成cs_gs_ds_dev
remap_tablespace:同上
dumpfile:可用%U模糊匹配
TABLE_EXISTS_ACTION:目标库中已存在要导入的表时可以选择:skip,replace,append,truncate
3.问题:
/home/oracle下的.bash_profile没生效,source一下

标签:gs,dump,备份,导出,用户,dev,cs,Oracle,ds
来源: https://www.cnblogs.com/patrick2020/p/14371941.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有