V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
shazh520
V2EX  ›  Docker

在 docker 里面运行 MySQL 遇到的诡异事件

  •  
  •   shazh520 · 2018-08-29 10:48:41 +08:00 · 3616 次点击
    这是一个创建于 2285 天前的主题,其中的信息可能已经有所发展或是发生改变。

    同样的命令,但是设置的 root 密码不一样,一个能够连接上而另一个就出现了问题。

    第一次

    命令: docker run -d --name mysql -v mysql-data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=Xh_1233. -p 3306:3306 mysql:5.7.23

    结果:成功连接

    第二次

    命令: docker run -d --name mysql -v mysql-data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=abc123 -p 3306:3306 mysql:5.7.23

    结果: 通过 navicat 连接的时候出现1045 - Access denied for user 'root'@'172.17.0.1' (using password: YES)

    我在网上查了一些资料,没发现什么。我想是不是 MySQL 官方的 image 对这个 root 密码有特殊的要求,我去 docker hub 上看也没有发现对环境变量 MYSQL_ROOT_PASSWORD 有什么特殊的约定啊,这个是怎么回事有前辈知道不?望指点

    2 条回复    2018-08-29 10:54:10 +08:00
    wfd0807
        1
    wfd0807  
       2018-08-29 10:53:16 +08:00   ❤️ 1
    mysql-data 这个 volume 在第一次运行的时候就创建成功了,当你第二次使用这个 volume 运行容器的时候,对于容器中的 mysql 来说,数据库已经创建好了,岂能再改密码?
    shazh520
        2
    shazh520  
    OP
       2018-08-29 10:54:10 +08:00
    @wfd0807 前辈厉害,一下子就点醒了我 谢谢谢谢 谢谢
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2830 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 09:12 · PVG 17:12 · LAX 01:12 · JFK 04:12
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.