docker下mysql 8.0.28安装及远程访问

1、拉镜像

docker pull mysql:8.0.28

2、启动镜像

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

    查看是否启动成功

docker ps -a

3、启动成功后,进入容器内部拷贝配置文件,到宿主主机

docker cp mysql:/etc/mysql /home/docker/mysql8.0.28

    拷贝容器的 /etc/mysql目录到 主机目录/home/docker/mysql8.0.28

4、删除mysql容器,重新创建容器

    1、停止容器

docker stop mysql

    2、删除容器

docker rm mysql

5、启动mysql ,挂载配置文件,数据持久化到宿主主机

docker run -p 3306:3306 --name mysql --privileged=true --restart unless-stopped -v /home/docker/mysql8.0.28/mysql:/etc/mysql -v /home/docker/mysql8.0.28/logs:/logs -v /home/docker/mysql8.0.28/data:/var/lib/mysql -v /etc/localtime:/etc/localtime -v /home/docker/mysql8.0.28/mysql-files:/var/lib/mysql-files/ -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0.28

    查看是否启动成功

docker ps -a

   查看文件目录是否挂载成功

6、设置远程连接

    1、进入容器

docker exec -it 你的容器id /bin/bash 

    2、进入mysql

mysql -u root -p

    3、设置

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

flush privileges;

    普通用户设置:

ALTER USER 'myuser'@'%' IDENTIFIED WITH mysql_native_password BY 'mypass';

flush privileges;

grant all privileges on mydb.* to 'myuser'@'%' with grant option;

flush privileges;

 

posted @ 2022-03-24 14:58  tt1234  阅读(725)  评论(0编辑  收藏  举报