Docker 安装 Mysql 数据库

 一、官方推荐安装方式:  

      1、执行 docker pull mysql:5.6 命令,下载 mysql 镜像,如下所示:

Docker 安装 Mysql 数据库_第1张图片

        2、执行命令,创建并启动 mysql 容器

docker run -d --name mysql5.6-3306 -p 3307:3306 -e MYSQL_ROOT_PASSWORD='123456' mysql:5.6

# -e 是环境配置

        3、授权其他主机可以进行访问

# 进入 mysql 容器
docker exec -it mysql5.6-3306 bash

# 打开mysql 命令行,并输入密码
mysql -u root -p 

# 授权其他主机可以进行访问
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

# 权限刷新
FLUSH PRIVILEGES;

# 并退出
exit;

Docker 安装 Mysql 数据库_第2张图片

        4、使用 navicat 进行连接测试,我们发现没有问题,可以正常的进行连接。

Docker 安装 Mysql 数据库_第3张图片

Docker 安装 Mysql 数据库_第4张图片

        5、删除 mysql 容器,删除之后再次尝试使用 navicat 进行连接

# 首先关闭当前的 mysql 容器
docker stop mysql5.6-3306

# 删除 mysql 容器
docker rm mysql5.6-3306

Docker 安装 Mysql 数据库_第5张图片

Docker 安装 Mysql 数据库_第6张图片

二、常用安装方式:

      1、执行 docker pull mysql:5.6 命令,下载 mysql 镜像,如下所示:

Docker 安装 Mysql 数据库_第7张图片

        2、执行命令,创建并启动 mysql 容器,并挂载数据目录

# 即使挂载的宿主文件夹不存在也没事,docker 会自动帮我们创建
docker run -d --name mysql5.6-3306 -p 3307:3306 -e MYSQL_ROOT_PASSWORD='123456' -v /usr/local/mysql/conf:/etc/mysql/conf.d -v /usr/local/mysql/data:/var/lib/mysql mysql:5.6

        3、执行命令来查看挂载是否成功

docker inspect docker5.6-3306

Docker 安装 Mysql 数据库_第8张图片

         4、使用 navicat 进行连接测试,我们发现没有问题,可以正常的进行连接。

Docker 安装 Mysql 数据库_第9张图片

        5、测试挂载是否生效,首先创建一个数据库 mysql_container_test ,然后删除掉 mysql 容器,看看数据库在宿主机中是否还存在

        我们发现即使容器被删除掉了,宿主机的数据库仍然存在

         6、ro rw 参数

# 只读
ro = read only

# 可读可写
rw = read write  

# 一旦设置了容器权限,容器对我们挂载出来的内容就有了限定。
# 只要看到 ro 就说明这个路径只能通过宿主机来操作,容器内部是无法操作!

docker run -d --name mysql5.6-3306 -p 3307:3306 -e MYSQL_ROOT_PASSWORD='123456' -v /usr/local/mysql/conf:/etc/mysql/conf.d:ro mysql:5.6


docker run -d --name mysql5.6-3306 -p 3307:3306 -e MYSQL_ROOT_PASSWORD='123456' -v /usr/local/mysql/data:/var/lib/mysql:rw mysql:5.6

你可能感兴趣的:(docker,docker,mysql)