Docker安装Mysql

1、在docker hub 上查看要下载的mysql镜像名称

dockerHub官网地址

在上方搜索栏里输入mysql

找到要拉取的镜像版本,在tag下找到版本

回到虚拟机界面,执行下面命令来拉取mysql镜像
不指定版本号,默认下载最新版本:

sudo docker pull mysql

指定版本号:

sudo docker pull mysql:5.7

2、镜像拉取完成后,用该镜像创建mysql实例,使用下面的命令来创建

sudo docker run \
 -p 3306:3306 --name mysql \
 -v /mydata/mysql/log:/var/log/mysql \
 -v /mydata/mysql/data:/var/lib/mysql \
 -v /mydata/mysql/conf:/etc/mysql \
 -e MYSQL_ROOT_PASSWORD=root \
 -d mysql:5.7

这里对上面的参数做下简单的介绍,如果不想了解这一块直接复制上面的命令执行即可:

配置端口映射:

-p 3306:3306 --name mysql

将容器的3306端口映射到主机的3306端口

配置mysql数据卷挂载

-v <宿主机目录绝对路径:容器内目录绝对路径>

1.-v /mydata/mysql/log:/var/log/mysql(日志文件挂载)

将容器中的日志文件夹挂载到主机对应的/mydata/mysql/log文件夹中

2.-v /mydata/mysql/data:/var/lib/mysql(数据文件挂载)

将容器中的数据文件夹挂载到主机对应的/mydata/mysql/data文件夹中

3.-v /mydata/mysql/conf:/etc/mysql(配置文件挂载)

将容器的配置文件夹挂载到主机对应的/mydata/mysql/conf文件夹中

注(这里所提的主机指的是当前的linux主机)

配置用户

-e MYSQL_ROOT_PASSWORD=root

设置初始化root用户的密码

指定镜像资源

-d mysql:5.7

-d:以后台方式运行实例

mysql:5.7:指定用这个镜像来创建运行实例

下面演示是用root用户来执行的命令,如果当前不是root用户,要在命令前加 sudo,以管理员方式来运行

 

 创建成功后使用下面命令查看下创建好的mysql实例: 

docker ps -a

用navicat测试下数据库是否启动成功:

用户名密码刚才创建docker时均设为了root

点击测试连接,显示测试成功,说明docker的mysql实例已经正常启动

 

2.1、进入容器

# 进入容器 bash/sh 都可以
docker exec -it 容器ID /bin/bash

例如mysql的容器ID:

docker ps

docker exec -it 981fe6284798 /bin/bash

 

2.2、配置my.cnf

在宿主机映射地址中配置my.cnf

cd /mydata/mysql/conf
vim my.cnf

my.cnf 基本默认内容

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

重启容器

docker stop 容器ID

docker start 容器ID

 

posted @ 2022-06-23 16:59  阿尔法哲  阅读(380)  评论(0编辑  收藏  举报