oracle数据库怎么把一个库里面的数据导入到另外一个库

oracle数据库怎么把一个库里面的数据导入到另外一个库,第1张

怎么在oracle库复制数据到另外一个oracle库

: 1、exp导出表,然后imp导入表; 2、两个数据库之间连接使用DBLink,在其中一个数据库里就可以访问另一个数据库的表了。

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

2千万条的话不能直接使用create table as select

先建一样结构的表。然后用append参数

非归档模式下:

insert /+append/ into a select from b;

归档模式下:

insert /+append/ into a nologging select from b;

前两天我刚刚研究了下这个问题 希望能对你有所帮助。

需要被复制到的用户有查询被导出用户的查询权限。

如system用户要将scott中的emp表导入其中,按如下方法:

1、登录scott用户。

2、给system用户赋予查询emp表的权限:

grant select on emp to system;

3、登录system用户。

4、执行以下语句:

create table emp as select  from scottemp;

语法格式:

CREATE TABLE table_name AS

SELECT FROM table_name;

通过子查询新建表,创建表的同时记录也加入~

子查询可以复杂,只有 NOT NULL 约束可以复制,其他约束自行添加~

谢谢~!

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

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

以上就是关于oracle数据库怎么把一个库里面的数据导入到另外一个库全部的内容,包括:oracle数据库怎么把一个库里面的数据导入到另外一个库、oracle 如何复制大数据量的数据、oracle怎么快速复制数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址:https://54852.com/sjk/9753402.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存