docker 安装MySQL 5.7.37

Colin 6月前 ⋅ 96 阅读

拉取镜像

docker pull mysql:5.7.37

创建自定义网络

docker network create --driver bridge --subnet 192.168.0.0/16 --gateway 192.168.0.1 workflow_net

创建自定义网络的好处就是不用--link,可以直接使用容器名称或容器ID链接数据库。当然,这一步也可以省略,其它容器中的应用要链接该容器中的mysql服务则需要使用 --link的方式来链接数据库。

运行MySQL

docker run --name mysql_db -p 3306 -e MYSQL_ROOT_PASSWORD=123456 -d --net workflow_net mysql:5.7.37

配置MySQL

Docker默认安装的MySQL编码不支持utf8mb4,首先在宿主机当前目录创建一个my.cnf,写好内容之后复制到容器中替换默认的配置文件。 执行shell脚本,编写文件:

vi ./my.cnf

回车之后键入如下内容:

[client]
default-character-set=utf8mb4

[mysql]
default-character-set=utf8mb4

[mysqld]
init_connect='SET collation_connection = utf8mb4_general_ci'
init_connect='SET NAMES utf8mb4'
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci
skip-character-set-client-handshake

粘贴好内容之后按ESC键在vi命令行输入:wq保存该文件。 执行如下命令,将刚创建的文件cp到容器内部:

docker cp ./my.cnf mysql_db:/etc/mysql/

最后重启服务完成安装以及配置

docker restart mysql_db

全部评论: 0

    我有话说: