docker 安装mysql 8

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sunyuhua_keyboard/article/details/81540012

1、docker的安装省略,详细查看https://yeasy.gitbooks.io/docker_practice/install/centos.html
2、创建docker的用户,不要使用root权限做操作的,否则后期安装完mysql,启动会报这个错误:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

这里写图片描述
3、使用root用户创建docker用户,并设置密码和权限。
命令分别是:

1、useradd -u 545 -d /usr/geexekdocker -g users -m geexekdocker

2、passwd geexekdocker

3、 sudo gpasswd -a geexekdocker docker

4、sudo service docker restart

5、sudo chmod a+rw /var/run/docker.sock

这里写图片描述

4、登录docker用户,拉取mysql的镜像文件,

docker pull mysql:8.0.12

5、查看mysql镜像文件,并安装mysql镜像文件,进入mysql的容器

1、docker images

2、docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=neusoft -d mysql:8.0.12

3、docker exec -it mysql /bin/bash

这里写图片描述
6、远程登录mysql,会报错 1251-client does not support authentication protocol requested by server;consider updeading MYSQL client
这里写图片描述
7、需要使用命令登录mysql,但是命令登录密码一定紧跟着-p,要不然也会登录不上,报ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: YES)
这里写图片描述
8、登录之后执行下面四条命令

1、use mysql

2、 ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';

3、alter  user 'root'@'%' identified by 'neusoft';

4、 flush privileges;

这里写图片描述

9、再次使用远程登录就能登入成功了
这里写图片描述

猜你喜欢

转载自blog.csdn.net/sunyuhua_keyboard/article/details/81540012