zoukankan      html  css  js  c++  java
  • 数据迁移笔记

     
    [数据迁移前的准备]
    1.将两个数据库中对应的表的基本数据一一对应,总结在excel文档中--映射关系表。
    (1).对于某些特殊数据,新旧系统的处理方式可能不一致,如flg类字段的0,1,2...分别对应的值是否一致;旧系统多个字段对应新系统一个字段的情况。
    (2).对于某些数据,在旧系统中需要关联多张表才可以获取数据,将关联到的表登记下来。
    (3).[前处理]在新旧系统中的字段类型不同,如日期,可以做相应的转换;字段大小不同,先将新系统中的字段扩大。
    (4).[前处理]有些数据在新旧系统的页面都不再展示,但数据却仍然希望保留,需先在新系统表中增添相应字段
     
    2.通过映射关系中的对应关系写出对应数据的sql.
     
    [数据迁移的实施]
    3.迁移数据   [可先在测试环境试迁移,得出低bug的sql,再到实际环境中执行]
    (1).将映射关系表文档中涉及到的表数据从旧系统中导出,在新数据库中建立相同表并将数据导入其中。
    (2).直接执行对应sql.
    (3).执行过程中一般会出现如下问题:
    [不能插入null],[原因:系统数据默认值处理不同].
    [字段值过大],[原因:新系统数据未扩大; Date型数据没有处理,需加TO_CHAR]
    [非法的number],[这个数据库不会告诉你是哪个字段,很恶心。原因:某个字段旧系统中是char或varchar型,新系统为number型;某个number型字段处理默认值null时,NVL函数中的默认值写了空格' ';DATE型数据看看是否未处理完]
     
    [数据迁移后的校验]
    4.导入数据后由于数据量增多,需添加相应的索引,提高页面的查询效率,[对于查询条件,表关联条件]
    CREATE INDEX  I1_CMMTPCOP ON CMMTPCOP (REGION_ID);
    建立索引时,虽然有些数据作为查询条件,但是取值单一,不应该作为索引,如只有(0,1)值的状态类字段。
     
    5.对于新系统的新的处理方式做相应的数据修改,这次案例主要有生效日期和失效日期的数据补全
     
    6.编码问题
    此次案例为日本的项目,客户的环境为Shift-JIS编码格式,我们将数据在远程全部正常导入后,页面仍然出现问题,报错为:JSON数据异常。查看后台日志打印的ETF树数据后,发现仍然有很多数据为?,被后台解析为乱码的正是一些特殊字符,如全角的-,带圈数字,株式会社的(株) 的特殊字符 、(有)等等,后台的编码已经改为Shift-JIS,半角片假名也可以识别,但是这些字符,还不能识别,具体原因暂未得知。我们的小组长将这些字符在数据库中都替换为普通字符串后,页面正常显示。  
     
    7.对于特殊数据的验证
    对于系统中敏感重要的数据如[手续费率]需要验证

     原创:http://www.cnblogs.com/wulouhua/p/4528554.html

  • 相关阅读:
    将js进行到底:node学习1
    mui开发app前言(一)
    用kotlin方式打开《第一行代码:Android》之开发酷欧天气(最终版)
    用kotlin方式打开《第一行代码:Android》之开发酷欧天气(2)
    用kotlin方式打开《第一行代码:Android》之开发酷欧天气(1)
    062、如何使用flannel host-gw backend(2019-04-02 周二)
    061、flannel的连通与隔离(2019-04-01 周一)
    060、在docker中使用flannel(2019-03-29 周五)
    059、安装配置flannel(2019-03-28 周四)
    058、flannel概述(2019-03-27 周三)
  • 原文地址:https://www.cnblogs.com/wulouhua/p/4528554.html
Copyright © 2011-2022 走看看