一、dockerhub查找mysql版本
dockerhub 网址: https://hub.docker.com/
我这里以MySQL 5.7 为例进行安装步骤记录。
执行安装命令如下:
docker run -d -p 3306:3306 --privileged=true \
-v E:\docker\mysql\log:/var/log/mysql \
-v E:\docker\mysql/data:/var/lib/mysql \
-v E:\docker\mysql/conf:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=123456 \
--name mysql mysql:5.7 \
--character-set-server=utf8mb4 \ #注意最后这两个参数,必须放到镜像的后面
--collation-server=utf8mb4_unicode_ci
如果没有下载过镜像的话,会先拉取镜像,然后运行容器。我这里是在自己本地windows系统运行的,如下图:
运行完命令之后,会返回对应容器的id,可以使用命令进行查看:
# 查看运行的容器实例
docker ps
已经运行成功了,并且数据卷也挂载成功。
查看本地数据卷挂载:
二、连接数据库
要连接数据库,可以先通过命令行的方式进入到容器内部,进行连接测试,查看是否安装及运行成功。
docker exec -it mysql /bin/bash
使用命令行连接正常,我们尝试使用客户端进行连接。
有一点需要说明:因为这里我是装在了本地,所以使用客户端进行连接的时候,可以使用localhost:3306 进行连接,若是安装在其他服务器上,需要使用具体的服务器IP地址进行连接,端口的话,需要看运行容器时配置的端口映射。
正常连接,执行到这里说明容器一切都运行OK。
三、使用数据库
我们首先通过命令行的方式,进行简单的使用:
一切正常,下面使用客户端工具进行操作。
正常!
关于编码的问题
本文采取docker参数的形式进行设置mysql数据的编码字符集,可以查看上面执行命令。
#注意最后这两个参数,必须放到镜像的后面(镜像名 mysql:5.7),否则会提示参数异常
--character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci