macOS - Dockerize MySQL 服务连接被拒绝,使用时崩溃
Posted
技术标签:
【中文标题】macOS - Dockerize MySQL 服务连接被拒绝,使用时崩溃【英文标题】:macOS - Dockerize MySQL service connection refused, crashes upon use 【发布时间】:2022-01-15 04:07:02 【问题描述】:使用 mysql(v8.0.21) image
和 mac docker-desktop (v4.2.0, Docker-Engine v20.10.10)
尽快服务:
入口点准备就绪 innoDB 初始化完成 准备连接但是一旦尝试运行直接脚本(查询)它就会崩溃,拒绝连接(也来自 phpmyadmin)并再次重新启动。
-
terminal log
connection refused for phpMyAdmin
在日志中我们可以看到一个错误:
[错误] [MY-011947] [InnoDB] 无法打开“/var/lib/mysql/ib_buffer_pool”进行读取:没有这样的文件或目录
我们能够在日志中看到的错误不是问题,因为它已经由 InnoDB 修复和更新,以下是参考:
https://jira.mariadb.org/browse/MDEV-11840
注意: docker-compose 文件我们非常确定,没有错误,因为同样适用于 windows 以及 ubuntu,但问题只是适用于 macOS。
【问题讨论】:
这听起来像是您应该在相应的错误跟踪器上发布的内容 欢迎来到 Stack Overflow。这不是一个真正的答案,但也许它会为您省去麻烦:如果您无法解决这个问题,请考虑切换到 MariaDB 容器,它在大多数情况下应该可以很好地替代 MySQL。跨度> 【参考方案1】:感谢 @NicoHaase 和 @Patrick 回答问题和建议。
找到连接被拒绝和崩溃的原因,发布答案,以便它可能对其他人有帮助。
这实际上是由于 docker-desktop macOS 客户端默认分配了 2GB 内存作为资源,而对于我们的场景,它需要的还不止这些。
我们只是根据我们的要求分配更多的内存,它刚刚开始工作得很好。
对于资源分配:
打开 docker-desktop 首选项 资源>高级
【讨论】:
以上是关于macOS - Dockerize MySQL 服务连接被拒绝,使用时崩溃的主要内容,如果未能解决你的问题,请参考以下文章