首页 > 解决方案 > Docker Mysql 容器因“未知数据库”错误而失败(Ubuntu)

问题描述

现在每隔几个小时,我就会在 Ubuntu 服务器上遇到一个重复的问题。Mysql 容器突然给出“未知数据库”错误。我正在使用来自 php 容器的 cron 脚本(每分钟运行一次)来解析区块链并在 Mysql 中只保存块号(其他数据进入 bigQuery)。Crons 在前半秒及时完成。

有人可以提及原因吗?为什么会这样?谢谢!

码头工人-compose.yml

version: '3.5'
    services:
        mysql:
            container_name: mysql_test
            image: mysql:8.0
            restart: on-failure
            environment:
                MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
                MYSQL_DATABASE: ${MYSQL_DATABASE}
                MYSQL_USER: ${MYSQL_USER}
                MYSQL_PASSWORD: ${MYSQL_PASSWORD}
            ports:
                - "3306:3306"
            volumes:
                - ../docker_volumes/mysql/data:/var/lib/mysql
                - ./docker/mysql-dump:/docker-entrypoint-initdb.d

        php:
            container_name: php_test
            build: ./docker/php
            tty: true
            volumes:
                - ./:/var/www/
                - ./docker/volumes/symfony/var/data:/var/www/var/data
                - ./docker/volumes/symfony/var/log:/var/www/var/log
            depends_on:
                - mysql

示例截图来自docker stats mysql_test 在此处输入图像描述

标签: mysqldocker

解决方案


  • 这个问题在我更改了 mysql 默认root密码后自动修复
  • 另一种可能的解决方案是通过bind-address=127.0.0.1在 my.cnf 中设置来禁用远程访问

推荐阅读