docker 安装 mysql8.0+

安装docker

1.1 使用 root 权限登录 Centos。确保 yum 包更新到最新。

 yum update

1.2 卸载旧版本(如果安装过旧版本的话)

yum remove docker  docker-common docker-selinux docker-engine

1.3 安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的

yum install -y yum-utils device-mapper-persistent-data lvm2

1.4 设置yum源

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

在这里插入图片描述

1.5 安装docker

yum install docker-ce

1.6 启动并加入开机启动

systemctl start docker
systemctl enable docker

安装mysql

2.1 拉取镜像文件

安装最新的mysql
docker pull mysql:latest
或者 指定特定版本的mysql
docker pull mysql:5.7

2.2 查看镜像

docker images 

在这里插入图片描述

2.3 运行容器

docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql

2.4 查看容器运行状况

docker ps

2.5 进入容器

docker exec -it mysql bash

mysql -uroot -p123456

如果要关闭容器,那就要先停止容器然后删除

docker ps -a           #查看所有的容器
docker stop 6ae9d17850f8  #找到容器id并停止
docker rm 6ae9d17850f8  #最后删除

外部访问Mysql

3.1 防火墙开放端口

  • 开放端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
  • 重启防火墙
firewall-cmd --reload
  • 查看防火墙的端口是否开通3306
firewall-cmd --zone=public --query-port=3306/tcp

其他非firewall 可以参考 《linux 防火墙开放端口,将防火墙firewalld换成iptables》

3.2 Mysql 开放外部访问权限

  • 进入mysql,执行授权命令
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '您的数据库密码' WITH GRANT OPTION;
  • 刷新授权
flush privileges;
  • 查看用户root是否开通外部访问权限
use mysql;
select host from user where user = 'root';

在这里插入图片描述

3.3 Navicat 不能访问问题

由于8.0版本密码登录方式不同,因此需要修改密码登录方式,从caching_sha2_password 改成 mysql_native_password

1.授权

GRANT ALL ON *.* TO 'root'@'%';

2.更改加密规则

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;

3.更新root用户密码

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

4.刷新权限

flush privileges;
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值