问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

解决Docker 二次重启 MySQL 8 遇到的一些问题

发布网友 发布时间:17小时前

我来回答

1个回答

热心网友 时间:6小时前

前些天,因为服务器扩容需求,我们不得不进行断电操作,导致 Docker 需要关闭。今天尝试重启 MySQL 8 的容器时,遇到了一些问题,我特地记录了这一过程,希望能帮助到有类似困扰的读者。

在启动 MySQL 容器时,我们使用了相关指令,看起来启动似乎成功了,然而通过 docker ps 命令查看,却发现并未成功启动 MySQL 容器。我们决定查看日志,以排查问题。在查看了 docker logs 6dc8fa34ff7...e3ed12a1b2f6e0edbc8e6 的输出后,我们发现了问题所在。

从日志中,我们可以看到:lower_case_table_names 参数的设置导致了问题的发生。根据官方文档的理解,如果设置为 0,则表名在磁盘上以原样存储,并进行大小写敏感的比较;如果设置为 1,则表名在磁盘上以小写形式存储,并进行不区分大小写的比较;如果设置为 2,则表名在磁盘上以给定的形式存储,但比较时使用小写形式。这一参数也适用于数据库名称和表别名。详细信息请参见“Identifier Case Sensitivity”部分。在 Linux 和其他类 Unix 系统上,其默认值为 0。在 Windows 系统上,默认值为 1。在 macOS 上,默认值为 2。在 Linux(以及其他类 Unix 系统)上,若设置为 2,则服务器会将其强制为 0。在运行 MySQL 的系统上,若数据目录位于不区分大小写的文件系统(如 Windows 或 macOS)上,不应设置 lower_case_table_names 为 0。这是因为这与组合不支持,在运行 INSERT INTO ... SELECT ... FROM tbl_name 操作时,如果 tbl_name 的大小写不正确,可能会导致挂起状态。使用 MyISAM 时,使用不同大小写的表名可能会导致索引损坏。尝试在 case-insensitive 文件系统上以 --lower_case_table_names=0 启动服务器会打印错误消息并退出。此变量的设置影响了复制过滤选项的大小写敏感性。更多信息请参见“服务器如何评估复制过滤规则”部分。启动服务器时,必须使用与初始化服务器时相同的 lower_case_table_names 设置。因为各种数据字典表字段所使用的连接是由初始化时定义的设置确定的,使用不同的设置重新启动服务器会导致标识符的顺序和比较不一致。因此,在初始化服务器之前,应将 lower_case_table_names 设置为所需的设置。

根据官方文档的说明,我们在 Linux 和其他类 Unix 系统上,其默认值为 0。由于我们在 Linux 系统上运行 MySQL,因此我们需要更改 lower_case_table_names 的设置,使其与数据字典一致,即将其设置为 1。

在解决问题后,我们注意到远程连接时仍然存在问题。在使用 pymysql 连接时,我们也遇到了连接超时的问题。我们首先怀疑 3306 端口是否没有对外开放,于是直接打开了 3306 端口,但发现 3306 端口始终处于开放状态。我们进一步查看了其占用情况,发现并非问题所在。然而,在启动容器时,我们注意到存在一个警告。查阅资料后得知,我们需要开启 IPv4 转发。网络桥接配置完成后,需要开启转发,否则容器启动后将没有网络连接。我们执行了相应的操作,问题得以解决。使用远程连接后,我们成功连接到了 MySQL 容器。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
大学入学应该带哪些必备物品? tim删除聊天记录的方法步骤 pc端彻底删除tim聊天记录 甩脂机调到什么档位 如何用甩脂机 甩脂机的正确使用方法 使用抖脂机要注意什么 怎样申请小号微信号 ...的长和宽分别增加6米,扩建后草坪的面积增加了多少 ...扩建后长和宽分别增加10米,扩建后的操场面积增加了多少平方米?_百 ... 长方形的公园它的面积长和宽分别扩大十米后它的平方增加了面积增加了13... 无网络环境下安装Docker及在Docker中部署MySQL的实战指南 Windows系统下使用docker安装mysql8和mysql5.7 “梦入神仙教神妪,老鱼跳波瘦蛟舞”是什么意思_出处及原文翻译_学习力... 老鱼跳波的意思 “高柳垂阴,老鱼吹浪,留我花间住。”是什么意思_出处及原文翻译_学习力... laoyu怎么写 重庆市忠县巴云乡猫儿山那个学校叫什么名字 要详细的的全名 苹果6s能玩任天堂Gba的游戏吗,例如宠物小精灵,逆转裁判之类的。_百度... 3D宠物对战手游《口袋宝贝》今日来袭介绍_3D宠物对战手游《口袋宝贝》今... 苹果在商店里怎么找宠物小精灵 口袋小精灵手游下载苹果手机如何下载 羊蝎子肉是羊哪个部位 qq音乐dts音效怎么调最? qq音乐dts音效怎么调 qq音乐音效设置方法 魔兽世界怀旧服行动杀死安格弗将军怎么做介绍_魔兽世界怀旧服行动杀死... 魔兽世界怀旧服联盟灼热峡谷升级,任务路线详解 《魔兽世界》行动杀死安格弗将军任务介绍 《魔兽世界》怀旧服奥莫尔的复仇任务介绍 《魔兽世界》怀旧服正义试炼任务介绍 脑洞大开《英雄联萌传》湿身酣战MM团介绍_脑洞大开《英雄联萌传》湿身... Win10下Docker版Nextcloud安装优化笔记 汪峰人物简介 春天里---信仰2011汪峰北京演唱会汪峰简介 北京北京歌手简介 辛苦的用英语怎么说 辛苦英文怎么写 辛苦意思 英语“加油”“辛苦”怎么说? 泰康保险可靠吗,有必要买吗 如何将组合框与下面的列表框相联系起来 同花顺圈子是什么 海通证券同花顺圈子 深物业同花顺圈子 同花顺圈子软件叫什么 看同花顺直播圈子是不是得交钱 华为MATE9怎么拍慢动作 今天买了个腾达W911R无线路由器,安装完成后上网速度却异常的慢,几乎上... tendaw911r与光钎怎么连接,那些孔怎么插,看了具体设置方法还是不行 买的腾达W911R电脑能上网,但手机不能 你好 我买的腾达路由器W911R怎么手机可以收到wifi 但是不能连接_百度... 孩子晕倒的几种可能