标签:GRANT mysql 3306 授权 docker root 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.
标签:GRANT,mysql,3306,授权,docker,root,latest 来源: https://blog.51cto.com/u_15199183/2771994
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。