• docker 安装mysql:latest 问题


     

    背景

      周末闲着没事,然后想着在虚拟机用docker装个mysql吧。然后就开始安装了。

    正文

      打开dockerhub.com,在输入框输入mysql,选择mysql第一个,进入后找到How to use this image,当时我是按照这个命令去做了,之后mysql也启动了。

            

      但是客户端端就是连接不了,我去授权一直授权不成功。 GRANT ALL PRIVILEGES ON *.* TO 'root' @ '%' IDENTIFIED BY 'root' WITH GRANT OPTION;  在8.0之后授权的方式变了,所以一直授权不了,这是一个问题。可以此采用  

         GRANT ALL ON *.* TO 'root'@'%'; 
         flush privileges; 
    这是授权问题解决了。其实第一问题是,映射一直没有做到,-p 3306:3306的时候一直报错,但今天又试了一下,之后成功了。docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:latest,查看映射也可以了。
        

            之后客户端还是连接不了,如下错误。

        

    搜索了一下,是mysql版本问题,8.0之后的加密规则发生了变化,所以 修改一下加密规则就可以了。如图:

        

       之后再次连接,

         

    总结

       有时候不能靠以前的经验来做事,所有事情并不是一成不变的。要敢于去尝试新的东西,不要光想,重要的是去实践。

                  Practice produces results.

  • 相关阅读:
    mysql中的内置函数
    python之旅九【第九篇】socket
    docker的安装,升级,与删除(最新版)
    consul与docker的使用
    python之旅第八篇--异常
    python的图形模块PIL小记
    python之旅七【第七篇】面向对象之类成员
    python之旅六【第七篇】面向对象
    zabbix上监控docker
    zabbix在ubuntu16.04上的安装
  • 原文地址:https://www.cnblogs.com/hackerxiaoyon/p/10552842.html
Copyright © 2020-2023  润新知