这篇文章主要介绍了Docker安装部署Mysql8(以作数据持久化),首先创建容器并进行持久化处理,接着配置远程连接并尝试,本文结合实例代码给大家介绍的非常详细,需要的朋友可以参考下
1.创建容器并进行持久化处理
#拉取镜像
docker pull mysql:8.0.20
#启动镜像,用于拷贝配置文件到宿主机
docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0.20
#查看是否启动成功
docker ps -a
#新建挂载目录并拷贝配置文件
mkdir -p /mysqldata/
docker cp mysql:/etc/mysql /mysqldata/
#删除原有镜像
docker stop mysql
docker rm -f mysql
#启动mysql ,挂载配置文件,数据持久化到宿主主机
docker run \
-p 13306:3306 \
--name mysql \
--privileged=true \
--restart unless-stopped \
-v /home/mysqldata/mysql:/etc/mysql \
-v /home/mysqldata/mysql/logs:/logs \
-v /home/mysqldata/mysql/data:/var/lib/mysql \
-v /etc/localtime:/etc/localtime \
-e MYSQL_ROOT_PASSWORD=cqrecadmin \
-d mysql:8.0.20
#检查是否运行成功
docker ps -a
命令解释:
-p 端口映射
--privileged=true 挂载文件权限设置
--restart unless-stopped 设置 开机后自动重启容器
-v /mnt/sda1/mysql8.0.20/mysql:/etc/mysql 挂载配置文件
-v /mnt/sda1/mysql8.0.20/logs:/logs \ 挂载日志
-v /mnt/sda1/mysql8.0.20/data:/var/lib/mysql \ 挂载数据文件 持久化到主机
-v /etc/localtime:/etc/localtime 容器时间与宿主机同步
-e MYSQL_ROOT_PASSWORD=cquisse 设置密码
-d mysql:8.0.20 后台启动,mysql
2.配置远程连接并尝试
#进入容器
docker exec -it mysql bash
#登录mysql,输入运行容器时配置的密码
mysql -u root -p
#执行sql
CREATE USER 'user_galen'@'%' IDENTIFIED WITH mysql_native_password BY 'Galen*10';
GRANT ALL PRIVILEGES ON *.* TO 'user_galen'@'%';
退出到服务器,开放对应端口
firewall-cmd --add-port=13306/tcp --permanent
firewall-cmd --reload
测试连接
到此这篇关于Docker安装部署Mysql8(以作数据持久化)的文章就介绍到这了,更多相关Docker安装部署Mysql8内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!
本文标题为:Docker安装部署Mysql8的过程(以作数据持久化)


- 阿里云ECS排查CPU数据分析 2022-10-06
- 教你在docker 中搭建 PHP8 + Apache 环境的过程 2022-10-06
- IIS搭建ftp服务器的详细教程 2022-11-15
- 利用Docker 运行 python 简单程序 2022-10-16
- KVM虚拟化Linux Bridge环境部署的方法步骤 2023-07-11
- nginx中封禁ip和允许内网ip访问的实现示例 2022-09-23
- 解决:apache24 安装后闪退和配置端口映射和连接超时设置 2023-09-11
- CentOS_mini下安装docker 之 安装docker CE 2023-09-23
- 【转载】CentOS安装Tomcat 2023-09-24
- CentOS7安装GlusterFS集群的全过程 2022-10-10