小编Wol*_*ahl的帖子

致命错误:无法打开和锁定权限表:“用户”的表存储引擎没有此选项

当我在 Docker 映像中使用 ubuntu 16.04 和最新的 mysql 5.7.19-0ubuntu0.16.04.1 时,会出现此错误消息。

可以做些什么来解决这个问题?

重现错误

  1. 获取Dockerfile

    FROM ubuntu:16.04
    
    RUN apt update
    RUN DEBIAN_FRONTEND=noninteractive apt install -y mysql-server
    
    Run Code Online (Sandbox Code Playgroud)

    (也可在此处获得

  2. 构建并运行:

    docker build -t mysqlfail . 
    docker run -it mysqlfail tail -1 /var/log/mysql/error.log
    
    Run Code Online (Sandbox Code Playgroud)

    会显示以下错误日志:

    2017-08-26T11:48:45.398445Z 1 [警告] root@localhost 是用空密码创建的!请考虑关闭 --initialize-insecure 选项。

    这正是我们想要的:一个还没有设置 root 密码的 mysql。

  3. 在过去(ubuntu 14.04 / mysql 5.5)aservice mysql start是可能的。现在如果你尝试这个它会失败

    docker run -it mysqlfail service mysql start
     * Starting MySQL database server mysqld    
      No directory, logging in with …
    Run Code Online (Sandbox Code Playgroud)

mysql docker

20
推荐指数
3
解决办法
4万
查看次数

标签 统计

docker ×1

mysql ×1