# 下载安装

# 第一步:在 hub.docker.com 上搜索 mysql 镜像

# 第二步:拉取指定版本的 mysql

也可以指定拉取版本,例如:

sudo docker pull mysql:8.0.23

# 第三步:检查 mysql 镜像

sudo docker images

# 第四步:启动运行 mysql 镜像 (docker run 用于启动一个容器)

sudo docker run -p 3306:3306 --name mysql \
-v /usr/local/docker/mysql/mysql-files:/var/lib/mysql-files \
-v /usr/local/docker/mysql/conf:/etc/mysql \
-v /usr/local/docker/mysql/logs:/var/log/mysql \
-v /usr/local/docker/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:8.0.23

假如安装过程中失败了,则可通过 docker ps -a 查看以前的容器,假如已存在,则通过 docker rm 镜像 id 删除再重新安装即可。

# 第五步:停止 mysql 服务(可选)

执行完第四个步骤(启动运行 mysql 镜像),mysql 就会自动启动了,假如需要停止这个

服务可以执行:

docker stop mysql

# 第六步:启动 mysql 服务

假如 mysql 服务没有启动运行,但是 mysql 容器是存在的,可以通过如下方式启动 mysql。

docker start mysql

假如希望查看 mysql 启动时的日志,可以执行 docker container logs mysql 这个指令。

# 第七步:查看 docker 启动的服务

docker ps

# 第八步:进入容器 (退出容器用 exit)

sudo docker exec -it mysql bash

# 第九步:登陆 (默认密码 root),一定要先进入 mysql 容器。

mysql -uroot -proot

# 第十步:设置 mysql 开机自启动(可选)

docker update mysql --restart=always

如何重启 mysql 服务?

docker restart mysql

查看 MySQL 安装到哪了?

whereis mysql

连接 MySQL 时要注意

第一步:关闭 linux 宿主机的防火墙 (假如直击连接), 命令忘了可以通过搜索引擎查。

sudo systemctl stop firewalld.service

第二步:重启 docker

sudo systemctl restart docker

第三步:启动 mysql

docker start mysql

连接 mysql 如果遇到以下问题可以这样解决

问题描述:

1251-client does not support authentication protocol requesred by server;consider upgrading MySQL Client

解决办法:

# (1)mysql 容器内部

sudo docker exec -it mysql bash

# (2)进入 mysql

mysql -u root -p root

输入密码 root

# (3)使用 mysql 数据库

use user

# (4)查看用户信息

select host,user,plugin,authentication_string from mysql.user;

备注:host 为 % 表示不限制 ip localhost 表示本机使用 plugin 非 mysql_native_password 则需要修改密码

# (5)修改用户密码

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

# (6)更新 user 为 root,host 为 % 的密码为 123456

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

更新 user 为 root,host 为 localhost 的密码为 123456

# (7)再次连接即可成功!

更新于 阅读次数

请我喝[茶]~( ̄▽ ̄)~*

KLS 微信支付

微信支付

KLS 支付宝

支付宝

KLS 贝宝

贝宝