| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> Oracle数据泵+dblink复制schema(同库异库适用) -> 正文阅读 |
|
[大数据]Oracle数据泵+dblink复制schema(同库异库适用) |
使用impdp+databaselink可以在同一个数据库内,或不同数据库(可能版本不同)间复制schema(一个用户下的所有对象,Oracle中schema和用户是一个概念),下面记录复制过程。 1、了解源schema的相关信息用户名、密码、表空间。通常场景是,将一个schema的所有对象复制到另一个schema,目的schema的所有对象要放到一个新的表空间,源schema和目的schema的名称和表空间名称都不同。 根据需要决定目标schema的数据所在表空间,可选方案有: a)如果是同库复制,可以不为目标schema创建表空间,这样,源schema的对象在哪个表空间,目的schema的对象就在哪个表空间。 b)创建一个新的表空间,目的schema的所有对象都放在这个表空间里。 c)源schema的对象可能放在多个不同的表空间里,为目的schema创建多个对应表空间。 d)占用表空间的对象包括表、索引,可以用下面SQL查看源schema的表和索引都在哪些表空间里。
2、创建目标用户和表空间在同库或目标库创建用户和表空间:
3、在目标数据库,创建到源数据库的TNS连接项如果是同库,tnsnames.ora里面应该已存在连接到自己的名字,例如:
测试连接
4、在目的数据库中,创建到源数据库的dblink
? 5、impdp+dblink导入在目的数据库上执行下面命令导入:
schemas=suanlitest? -- 导出源数据库用户suanlitest下的所有对象(表、索引、约束、序列、存储过程等等) exclude=statistics,grant -- 不导出统计数据和grant,统计数据可以导完后再生成。我排除grant是因为出错,也许应该导出grant。 remap_schema=suanlitest:nmpaassunli -- 源用户(schema)到目的用户的映射 remap_tablespace=suanlitest:nmpaassunli,tab_paastest:nmpaassunli,paas2:nmpaassunli? --? 源表空间到目的表空间的映射,例如这里,原来表空间suanlitest、tab_paastest、paas2里的对象都复制到nmpaassunli用户的nmpaassunli表空间里了,如果这个配置项没有,新的nmpaassunli用户的对象还会复制到suanlitest、tab_paastest、paas2表空间里。 如果导入时报权限相关的错误,可能需要在源给用户赋权,例如在源数据库执行下:
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年3日历 | -2025/3/4 6:15:19- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |