[数据库迁移]-MySQL常见问题
[数据库迁移]-MySQL常见问题
森格 | 2023年2月
介绍:记录在MySQL数据库迁移过程中遇到的问题,以及解决方案。
文章目录
- [数据库迁移]-MySQL常见问题
- 一、背景
- 二、常见问题
- 2.1 ERROR 2003
- 2.2 ERROR 1273
- 2.3 ERROR 1071
- 2.4 视图权限
- 2.5 ERROR 1062
- 三、总结
一、背景
对现有环境的实例,克隆出一套新的环境,新环境实例规格与源实例一致。
迁移过程:生成新实例 => 部署MySQL => dump源MySQL实例 => 导入数据到新实例。
二、常见问题
该章节为实际过程中遇到的问题。
2.1 ERROR 2003
问题: mysqldump: Got error: 2003: Can’t connect to MySQL server on ‘xxx.xxx.xxx.xxx’ (111) when trying to connect
问题原因: 由于网络抖动,或mysql服务安装失败导致。
问题解决: 检查mysql服务是否可用,telnet xxx.xxx.xxx.xxx 3306,服务正常则检查网络或磁盘是否满了。
2.2 ERROR 1273
问题: ERROR 1273 (HY000) at line 30: Unknown collation: ‘utf8mb4_0900_ai_ci’
问题原因: 源和新实例版本不一致,utf8mb4_0900_ai_ci是MySQL 8.0的默认排序规则,MySQL 5.7版本中,默认排序规则为utf8mb4_general_ci。
问题解决:
- 将新实例版本更换为 8.0
- 将源实例排序规则更改为 utf8mb4_0900_ai_ci
2.3 ERROR 1071
问题: ERROR 1071 (42000) at line 167: Specified key was too long; max key length is 767 bytes
问题原因:
对于Innodb而言,对表字段索引长度有限制,MySQL 5.6版本后引入参数 innodb_large_prefix。有ON 和 OFF 两个取值:
ON:innodb的行记录格式为Dynamic或Compressed的前提下,单列索引长度上限为3071字节。
OFF:innodb的单列索引长度上限为767字节,超出后,主键索引创建失败,辅助索引会被截断为前缀索引。
MySQL 5.6 默认OFF:

MySQL 5.7 默认ON:

问题处理:
在 my.cnf 中修改以下两个参数(MySQL 5.7 版本之后可以动态调整参数,可以不修改配置文件)
innodb_large_prefix = on
innodb_file_format = Barracuda(MySQL 5.7版本默认,见下图)

注:Antelope是原始的Innodb文件格式,支持REDUNDANT和COMPACT行格式。Barracuda是较新的文件格式,支持COMPRESSED和DYNAMIC行格式。
2.4 视图权限
问题:
mysqldump: Couldn’t execute ‘SHOW FIELDS FROM xxxxx’: View ‘xxxxx’ references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them (1356) | |
|---|---|
视图的创建:
CREATE[OR REPLACE][ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}][DEFINER = user][SQL SECURITY { DEFINER | INVOKER }]VIEW view_name [(column_list)]AS select_statement[WITH [CASCADED | LOCAL] CHECK OPTION]
视图的权限:
- DEFINER:DEFINER指定的用户,才能执行成功。
- INVOKER:只要执行者拥有执行群贤就可执行成功。
问题解决:
打开客户端,找到对应视图 => 修改视图,将 SQL SECURITY DEFINER => SQL SECURITY INVOKER,重新执行即可。

2.5 ERROR 1062
问题: ERROR 1062 (23000) at line 214: Duplicate entry ’ xxxxx’ for key ‘xxxxx’
问题原因:
- 插入的数据,违反主键唯一性
- 插入的数据,违反了唯一索引的唯一性
问题解决: 最简单的方法就是删除已经存在的值,重新插入。
三、总结
以上就是数据库迁移过程中遇到的一些问题的整理,后续碰见其他问题会继续补充。
相关文章:
[数据库迁移]-MySQL常见问题
[数据库迁移]-MySQL常见问题 森格 | 2023年2月 介绍:记录在MySQL数据库迁移过程中遇到的问题,以及解决方案。 文章目录[数据库迁移]-MySQL常见问题一、背景二、常见问题2.1 ERROR 20032.2 ERROR 12732.3 ERROR 10712.4 视图权限2.5 ERROR 1062三、总结一…...
C语言编译过程
C语言编译过程1、C语言编译过程2、单c文件编译实践3、多c文件编译实践4、define4.1、不带参宏4.2、带参宏4.3、带参宏和带参函数的区别5、选择性编译ifdef、ifndef、if5.1、#ifdef5.2、#ifndef5.3、#if6、静态库和动态链接库6.1、静态库实践6.1.1、将mylib.c制作成静态库6.1.2、…...
前端学习 ---常用标签
常用标签 1,文本标签 文本标签是双标签,自带加粗效果,有自己对应的文本大小,并且独占一行,有默认间距 一级标签:< h1 > < /h1 > 二级标签:< h2 > < /h2> 三级标签:&l…...
2023年PMP考试难不难?
整个考试的考察方向转向还是比较大的,基本上以“价值传递”和“以人为本”这两个出发点来考察项目经理所需要的能力。 1}新版提纲题目数量的变化 总题量从200道减少到180道,所以答题时间上相对变的宽裕一些。考试时间230分钟,中间有十分钟休…...
Netty 入门
文章目录一、概述1.1 Netty 是什么?1.2 Netty 的地位1.3 Netty 的优势二、Hello World2.1 目标2.2 服务器端2.3 客户端2.4 流程梳理三、组件3.1 EventLoop3.2 演示 NioEventLoop 处理 io 事件3.3 演示 NioEventLoop 处理普通任务3.4 演示 NioEventLoop 处理定时任务…...
收藏|一文掌握数据分析在企业的实际流程
一、数据分析概念 1.1 数据分析 是指用适当的统计分析方法对收集来的大量数据进行分析,将他们加以汇总和理解并消化,以求最大化地开发数据的功能,发挥数据的作用。 1.2 数据分析包括 描述性数据分析(初级数据分析)…...
100ask_imx6ull 输出PWM
查看PWM对应扩展板的引脚 100ask_imx6ul通过扩展板插槽来验证pwm波,所以这里通过扩展板的原理图及芯片手册可知,gpio4_io20,gpio4_io19分别对应着PWM8和PWM7。 设置设备树 打开官方NXP的工具i.MX pins v6工具,PWM7/PWM8的配置如…...
yolov5编译安卓APP:解决图像上全是检测框
yolov5编译安卓APP:解决图像上全是检测框前言一、第一个YOLOv5 APP1.参考链接2.详细说明3.APP检测时图像上全是框的解决方法二、第二个YOLOv5 APP1.参考链接2.详细说明3.APP检测时图像上全是框的解决方法三、其他1.APK打包2.修改APP图标与名字前言 YOLOv5编译安卓A…...
为什么我们需要地图?
想一想,武侠小说里面。一张藏宝图,引来江湖腥风血雨,要么是武功秘籍,要么是绝世宝剑,要么是富可敌国的财富,只要有了藏宝图,便可曲径通幽,到达彼岸。 由此可见,地图的重…...
攻防世界1.新手练习区
4.攻防世界1.新手练习区 1.view_source 访问url: http://111.200.241.244:48855/ 鼠标点击右键不起作用,F12审查元素 得到flag为cyberpeace{0f3a3e4ab8c8664f3cf40d4240ec7b53} 2.robots 访问url: http://111.200.241.244:34362/ rob…...
Python进阶篇(二)-- Django 深入模型
上一节提到了Django是基于MVC架构的Web框架,MVC架构追求的是“模型”和“视图”的解耦合。所谓“模型”说得更直白一些就是数据(的表示),所以通常也被称作“数据模型”。在实际的项目中,数据模型通常通过数据库实现持久…...
ABAP SALV实现弹出ALV选择
问题场景 需要弹出一个ALV并获取选择的数据 实现思路 跳转屏幕弹出ALV(通过SALV)弹出ALV(通过REUSE_ALV_POPUP_TO_SELECT) 实现效果 因为这里需要的是单选,所以没有多选列 实现代码 MODULE sel_zfretype INPUT.…...
git check-pick,git patch 与 git stash 详解
大家好,我是 17。 今天和大家聊一聊 git check-pick,git patch 与 git stash 的用法。 git cherry-pick 为什么要用 cherry-pick? 不适合 merge 的场景就可以考虑 cherry-pick。 试想下面这些场景 只想同步分支的部分提交。两个分支是两上完全独立…...
OA漏洞-到处搜集整理
一米OA getfile.jsp 任意文件读取漏洞 原文链接 漏洞复现 一米OA getfile.jsp 任意文件读取漏洞 一米OA协同办公系统,集成了OA办公自动化系统、手机客户端、专业报表工具,为全国千万企业用户提供全功能、性价比高的OA软件。一米OA getfile.jsp文件存在任意文件读取漏洞&am…...
web端接收读卡器卡片信息
项目背景 通过电脑连接的读卡器读取卡片信息,并由web页面接收和处理卡片信息。 读卡器抛出卡片信息流程 卡片贴近或放置到读卡器上读卡器解析卡片信息,并形成固定格式的字符串,包括的信息有:卡片写入的数据、卡片原数据&#x…...
BUUCTF-练习场-WEB-第一部分(8道)
[极客大挑战 2019]EasySQL 1payload:1 or 11#是闭合前面的查询语句,or 11恒成立,可以使用or句子绕过判断,#用于注释,注释后面的内容不再执行,所以该sql命令会返回表内所有内容,其实就是实现一个…...
Java Reflection 实战- Class类
Java Reflection 实战 - Class Java 反射使得在运行时检查类、接口、字段和方法成为可能,而不需要在编译时知道类、方法等的名称。也可以使用反射来实例化新对象、调用方法和获取/设置字段值。 Java反射的功能相当强大,可以说是非常有用。例如ÿ…...
背包问题理解思路(01背包、完全背包、分组背包)
这两天把经典的三个背包问题看了一下,网上大多文章是以代码和公式为主,因为平时没刷过算法题所以理解起来花了些时间,固写一篇文章记录理解思路,本文不包含代码实现(理解了思路代码实现应该是小问题,网上一…...
Mr. Cappuccino的第39杯咖啡——Kubernetes之深入理解Pod
Kubernetes之深入理解PodPod相关概念Pod详细配置清单Pod核心配置Pod基本配置1. 创建yaml文件2. 创建namespace并根据yaml文件创建资源3. 查看namespace下的pod列表以及pod的详细信息Pod中多个容器的名称和端口号不能相同Pod镜像拉取策略Pod环境变量Pod端口相关设置Pod资源相关配…...
SqlSession 和 SqlSessionTemplate 简单使用及注意事项
1、SqlSession 简单使用 先简单说下 SqlSession 是什么?SqlSession 是对 Connection 的包装,简化对数据库操作。所以你获取到一个 SqlSession 就相当于获取到一个数据库连接,就可以对数据库进行操作。 SqlSession API 如下图示:…...
终极ViGEmBus虚拟手柄驱动:Windows游戏控制解决方案完全指南
终极ViGEmBus虚拟手柄驱动:Windows游戏控制解决方案完全指南 【免费下载链接】ViGEmBus Windows kernel-mode driver emulating well-known USB game controllers. 项目地址: https://gitcode.com/gh_mirrors/vi/ViGEmBus ViGEmBus是一款专业的Windows内核级…...
Qwen3-0.6B-FP8快速上手:Anaconda环境下的Python开发配置
Qwen3-0.6B-FP8快速上手:Anaconda环境下的Python开发配置 想试试最新的轻量级大模型Qwen3-0.6B-FP8,但被Python环境搞得头大?别担心,今天咱们就来手把手搞定它。很多朋友在第一步——环境配置上就卡住了,要么是包版本…...
炉石传说脚本Hearthstone-Script:三步从零到精通的自动化游戏指南 [特殊字符]
炉石传说脚本Hearthstone-Script:三步从零到精通的自动化游戏指南 🎮 【免费下载链接】Hearthstone-Script Hearthstone script(炉石传说脚本)(2024.01.25停更至国服回归) 项目地址: https://gitcode.com…...
信创云渲染能支持远程设计与异地协同吗?
在信创推进深化的当下,企业对远程设计、异地协同的需求愈发迫切,传统本地工作站既难以适配国产软硬件环境,也无法满足跨地域高效协作需求。信创云渲染作为核心解决方案,能否同时支撑远程设计与异地协同?答案是肯定的&a…...
MOVA开源:AI同步生成音视频的全新突破
MOVA开源:AI同步生成音视频的全新突破 【免费下载链接】MOVA-360p 项目地址: https://ai.gitcode.com/OpenMOSS/MOVA-360p 导语:MOVA-360p模型正式开源,标志着AI音视频生成领域告别"无声时代",首次实现视频与音…...
OpenClaw备份方案:Qwen3.5-9B模型接口故障时的降级策略
OpenClaw备份方案:Qwen3.5-9B模型接口故障时的降级策略 1. 为什么需要备份方案? 上周我正用OpenClaw处理一批重要文件归档任务时,突然遇到Qwen3.5-9B接口响应超时。当时正在半夜,没有备用方案的我只能眼睁睁看着自动化流程中断&…...
四旋翼无人机自抗扰控制算法的深度研究与ADRC轨迹跟踪实现:附带详细说明文档
四旋翼无人机自抗扰控制算法研究 ADRC 轨迹跟踪 附带说明文档 飞控调试间里飘着咖啡香,小张盯着屏幕上抖得像筛糠的无人机轨迹曲线,第17次把咖啡杯捏得咯吱响。四旋翼在风洞实验室的强风里表演着醉拳,传统PID控制器的参数怎么调都像在打地鼠。…...
抖音无水印下载器:3步解决内容创作者的批量获取难题
抖音无水印下载器:3步解决内容创作者的批量获取难题 【免费下载链接】douyin-downloader 项目地址: https://gitcode.com/GitHub_Trending/do/douyin-downloader 你是否曾为了研究竞品内容,手动复制粘贴数十个抖音链接,结果半天时间只…...
Node.js内存泄漏排查指南:从Chrome DevTools到heapdump的实战记录
Node.js内存泄漏排查实战:从预警信号到精准修复 当线上监控系统突然发出内存告警,你的Node.js服务正在以每小时100MB的速度吞噬服务器内存——这不是演习,而是一场真实的生产事故前兆。作为经历过数十次内存泄漏战役的老兵,我将带…...
运维实战:Z-Image-Turbo_Sugar脸部Lora模型在Linux生产环境的持续部署与监控
运维实战:Z-Image-Turbo_Sugar脸部Lora模型在Linux生产环境的持续部署与监控 作为一名在AI和智能硬件领域摸爬滚打了十多年的工程师,我见过太多“模型跑得欢,运维跑断腿”的场景。一个模型在开发者的笔记本上可能表现完美,但一旦…...
