docker安装mysql8之lower_case_table_names参数

news2024/10/7 5:12:05

docker安装mysql8之lower_case_table_names参数

      • 前言
      • 发现问题
      • 找到问题
      • 解决方案
          • 不挂载外部文件
          • 挂载外部文件

前言

既然使用docker安装mysql,看重的就是一键拉取和一键启动,然后在安装mysql容器的过程中,出现了新问题,关于lower_case_table_names的深坑。

发现问题

部署前使用的是本地服务器的mysql数据库,而上线的是一台全新的服务器,因此需要笔者重新配置运行环境,安装mysql并将本地库导入服务器上的数据库后,问题就在这里出现了。

在这里插入图片描述
出现明明数据表存在,然后springboot启动后,却显示查询不到数据表的问题。

找到问题

毫无疑问,这里就是lower_case_table_names参数的问题。

show variables like '%lower_case%';

在这里插入图片描述
lower_case_table_names 是mysql设置大小写是否敏感的一个参数。

lower_case_table_names=0 表名存储为给定的大小和比较是区分大小写的
lower_case_table_names = 1 表名存储在磁盘是小写的,但是比较的时候是不区分大小写
lower_case_table_names=2 表名存储为给定的大小写但是比较的时候是小写的

由于本地库 lower_case_table_names = 1,所以数据表查询不区分大小写,而Docker拉取的mysql镜像默认lower_case_table_names=0,因此会出现以上 数据表找不到的情况 Table xxx.xxx doesn't exit

解决方案

在线上创建数据库时,需要与本地数据库的参数一致,因此在创建容器是设置参数:lower_case_table_names = 1。创建容器命令如下:

不挂载外部文件
docker run -d --name mysql -e MYSQL_ROOT_PASSWORD=123456\
-p 3306:3306 mysql --lower-case-table-names=1
挂载外部文件
docker run --name mysql \
-v /docker/mysql/log:/var/log/mysql \ 
-v /docker/mysql/data:/var/lib/mysql \ 
-p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 \
-d mysql --lower-case-table-names=1

注意最后的 --lower-case-table-names=1很重要别遗漏了。

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

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

相关文章

Python Asyncio 之网络编程方法详解

https://so1n.me/2023/08/29/python_asyncio_lib_network/

CS420 课程笔记 P8 - 如何编辑汇编代码 (最终篇)

文章目录 IntroHardwareReturn to virtual memoryCompilerFinding assembly codeExample!Assembly languageRegisters Assembly ExampleIncDecAddSubMov!NegMulDiv Assembly problem恭喜 Congratulations! Intro 大多数人在走到这里之前就退出了,这里是 game hacki…

nginx--技术文档--基本概念--《十分钟快速扫盲》

nginx是什么? Nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。它具有高并发性、稳定性和灵活性,并且使用事件驱动的方式处理请求,能够有效地处理大量并发连接。此外,Nginx还具有高效的内…

总结开发中一些数据处理方法的封装

摘要: 开发中经常会遇到一些组件需要的特定数据结构,后端不一定会返回你需要的数据结构的,所以还是要前端来处理的!这里来总结一下平常开发中遇到的需要处理结构的方法,下次遇到直接拿来用就可以了! 目录概…

云架构师学习------技术路线与总结

云架构师学习------技术路线与总结 云架构师学习------技术路线与总结一、什么是架构IT架构-数据架构-应用架构IT架构应用架构数据架构 架构的六个层面基础设施层数据层中间层基础服务层业务服务层用户接口层 二、云计算的历史演进与基本原理云计算的本质:资源到架构…

小度音响 小众安卓手机 个别车机等系列mtk芯片刷机 修改 导出系统 root等操作解析

目前很多机型采用的是mtk芯片。包括小度1C.个别车机 或者其他安卓设备。这类机型很少有官方固件或者未曾流出。有的机型限制刷机 root 安装软件等等。那么类似的设备有没有方法来root或者导出系统呢。其实前面几篇博文中我有介绍如何提取备份mtk芯片的系统。今天在这些博文的基…

企业文件数据透明加密保护——防泄密软件系统

天锐绿盾电脑文件数据透明加密、防泄密系统是一款全面的加密软件系统,主要从源头上保障数据安全和使用安全。该系统采用文件过滤驱动实现透明加解密,对用户完全透明,不影响用户操作习惯,从源头上保障企业数据安全。通过对电子文档…

ajax day2

1、 2、控制弹框显示和隐藏: 3、右键tr,编辑为html,可直接复制tr部分的代码 4、删除时,点击删除按钮,可以获取图书id: 5、编辑图书 快速赋值表单元素内容,用于回显: 6、hidden …

python开发之个微机器人的二次开发

简要描述: 取消消息接收 请求URL: http://域名地址/cancelHttpCallbackUrl 请求方式: POST 请求头Headers: Content-Type:application/json 参数: 参数名类型说明codestring1000成功,1…

MySql学习笔记12——数据库设计三范式

数据库设计三范式 第一范式:要求任何一张表必须有主键,每一个字段原子性不可再分。 第二范式:建立在第一范式之上,要求所有非主键字段必须完全依赖主键,不能部分依赖 第三范式:建立在第二范式之上&#…

分享2款微课录制软件,保证让你满意!

“录微课用什么软件呀,真的服了,平台自带的录屏画质太差了,完全看不清讲的内容,而且音质也不是很好,大家有没有微课录制的软件推荐,谢谢啦” 随着教育方式的转型和技术的发展,微课程成为了一种…

虚拟机(三)VMware Workstation 桥接模式下无法上网

目录 一、背景二、解决方式方式一:关闭防火墙方式二:查看桥接模式下的物理网卡是否对应正确方式三:查看物理主机的网络属性 一、背景 今天在使用 VMware Workstation 里面安装的 Windows 虚拟机的时候,发现虽然在 NAT 模式下可以…

2023年9月NPDP产品经理国际认证报名,当然弘博创新

产品经理国际资格认证NPDP是新产品开发方面的认证,集理论、方法与实践为一体的全方位的知识体系,为公司组织层级进行规划、决策、执行提供良好的方法体系支撑。 【认证机构】 产品开发与管理协会(PDMA)成立于1979年,是…

C#,数值计算——NRf1(UniVarRealValueFun)的计算方法与源程序

1 文本格式 using System; namespace Legalsoft.Truffer { public class NRf1 : UniVarRealValueFun { public RealValueFun y1; public RealValueFun y2; public NRf2 f2; public NRf1(RealValueFun y1, RealValueFun y2, RealValueFun z1,…

IMAU鸿蒙北向开发-2023年9月4日学习日志

1 HarmonyOS 1.1 南向设备开发与北向应用开发 上北下南,上层应用开发叫北向,底层设备开发叫南向。 北向:指的纯应用软件开发,基于官方提供的系统SDK进行应用开发,HarmonyOS 目前支持使用java、js、 ets、c、c进行开发…

丢失msvcp110.dll是什么意思?msvcp110.dll丢失的解决方法

当您在使用电脑时,可能会遇到这样的提示:“由于缺少msvcp110.dll文件,无法启动此程序。”那么,丢失msvcp110.dll到底是什么意思呢?又该如何解决这个问题呢?接下来,我将为您详细解答。 丢失msvcp…

笔记本家庭版本win11上win+r,运行cmd默认没有管理员权限,如何调整为有管理员权限的

华为matebookeGo 笔记本之前有段时间不知怎么回事,打开运行框,没有了那一行“使用管理权限创建此任务”,而且cmd也不再是默认的管理员下的,这很不方便,虽然每次winr ,输入cmd后可以按ctrlshitenter以管理员权限运行&am…

八路DI八路DO,开关量远程IO模块,Modbus TCP数据采集模块 YL90-RJ45

特点: ● 八路开关量输入,八路开关量输出 ● DI状态变化自动发送状态数据,可以捕获脉冲 ● 采用Socket自由协议编程简单、轻松应用 ● 开关量毫秒级响应速度适应多种场合 ● 内置网页功能,可以通过网页查询与控制 ● 同时也…

微型计算机原理知识点总结(一)

目录 一.微型计算机 二.微型计算机系统 1.微型计算机硬件系统 冯诺依曼体系结构 总线 (1)微处理器(CPU) 运算器 控制器 内部寄存器 (2)存储器 1.基本概念 2.内存的操作 3.内存的分类 (3)I/O接口与输入/输出设备 2.微型计算机软件系统 (1)系统软件 操作系统 …

SpringBoot实现发送邮件功能

平时注册或者登录一个网站时,可能收到过邮件用来发送验证码等,邮件在项目中经常会被用到,比如邮件发送通知,比如通过邮件注册,认证,找回密码,系统报警通知,报表信息等。 发送邮件用…