首页 > 数据库 > mysql教程 > 不落地数据导入导出

不落地数据导入导出

WBOY
发布: 2016-06-07 16:10:21
原创
1421 人浏览过

这种情况一般就是本机磁盘空间不够,但是有些数据需要迁移。昨天就遇见这么一个情况: 一朋友需要将一个400GB的日志表从10g数据导入到11g中,但是因为10g数据库所在主机磁盘空间不够所以才想不落地方式导出导入 这里给大家介绍两种方式: 1、network_link 2、

这种情况一般就是本机磁盘空间不够,但是有些数据需要迁移。昨天就遇见这么一个情况:

一朋友需要将一个400GB的日志表从10g数据导入到11g中,但是因为10g数据库所在主机磁盘空间不够所以才想不落地方式导出导入

这里给大家介绍两种方式:
1、network_link

2、pipe

先说第一种方式,需要配置tnsnames.ora 和创建dblink:

zbdba= 
(DESCRIPTION = 
(ADDRESS_LIST = 
(ADDRESS = (PROTOCOL = TCP)(HOST = zbdba)(PORT = 1521)) 
) 
(CONNECT_DATA = 
(SID = zbdba) 
) 
) 
登录后复制

创建dblink:

CREATE DATABASE LINK <database link name> CONNECT TO <remote database user name> IDENTIFIED BY <remote database password> USING &#39;<tnsname connect to remote>&#39; 
登录后复制

导出数据:

impdp zbdba/zbdba network_link=zbdba_link remp_schema=source_schema:target:shcema remap_tablespace=source_tablespace:target:tablespace
登录后复制

同时impdp 带network_link 导入

第二种方法:

source:
mknod /tmp/exp_pipe p
target:
mknod /tmp/imp_pipe p
配置两个机器的互信

dd if=/tmp/exp_pipe | ssh 192.168.56.42 dd of=/tmp/imp_pipe

然后打开另外一个窗口进行导入:

exp zbdba/zbdba file=/tmp/exp_pipe log=zbdba.log tables=zbdba
登录后复制


注意第一种方法在指定多个表的时候可能会出现bug



来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板