如何根据源端导出的schema,在目标端创建表与表空间

chenyc0123 2013-03-20 09:09:09
我要expdp用导出schema的方式导出某个schema下的所有对象,对象存在在不同的表与表空间里,目标端是一个空库,我得查找到源端导出文件都存在在哪些表与表空间里,并且根据查询的结果在目标端建立相应的表与表空间。
该脚本该如何编写?
...全文
486 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
linwaterbin 2013-03-21
  • 打赏
  • 举报
回复
打算用什么工具调用? 按 1 楼的取出后 在 命令行 impdp/expdp 直接导 不行吗?
chenyc0123 2013-03-21
  • 打赏
  • 举报
回复
顶起,在线等
chenyc0123 2013-03-21
  • 打赏
  • 举报
回复
引用 4 楼 linwaterbin 的回复:
打算用什么工具调用? 按 1 楼的取出后 在 命令行 impdp/expdp 直接导 不行吗?
我得先创建表空间啊 还有Dba_Segments这个表是什么啊
chenyc0123 2013-03-21
  • 打赏
  • 举报
回复
引用 7 楼 tangren 的回复:
Dba_Segments是一个系统视图 通过该语句可以得create tablespace ...的语句,可稍作修改(如数据文件路径)就可以在sql执行环境中执行。 先在目标空数据库创建表空间后,再用impdp导入 至于一些基础的东西,先买本基础的书系统学习一下。
我最后决定直接取出表空间名和大小 当个变量传到创建语句里了 没法用dblink 我也没法把语句直接传到过去 不过谢谢您了
tangren 2013-03-21
  • 打赏
  • 举报
回复
Dba_Segments是一个系统视图 通过该语句可以得create tablespace ...的语句,可稍作修改(如数据文件路径)就可以在sql执行环境中执行。 先在目标空数据库创建表空间后,再用impdp导入 至于一些基础的东西,先买本基础的书系统学习一下。
chenyc0123 2013-03-20
  • 打赏
  • 举报
回复
引用 1 楼 tangren 的回复:
SQL code?123456--1.按schema导出后,你不需要新建立表等对象,但要建立tablesapce--2.根据schema名称,得到其下对象所使用的表空间,进一步获取建立表空间的参考脚本SELECT to_char(dbms_metadata.get_ddl('TABLESPACE', tablespace_name)) FROM (SELECT DIST……
额 取出来的值怎么存 然后在后期调用啊?
chenyc0123 2013-03-20
  • 打赏
  • 举报
回复
引用 楼主 chenyc0123 的回复:
我要expdp用导出schema的方式导出某个schema下的所有对象,对象存在在不同的表与表空间里,目标端是一个空库,我得查找到源端导出文件都存在在哪些表与表空间里,并且根据查询的结果在目标端建立相应的表与表空间。 该脚本该如何编写? schema 脚本 ……
额 取出来的值怎么存 然后在后期调用啊?
tangren 2013-03-20
  • 打赏
  • 举报
回复
--1.按schema导出后,你不需要新建立表等对象,但要建立tablesapce
--2.根据schema名称,得到其下对象所使用的表空间,进一步获取建立表空间的参考脚本
SELECT to_char(dbms_metadata.get_ddl('TABLESPACE', tablespace_name))
  FROM (SELECT DISTINCT T.tablespace_name
          FROM Dba_Segments t
         WHERE t.owner = '大写schema名称');

17,082

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧