note38:tdsql数据库迁移

news2024/11/16 13:37:07

数据迁移过程中遇到的具体问题:

①提供给系统团队的表结构与生产不一致,导致脚本报错。因为历史遗留问题,存在部分直接在生产环境更改字段长度或添加索引的情况,导致测试环境和生产环境的表结构不同步。

今后所有生产的变动,一定要先在开发测试环境同步。对数据迁移,需要再三确认并同步生产、开发测试表结构。

②oracle表没有主键,按照对业务场景的理解新加tdsql表联合主键的时候出现了数据重复或主键空值的情况。

需要在演练环境中用生产数据排查,最好新加自增主键,或者对业务背景非常熟悉。

③对新加自增主键的表,代码里用的是insert into (select from)格式,没有指明插入的字段,导致sql报错字段不匹配。Column count doesn’t match value count.

需要对java代码中sql语法等进行书写规范,避免出现select、insert不指明字段的情况。对数据迁移,需要对更改了字段的表再三确认、排查相关代码里是否有问题。

④表编码是utf8mb4_general_ci,出现了没有区分大小写的情况,应该改成utf8mb4_bin。ci 是 case insensitive,不区分大小写,即大小写不敏感,a和A会在字符判断中会被当做一样的。bin 是二进制, a 和 A 会别区别对待(例如运行SELECT * FROM table WHERE txt = 'a', 那么在utf8mb4_bin中就找不到 txt = 'A' 的那一行, 而 utf8mb4_general_ci 则可以)

需要系统团队建库时统一处理。

⑤慢sql较多。除了tdsql库本身的性能问题,还出现了没有提前预知的问题。

主键是默认走索引的,abc3个字段组成了联合主键,如果要索引生效,就必须带上a字段,但是我们很多场景是用b或c字段联表查询,这样联合主键的索引就不会生效,所以需要单独加索引。

部分Where exists(select * from where 索引字段)索引字段未生效,需改成union all。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2073425.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vulkan 学习(5)---- Vulkan 内存分配

目录 Overview枚举内存信息分配内存内存映射 Overview Vulkan 将内存管理的工作交给了开发者自己负责,如何分配内存,如何指定内存策略都是由开发者自己决定的,当然处理问题也是由开发者自己负责的 Vulkan 将内存划分为两大类:主…

Android自定义简单仿QQ运动步数进展圆环

实现效果主要效果分为三个部分: 1.固定蓝色的大圆弧 color borderWidth 2.可以变化的小圆弧(红色) color borderWidth 3.中间的步数文字 color textSize drawArc方法 startAngle 确定角度的起始位置 sweepAngle 确定扫过的角度 useCenter 是否使用中心&#xff1a…

MyBatis XML配置文件(下)

MyBatis的开发有两种方式:1、注解 2、XML。使用MyBatis的注解方式,主要是来完成一些简单的增删改查功能。如果需要实现复杂的SQL功能,建议使用XML来配置映射语句,也就是将SQL语句写在XML配置文件中。 MyBatis XML开发的方式需要以…

UE5学习笔记17-让人物的视线和鼠标移动时的方向一致,并且不让人物模型旋转,只改变视线方向

一、创建标准动画帧 1.我想让人物在装备武器后根据鼠标的移动方向改变人物的视线方向,并且人物模型不会改变朝向 2.我的动画中存在一个四个方向瞄准的动画,将左下,坐上,左转,右上,右下,右转&…

C++ 设计模式——组合模式

C 设计模式——组合模式 C 设计模式——组合模式1. 主要组成成分2. 逐步构建透明组合模式1. 定义抽象组件(Component)2. 实现叶子组件(Leaf)3. 实现组合组件(Composite)4. 主函数(Main&#xff…

Nacos踩坑

最近遇到项目部署,遇到Nacos中的配置读取不到,导致服务起不来。服务器银河麒麟x86,Nacos版本2.3.2, openJdk8u43 报错如下: java.lang.UnsatisfiedLinkError: no com_alibaba_nacos_shaded_io_grpc_netty_shaded_netty_transport…

Linux磁盘操作之du命令

使用du命令,您可以查看指定目录或文件的磁盘使用量总计。这对于了解特定目录或文件占用的磁盘空间大小非常有用,可以帮助您进行磁盘空间管理和清理。 参数说明 du是一个用于显示目录或文件的磁盘使用情况的命令,du是disk usage的缩写&#…

从图像到视频:Web Codecs API编码技术解析

初探Web Codecs API 三 前言 在之前的文章中,咱们简单的介绍了解码相关的东西,这一节咱们来简单聊聊编码相关的东西。 编码的目的就是为了压缩,去除空间、时间维度的冗余。 这里又不得不提起前面所说的I 帧、P 帧、B 帧和 IDR 帧。 众所周知,视频是连续的图像序列,由…

【添加核心机械臂动力学】Model and Control a Manipulator Arm with Robotics and Simscape

机械臂动力学 为了设计控制器,机械臂动力学必须表示给定力矩输入的关节位置。这在机械臂动力学子系统中通过一个前向动力学块实现,该块将关节力矩转换为给定当前状态的关节加速度,然后通过两次积分得到完整的关节配置。积分器初始化为q0和dq…

自闭症托管托养机构:星贝育园的优势与使命

在当今社会,自闭症儿童作为一群需要特别关注和照顾的群体,其教育与康复问题日益受到社会各界的重视。自闭症托管托养机构作为这一领域的重要力量,承担着为自闭症儿童提供全方位、个性化支持的重任。星贝育园,作为一所全日寄宿制的…

使用libsvm时遇到MATLAB has encountered an internal problem and needs to close

最近在MATLAB中使用libsvm跑别人的程序,该程序在大部分数据集上可以正常运行,但在有一个数据集上运行时MATLAB会报“MATLAB has encountered an internal problem and needs to close”的错误: 凭直觉猜应该是数据集有啥问题,但又…

AI人的列表!《中国人工智能学会推荐国际学术会议和国际/国内期刊目录》正式发布

在全球科技迅猛发展的今天,人工智能(AI)已成为推动社会进步的关键力量。为了更好地指导AI领域的科研方向,加强学术交流,促进学术成果的创新与应用,中国人工智能学会(CAAI)在2024年8月…

数据分析案例-2024年裁员数据集可视化分析

🤵‍♂️ 个人主页:艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞&#x1f4…

XFTP软件的使用 ---- 远程上传、下载文件

本文假设你的电脑里面已经有XFTP软件。 一、简介 是一个基于 windows 平台的功能强大的SFTP、FTP文件传输软件。通过Xftp软件,windows 用户能安全地在UNIX/Linux 和 Windows PC 之间传输文件。 二、 使用方法【步骤】 打开软件,得到如下图界面。 首先我…

STL--unordered_set和unordered_map的模拟实现

1.unordered系列关联式容器 在C98中,STL提供了底层为红黑树结构的一系列关联式容器,在查询时效率可达到,即最差情况下需要比较红黑树的高度次,当树中的节点非常多时,查询效率也不理想。最好的查询是,进行很…

如何使用ssm实现基于java斗车交易系统设计与实现+vue

TOC ssm082基于java斗车交易系统设计与实现vue 系统概述 1.1 概述 随着社会的快速发展,计算机的影响是全面且深入的。人们的生活水平不断提高,日常生活中人们对斗车交易方面的要求也在不断提高,需要咨询的人数更是不断增加,使得…

OpenCV 图像处理基础算法介绍c++

VS2022配置OpenCV环境 关于OpenCV在VS2022上配置的教程可以参考:VS2022 配置OpenCV开发环境详细教程 图像处理 图像处理是一个广泛的领域,它涉及到对图像数据进行分析、修改和改进的各种技术。以下是一些基本的图像处理操作,这些操作通常可…

模型 蒂蒙斯创业过程

系列文章 分享 模型,了解更多👉 模型_思维模型目录。机会、团队、资源:创业成功的三角。 1 蒂蒙斯创业过程的应用 1.1 京东:蒂蒙斯模型下创业成功的典范 京东是中国知名的电子商务平台,其早期发展阶段充分体现了蒂蒙…

接口基础知识12:cookie、session和token

​课程大纲 ‌Cookie、Session和Token是Web应用中常用的身份验证和会话管理机制,各有特点,适用于不同的应用场景。 一、Cookie 1.1 什么是Cookie Cookie是存储在客户端浏览器中的小段数据,通常用于存储用户偏好设置或用于跟踪用户活动。 C…

51单片机——数码管控制

1、数码管介绍 LED数码管:数码管是一种简单、廉价的显示器,是由多个发光二极管封装在一起组成“8”字型的器件。 2、数码管驱动方式 单片机直接扫描:硬件设备简单,但会耗费大量的单片机CPU时间 专用驱动芯片:内部自…