数据迁移部分问题总结(r2第3天)

按照计划在周二开始了数据迁移,本来之前也做了不少的准备工作。但是还是在迁移的过程中出现了一些问题。简单做一个总结。 1.constraint导致的数据reject 在数据加载的时候,报了如下的错误。有一些数据记录被reject了,查看后发现是源库和目标库中表的not null constraint导致的,在源库中没有not null constraint,但是在目标库中有。 这个问题只能和开发做确认,稍后处理。

records from TESTDATA_HIST
cannot insert NULL into ("XXXXX"."TESTDATA_HIST"."TOT_OBJ")

2.foreign key 导致的constraint enable 在数据加载之前,对于foreign key都做了diable的操作,在加载的过程中也没有出现任何问题。但是在enable foreign key的时候,报了02298的错误。

ERROR at line 1:
ORA-02298: cannot validate (XXXXX.CH_XXXX_1FK) - parent keys not found
alter table CH_XXXX enable constraint CH_XXXX_1FK 

这个问题,先做了constraint novalidate,交给开发去检查数据。

3.关于datapump加载一个较大的表,含有clob字段,数据5000万条

impdp xxxx/xxxx file=exp_test.dmp logfile=imp_test.log TABLE_EXISTS_ACTION=APPEND CONTENT=DATA_ONLY REMAP_SCHEMA=CNVDBO8:XXXX REMAP_TABLESPACE=LARGE_DATA:DATAS01

因为这部分是由另外一个dba来做的,他没有使用nohup方式,结果到半夜的时候,远程的网络重启了。收到了下面的信息,这确实有些崩溃。 Broadcast Message from uxadmin3 (pts/8) Wed Jun 11 01:08:29...

PLEASE LOG OFF NOW ! ! ! System maintenance about to begin. All processes will be terminated in 0 seconds. Broadcast Message from uxadmin3 (pts/8) Wed Jun 11 01:08:29... SYSTEM BEING BROUGHT DOWN NOW ! ! ! Connection to 10.196.28.42 closed by remote host. Connection to 10.196.28.42 closed.

然后等网络好了之后,重新开始。在跑了1个多小时后报了乳腺癌的错误,就退出了。

ORA-31693: Table data object "XXXX"."TEST":"PMAX_AMAX_EMAX" failed to load/unload and is being skipped due to error:
ORA-00001: unique constraint (XXXX.TEST_PK) violated
Job "XXXXX"."SYS_IMPORT_FULL_01" completed with 1 error(s) at 02:34:33

可见数据可能有问题,根据我们的理解在datapump运行的过程中,如果突然中断,是直接rollback的。 但是数据现在都导不进去。最后使用了如下的选项,又是一个漫长的过程,这个时候对datapump也算是有一些心理煎熬了。

DATA_OPTIONS=SKIP_CONSTRAINT_ERRORS

这次启用了nohup方式,在远程网络中断,后台依然在进行。

Starting "XXXXX"."IMPDP_MEMO": XXXXX/******** directory=DR_DATAPUMP_1 dumpfile=exp_mo1_memo.dmp logfile=imp_mo1_memo.log TABLE_EXISTS_ACTION=APPEND CONTENT=DATA_ONLY REMAP_SCHEMA=CNVDBO8:PRDAPPO REMAP_TABLESPACE=LARGE_DATA:DATAS01 parallel=6 DATA_OPTIONS=SKIP_CONSTRAINT_ERRORS JOB_NAME=impdp_memo
Processing object type TABLE_EXPORT/TABLE/TABLE_DATA
Write failed: Broken pipe

在煎熬了3个小时候,终于有了下面的一段话。对于reject的数据也根据主键信息罗列了出来。

imported "XXXXX"."MO1_MEMO":"PMAX_AMAX_EMAX" 11.89 GB 52646187 out of 53020364 rows

 Rejected row #1043:
   column APP_ID: 1000
   column ENTITY_KEY: 1
   column PERIOD_KEY: 2
   column MEMO_ID: 34141901
。。。。。。

4.sequence检查对于sequence的检查也是数据迁移的重中之重,在最后的检查中,尽管之前的sequence的值做了一个很大的buffer,胆识还是有一些sequence的问题。

TABLE_NAME

SEQ_NAME

SEQ_MAX

COLUMN_MAX

sequence_1

EXTRACT_FILE_SEQ

22144093

22044092

sequence_2

RC_RATES_1SQ

20462516

20362515

sequence_3

MNTR_TREAT_1SQ

22592118

22492117

原文发布于微信公众号 - 杨建荣的学习笔记(jianrong-notes)

原文发表时间:2014-06-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java技术

并发控制中的乐观锁与悲观锁

在多用户环境中,在同一时间可能会有多个用户更新相同的记录,这会产生冲突。这就是著名的并发性问题。

1047
来自专栏PHP技术

MySQL初始配置调优

随着 大量默认选项的改进, MySQL 5.6比以前版本需要调优的选项大为减少。 在本文中我将讲述需要优化的配置项。   InnoDB设置   innodb_b...

4076
来自专栏杨建荣的学习笔记

一个SQL性能问题的优化探索(二)(r11笔记第38天)

继续前几天的一个案例一个SQL性能问题的优化探索(一)(r11笔记第33天) 如下的SQL语句存在索引字段CARD_NO,但是执行的时候却走了全表扫描,因为这是...

3308
来自专栏杨建荣的学习笔记

通过shell定制ash脚本(r3笔记第33天)

ash是在10g以来一个很有用的特性,能够作为awr的补充,对于排查一些历史的问题能够提供更加详细和针对性的数据。 当然个人在使用ash的时候感觉最慢的地方就是...

2984
来自专栏PHP技术

MyISAM InnoDB 区别

 MyISAM 和 InnoDB 讲解   InnoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应用而定。基本的...

3335
来自专栏逸鹏说道

不同场景下 MySQL 的迁移方案

不同场景下 MySQL 的迁移方案 一 目录 一 目录 二 为什么要迁移 三 MySQL 迁移方案概览 四 MySQL 迁移实战 4.1 场景一 一主一从结构迁...

3198
来自专栏数据和云

性能为王:SQL标量子查询的优化案例分析

黄廷忠(网名:认真就输) 云和恩墨技术专家 个人博客:http://www.htz.pw/ 本篇整理内容是黄廷忠在“云和恩墨大讲堂”微信分享中的讲解案例,S...

3365
来自专栏睿哥杂货铺

操作系统原理:How Linux Works(三):Memory

内存是计算机中与CPU进行沟通的桥梁,用于暂时存放CPU中的运算数据。Linux 内核的内存管理机制设计得非常精妙,对于 Linux 内核的性能有很大影响。在早...

1888
来自专栏开源优测

TCP/IP协议基础

TCP/IP 为网际协议族 IP或ICMP、TCP或UDP、TELNET或FTP、以及HTTP都属于TCP/IP

951
来自专栏微服务生态

小程聊微服务-数据抽取那点事(一)

我们在《微服务是在双刃剑 http://www.jianshu.com/p/82ec12651d2d 》中提到了当我们将应用服务化以后,很多在单块系统中能够开展...

742

扫描关注云+社区