oracle 从一个库导入另外一个库,Oracle 将一个库的数据导入到另一个库

本文介绍了如何在Oracle数据库中将一个库的数据安全地导入到另一个库,特别是在有数据冲突的情况下。通过建立数据库链接,执行查询以找出线上与本地数据库的差异,并使用SQL语句进行数据导入,确保不覆盖已存在的数据。同时,文章还提供了Oracle SQL的实用技巧,如获取当前时间、更改字段类型和创建索引。
摘要由CSDN通过智能技术生成

最新更新2011-9-28号。

最近的项目中遇到了一个棘手的问题,由于许多业务都是放在定时中执行,有一个需求是统计商户或者门店创建的活动效果,在近期的3.5版本做了很大调整,因此在新的统计方式需要兼容历史活动,所以得把所有的活动遍历统计一次。考虑到

上线当天晚上定时会跑得很慢,所以上级决定目前只将2011年5月1号之后创建的活动和5月1号前创建并且上线时仍有更新的活动。5月1号之前的活动等上线后,在一个新库中将数据跑出来,然后导入到线上库。如果线上库已经存在的数据,就不能导入。因为以线上环境的数据为准。今天将2011年1月1号到5月1号之间的活动数据在新库上跑出来了,线上已经存在的数据,是5月1号前创建并且在8月18号上线新版本后仍有更新的活动,这一部分数据不能覆盖,以线上的为准。

先建立链接,连接到线上的数据库服务器,具体操作如图所示,别名ntow,然后输入用户名,密码

4c869e2966f00fb2dfe166e12e2d9f1d.png

在完成这个任务时,做了数据验证。

将一个数据库上的analysis_invest_profit_store表中的数据导入

--到线上数据库的analysis_invest_profit_store表中。要求:线上已经存在

--的数据不可覆盖。 表analysis_invest_profit_store主键

--是marketingid,coupontypeid和storeid组合的主键

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
复制,顾名思义就是将数据中的数据拷贝到不同物理地点的数据中。 在很多生产环境中,经常遇到一些大量得数据,这些数据只用作查询统计功能。例如:历史告警,历史性能指标,历史事件,等等。这种数据的特点是:只读不写,数据量相当大,一旦查询大结果集的数据时,对数据的IO,内存缓存占用相当大,会严重影响同一个数据的其他会话的操作,表现为整个数据反应迟缓,业务功能不可用。采用复制技术后,将这些大型数据复制到另外一个数据中,对这些大数据的查询统计操作放在另外的一台数据服务器上进行,即使受影响,也只是影响局部的查询统计功能,其他正常的业务处理不受影响。 但是,使用复制技术的话,意味着一个系统中,至少存在两个数据(集群的数据也当成一个数据),对应的应用程序也需要建立多个数据连接,能够根据业务需要,访问不同的数据ORACLE数据自身提供有复制功能,只需要进行配置即可实现。 ORACLE提供有三种复制技术: 高级复制(Advanced Replication) 流复制(Streams Replication) 备(Dataguard) 备的方式,就是数据数据的备份方式,主要是解决容灾的,不讨论此话题。 流复制主要是利用ORACLE的归档日志,进行增量备份来实现的,不仅可以配置只复制某些表,还可以配置仅复制某些表上的ddl或dml。可以复制到表,用户,数据级别。 高级复制主要是基于触发器的原理来触发数据同步的,因此,高级复制无法实现用户,数据级别的对象复制,只能做些表、索引和存储过程的复制。 如果出于容灾整个数据的考虑,高级复制相当复杂,而且并不一定能做好,流复制的配置相对简单。流复制是后来产生的复制技术,是基于日志挖掘技术实现的,对数据的影响较低。但在稳定性方面较差,实时性没有高级复制强(因为高级复制是基于触发器的)。如果系统意外的话,流复制的恢复将会需要较长时间,特别是意外时间越长,恢复时间成倍增长。 下面使用相同的环境,分别对两种复制功能进行配置介绍,并进行性能压力测试比较。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值