CentOS系统使用Docker搭建mysql5.7数据库

CentOS系统使用Docker搭建mysql5.7数据库

  1. 在docker拉取mysql5.7镜像 内联代码片

:5.7指明版本号

docker pull mysql:5.7

CentOS系统使用Docker搭建mysql5.7数据库_第1张图片

  1. 在宿主机创建mysql映射的目录 内联代码片

创建目录

mkdir -p /data /data/docker /data/docker/mysql /data/docker/mysql/logs /data/docker/mysql/conf

CentOS系统使用Docker搭建mysql5.7数据库_第2张图片

在/data/docker/mysql/conf中创建 *.cnf 文件(叫什么都行)

touch /data/docker/mysql/conf/my.cnf
  1. 创建mysql容器 内联代码片

将docker容器的数据、日志、配置文件映射到宿主机
-d: 后台运行容器
-p 将容器的端口映射到本机的端口
-v 将主机目录挂载到容器的目录,冒号左面的表示宿主机的挂载目录,冒号右边则表示容器内部的路径。
-e 设置参数
-e MYSQL_ROOT_PASSWORD:设置root用户密码
-v /data/docker/mysql:/var/lib/mysql 映射配置文件
\ 命令换行符号

docker run -p 3306:3306 --name mysql5.7 \
--restart always --privileged=true \
-v /data/docker/mysql/conf:/etc/mysql/my.conf.d \
-v /data/docker/mysql/logs:/logs \
-e MYSQL_ROOT_PASSWORD=root -d mysql:5.7

CentOS系统使用Docker搭建mysql5.7数据库_第3张图片

  1. 启动mysql5.7容器

查看是否已启动

docker ps

CentOS系统使用Docker搭建mysql5.7数据库_第4张图片

如果docker ps下面没有启动,则启动

docker start mysql5.7

如果启动不了,则说明上一步出问题

  1. 允许数据库外网访问 内联代码片

进入容器

docker exec -it mysql5.7 /bin/bash

CentOS系统使用Docker搭建mysql5.7数据库_第5张图片
(1). 进入MySQL

mysql -uroot -p

CentOS系统使用Docker搭建mysql5.7数据库_第6张图片

(2). 授权

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

CentOS系统使用Docker搭建mysql5.7数据库_第7张图片
(3). 刷新权限

flush privileges;

CentOS系统使用Docker搭建mysql5.7数据库_第8张图片

(4)exit退出mysql和容器

(5)打开防火墙端口

开发3306端口

firewall-cmd --zone=public --add-port=3306/tcp --permanent

刷新容器

firewall-cmd --reload

连接成功
CentOS系统使用Docker搭建mysql5.7数据库_第9张图片

你可能感兴趣的:(docker,mysql,docker,linux,centos,服务器)