ORACLE11g将数据库内容全部复制,并将其加为本数据库的一个新实例

ORACLE11g将数据库内容全部复制,并将其加为本数据库的一个新实例,第1张

oracle数据数据是按用户来组织的,所以你说的“现有实例的表、表空间、存储过程等”,实际上应该是某个用户的对象;而你只需要将这个用户的对象导出,然后导入到一个新用户下去,就可以实现你的需求。你这里的“实例”实际上应该是用户的概念,而不是一个oracle实例。

做法是:expdp按用户导出数据,然后创建新用户,用impdp导入,导入的时候remap_schema即可。

不能一步到位。这样复制后,主键,索引只能是后期处理。

ALTER TABLE 表名 ADD Constraint PK_表名 Primary key(列名)

CREATE INDEX [tid_index] ON [dbo][tb_test]([tid])

Oracle 9/10

可以使用 exp 导出 Imp 导入

===== 导出、导入 单个表的情况。

导出 TEST_MAIN,TEST_SUB 这2个表

EXP test/test@源数据库 file=testdmp tables=(TEST_MAIN,TEST_SUB)

导入 TEST_MAIN,TEST_SUB 这2个表

IMP test2/test2@目标数据库 file=testdmp tables=(TEST_MAIN,TEST_SUB)

==============================

Oracle 10g 开始, 新增数据泵工具 导出导入 的工具

前面需要一些 环境配置

数据泵工具导出的步骤:

1、创建DIRECTORY

create directory dir_dp as 'C:/OracleData'

2、授权

Grant read,write on directory dir_dp to obpos;

EXPDP 按表导出:

EXPDP obpos/obpos tables="OBPOS""ROOM","OBPOS""ROOMBOOKD" dumpfile=expdp_Roomdmp logfile=expdp_Roomlog directory=dir_dp job_name=my_job

授权

Grant read,write on directory dir_dp to test;

IMPDP 按表导入:

impdp obpos/obpos dumpfile=obposdmp logfile=obposlog directory=dir_dp tables=MR_USER job_name=my_job

sql1=insert into table1(a, b, c) select d,e,f from table2

sql2=insert into table1 select from table2

table1 为新表 table2 为要复制的表

sql1 复制几个字段 字段类型必须相同

sql2 为复制全部字段

以上就是关于ORACLE11g将数据库内容全部复制,并将其加为本数据库的一个新实例全部的内容,包括:ORACLE11g将数据库内容全部复制,并将其加为本数据库的一个新实例、如何把数据库中某个表中的数据与结构(包括主外键,索引)全部复制到另一张表中、oracle 如何复制大数据量的数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9457833.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存