Docker部署安装MySQL8.0

前言:如果是在阿里云里面部署注意开放阿里云安全组中的端口

一,下载镜像
docker pull mysql/mysql-server:8.0
二,运行实例
docker run -d --name myMySQL8.0 -p 3308:3306 -e MYSQL_ROOT_PASSWORD=root -e MYSQL_ROOT_HOST=% mysql/mysql-server:8.0

如上运行实例命令的含义如下:

  • run:运行
  • -d:后台运行
  • --name:起个名字
  • -p:映射端口,用主机的 3308 映射到容器MySQL的 3306 端口
  • -e MYSQL_ROOT_PASSWORD:就是说要去设置密码,用户名和密码都统一设置为了 root
  • -e MYSQL_ROOT_HOST:设置主机,% 代表的是当前的本地主机最后一个就是 镜像的名称:TAG名称

实例了一个容器之后在进入到容器当中命令如下:

docker exec -it myMySQL8.0 bash

然后就可以利用 mysql -u root -p 连接 MySQL 如下所示。

mysql -u root -p

先登录并做一些修改以便 navicat 连接,密码为 root 账号也是 root 以上已经介绍过了。

2059 问题解决方案

原因为安装时选择了强加密规则 caching_sha2_password,与之前的 MySQL5.7 的 mysql_native_password 规则不同,navicate 驱动目前不支持新加密规则,解决办法就是通过终端的方式连接 MySQL 之后运行如下命令即可更改一下加密规则。

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

1045 access denied

默认 root 用户是不能进行远程访问连接的,解决办法就是通过终端的方式连接 MySQL 之后运行如下命令即可访问。

alter user 'root'@'localhost' identified by 'root';
alter user 'root'@'%' identified by 'root';
flush privileges;

image-20210902144433197

Navicate 连接

image-20210902144604114

整体流程

image-20210902143510889

到此结束!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值