环境:自己买的腾讯 CentOS 7.6
完全小白后台开发学习docker经历,只为了记录学习过程。 大佬勿喷,谢谢
docker:安装:https://www.runoob.com/docker/centos-docker-install.html
网站介绍的比较全面,我是使用官方安装脚本自动安装
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
安装完成后,发现没啥问题。
接下来数据库安装
中文安装地址:https://www.runoob.com/docker/docker-container-usage.html
问题:安装完成后 发现连接不上数据库 2059
查了下问题,mysql8新版本发布,安装后出现2059错误,原因为安装时选择了强加密规则caching_sha2_password,与之前的mysql5.7的mysql_native_password规则不同,navicate驱动目前不支持新加密规则
解决方法,将加密规则修改过来:
1 进入mysql容器 mysql5.7代表名称 或者用容器id也可以 docker -ps -a 可以查询id信息
docker exec -it mysql5.7 bash
2 连接mysql
mysql -u root -p
3 登录后执行命令
use mysql;
select user,plugin from user where user= ’root’ ;
当前用户的加密方式为caching_sha2_password
4 执行命令(注意格式,标点符号。少一点就报语法错误)
ALTER USER ‘test’ @’ %’ IDENTIFIED BY ‘123456’ PASSWORD EXPIRE NEVER; #修改加密规则
ALTER USER ‘test’ @’ %’ IDENTIFIED WITH mysql_native_password BY ‘123456’; #修改密码
FLUSH PRIVILEGES;#刷新
5 问题解决
命令行连接 mysql -u root -h 127.0.0.1 -p