有时需要复制的数据库比较大,复制太慢,或容易出错。

数据库小,简单的 就没这么复杂了,直接导出dmp或用工具都可以。这篇是针对比较大,选择性复制,且复制总是失败的情况。

方法如下。

工具 sqldeveloper.

思路:先复制表和数据(选择性复制表数据),再复制视图,触发器序列等。以免触发器序列等对复制数据时造成干扰,导致复制失败。

1.

例:从A复制到B

建立源数据库连接 A

建立目标连接B

2.点击工具:数据库复制。

在此之前可以先在源数据库上查询下数据量比较大的表,

select segment_name, round(bytes/1024/1024/1024,3) g,segment_type
from user_segments
where segment_type = 'TABLE' or  segment_type = 'TABLE PARTITION' order by g desc

,或者自己知道哪些表大,没有必要copy,心中有数就行

3.

选择好A , 和 B 连接,

点击下一步

4.

只选择表,其它全部取消掉。

尤其是触发器和序列不要选,以免后边复制数据的时候 生成新的id(造成跟源数据id不一致)等等。

点击下一步。

5.这一步是复制上一步选择的项,表结构需要传输的数据量很小,可以直接下一步,当然也可以按名称模糊搜索选择性复制。

6.指定数据。根据前边sql查到的结果,结合实际情况可以把一些不想要的数据表排除掉。对象where字句可以指定复制符合where语句的数据。

7.确认一下源和目标数据库有没有选错,然后下 一步。直到复制完成(进度框最好不要点后台运行),中间若出是否继续提示框,一般直接选择是。

8.以上是第一大步。

下边复制剩余的DDL.

重复第一步,将复制数据选项去掉

9.选择除表以外的选项。数据库连接可能会通过触发器等的调用对链接目标数据库有影响,需小心,或复制下来后,处理下。

然后直接下一步直到最后复制完成。

注意事项:

1.源和目标连接不要搞反了。

2.复制数据过程中不要点后台运行,再弹出的进度框里可以查看进度。有的表复制特别慢,或复制不下来,那就要重新复制  在6步的时候 要将其排除除掉或特殊处理下。 (第一步的查询表大小的sql语句,基本可用。但有些表依然复制太慢,具体原因没细究。)
————————————————
版权声明:本文为CSDN博主「aoaa」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/keekaduo/article/details/84671323

oracle sqldeveloper选择性复制备份数据库的更多相关文章

  1. oracle使用expdp定时备份数据库

    目录 oracle使用expdp备份数据库 备份shell脚本 创建定时任务 oracle使用expdp备份数据库 备份shell脚本 #!/bin/sh #获取当前时间 BACKUPTIME=$(d ...

  2. oracle 备份数据库对象(存储过程PROCEDURE,FUNCTION,VIEW,TRIGGER...)

    开发过程中,需要不停的备份数据库对象, 特别是存储过程, 每次手动备份不免很低能啊 历经几次修改终于, 完美了,O(∩_∩)O哈哈~      (当然,你也可以再改简便一点~~~) select db ...

  3. Oracle如何实现创建数据库、备份数据库及数据导出导入的一条龙操作

    Oracle中对数据对象和数据的管理,无疑都是使用PL/SQL Developer来进行管理,该工具也提供给我们很多方便.快捷的操作,使得我们不再为Oracle本身丑陋.难用的UI而抱怨.由于我们一般 ...

  4. 通过SQL Server 2008数据库复制实现数据库同步备份

    SQL Server 2008数据库复制是通过发布/订阅的机制进行多台服务器之间的数据同步,我们把它用于数据库的同步备份.这里的同步备份指的是备份服务器与主服务器进行 实时数据同步,正常情况下只使用主 ...

  5. Oracle 【IT实验室】数据库备份与恢复之:如何对Oracle数据库文件进行恢复与备份

    任何数据库在长期使用过程中,都会存在一定的安全隐患.对于数据库管理员来说不能仅寄希望于计算机操作系统的安全运行,而是要建立一整套的数据库备份与恢复机制.当数据库发生故障后,希望能重新建立一个完整的数据 ...

  6. [转]Oracle如何实现创建数据库、备份数据库及数据导出导入的一条龙操作

    本文转自:http://www.cnblogs.com/wuhuacong/archive/2012/03/09/2387680.html Oracle中对数据对象和数据的管理,无疑都是使用PL/SQ ...

  7. oracle中导入导出数据备份数据库

    原文:oracle中导入导出数据备份数据库 数据库所在位置                         将数据导出到的文件名                    用户名 备份数据库 :exp c ...

  8. Oracle使用rman备份数据库时出现cannot reclaim的错误

    1. 按照<2 day DBA>中的guide,设置fast recovery area. SQL> ALTER SYSTEM SET DB_RECOVERY_FILE_DEST_S ...

  9. 【转】通过SQL Server 2008数据库复制实现数据库同步备份

    SQL Server 2008数据库复制是通过发布/订阅的机制进行多台服务器之间的数据同步,我们把它用于数据库的同步备份.这里的同步备份指的是备份服务器与主服务器进行实时数据同步,正常情况下只使用主数 ...

随机推荐

  1. TensorFlow学习笔记9-深度模型的优化

    深度模型的优化 回顾概念: 代价函数时训练集上损失函数的平均: \[J(\theta)=E_{(x,y)\sim \hat{p}_{data}}L(f(x;\theta),y) \tag{1}\] 引 ...

  2. Tensorflow实战 手写数字识别(Tensorboard可视化)

    一.前言 为了更好的理解Neural Network,本文使用Tensorflow实现一个最简单的神经网络,然后使用MNIST数据集进行测试.同时使用Tensorboard对训练过程进行可视化,算是打 ...

  3. java webservice - cxf使用总结 一

    1.创建maven项目 加入pom依赖 <dependency> <groupId>org.apache.cxf</groupId> <artifactId& ...

  4. [APIO 2010] [LOJ 3144] 奇怪装置 (数学)

    [APIO 2010] [LOJ 3144] 奇怪装置 (数学) 题面 略 分析 考虑t1,t2时刻坐标相同的条件 \[\begin{cases} t_1+\lfloor \frac{t_1}{B} ...

  5. Codeforces 475D 题解(二分查找+ST表)

    题面: 传送门:http://codeforces.com/problemset/problem/475/D Given a sequence of integers a1, -, an and q ...

  6. Django中orm的惰性机制

    那么首先要知道什么是ORM 专业化的角度来说:叫对象关系映射(Object-Relation Mapping)是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术. 那具体ORM是什么呢?:( ...

  7. addEventListener 的三个参数

    addEventListener 有三个参数:第一个参数表示事件名称(不含 on,如 "click"):第二个参数表示要接收事件处理的函数:第三个参数为 useCapture,本文 ...

  8. h5与app交互

    现在移动端 web 应用,很多时候都需要与原生 app 进行交互.沟通(运行在 webview中),比如微信的 jssdk,通过 window.wx 对象调用一些原生 app 的功能.所以,这次就来捋 ...

  9. 基于socket 实现单线程并发

    基于socket 实现单线程并发: 基于协程实现内IO的快速切换,我们必须提前导入from gevent import monkey;monkey pacth_all() 以为 gevent spaw ...

  10. linux Sersync 上配置客户端

    1.安装 Rsync 并配置相关权限 在 SERSYNC 上配置 RSYNC 客户端相关权限认证: [root@SERSYNC /]# yum install rsync -y [root@SERSY ...