使用Docker安装MySQL8.0

1、安装docker

sudo apt-get update
sudo apt install docker.io

2、拉取MySQL的镜像

docker pull mysql

3、查看镜像情况

docker images

可以看到MySQL8.0的镜像已经有了,tag是latest。,表明是最新的,镜像的创建时间是2周前

4、第一次启动MySQL

docker run -p 3306:3306 --name MYSQL8.0 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:latest

解释下这条命令的参数:

  • -p 3306:3306:将容器内的3306端口映射到实体机3306端口
  • --name MYSQL8.0:给这个容器取一个容器记住的名字
  • -e MYSQL_ROOT_PASSWORD=123456:docker的MySQL默认的root密码是随机的,这是改一下默认的root用户密码
  • -d mysql:latest:在后台运行mysql:latest镜像产生的容器

之后的第二次启动直接用docker start MYSQL8.0即可,不需要docker run

5、进入mysql容器

docker exec -it MYSQL8.0 bash

## 登录mysql
mysql -uroot -p123456

## 修改密码
alter user 'root'@'%' identified by '123456' password expire never;
alter user 'root'@'%' identified with mysql_native_password by '123456';
flush privileges;

## 设置远程访问账号
grant all privileges on *.* to root@'%' identified by "password";
flush privileges;

6.如果要建立目录映射

duso docker run -p 3306:3306 --name mysql \
-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=123456 \
-d mysql:5.7

-v:主机和容器的目录映射关系,":"前为主机目录,之后为容器目录

你可能感兴趣的:(使用Docker安装MySQL8.0)