1、镜像 {#1%E3%80%81%E9%95%9C%E5%83%8F}
mysql:5.7 数据库5.7.x系列。
mysql:8 数据库8.x.x系列,安装方式相同。
2、安装 {#2%E3%80%81%E5%AE%89%E8%A3%85}
2.1、拉取镜像 {#2.1%E3%80%81%E6%8B%89%E5%8F%96%E9%95%9C%E5%83%8F}
- 拉取5.7.x版本的镜像。
2.2、基础设置 {#2.2%E3%80%81%E5%9F%BA%E7%A1%80%E8%AE%BE%E7%BD%AE}
- 重启策略:第三或第四项均可。
2.3、网络 {#2.3%E3%80%81%E7%BD%91%E7%BB%9C}
- 桥接即可。
2.4、命令 {#2.4%E3%80%81%E5%91%BD%E4%BB%A4}
-
在原有的"mysqld"命令后填入下列命令,每行一个。
--character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci --explicit_defaults_for_timestamp=true --lower_case_table_names=1
2.5、存储空间 {#2.5%E3%80%81%E5%AD%98%E5%82%A8%E7%A9%BA%E9%97%B4}
-
"/var/lib/mysql":用于存放数据库数据,读写权限;
-
"/var/log/mysql":用于存储数据库日志,读写权限,由于未能设置时区,查看日志时须把目标时间段做"-8"时处理;
-
"/etc/mysql/my.cnf":此为数据库的配置文件,读写权限,注意:这是文件映射非文件夹,本例未使用不做探讨,除非有实际需要可百度查询MySQL配置文件配置;
-
"/etc/timezone":设置时区,只读权限,此容器不支持环境变量"TZ"设置时区,需要映射宿主机的"/etc/timezone",绿联不支持,因此不设置此项;
-
"/etc/localtime":设置时区,只读权限,此容器不支持环境变量"TZ"设置时区,需要映射宿主机的"/etc/localtime",绿联不支持,因此不设置此项;
2.6、端口设置 {#2.6%E3%80%81%E7%AB%AF%E5%8F%A3%E8%AE%BE%E7%BD%AE}
-
保留容器端口为"3306"的即可,本地端口自动或者输入未被使用的端口即可;
-
容器端口"33060"为ssl连接的端口,未做研究,本例不探讨。
2.7、环境 {#2.7%E3%80%81%E7%8E%AF%E5%A2%83}
-
"MYSQL_ROOT_PASSWORD":设置"root"用户的密码,尽量使用复杂密码进行设置,此项必须设置。
-
"MYSQL_ROOT_PASSWORD":设置"root"用户的密码,尽量使用复杂密码进行设置,此项必须设置。
-
"MYSQL_ROOT_PASSWORD":设置"root"用户的密码,尽量使用复杂密码进行设置,此项必须设置。
-
容器不支持"TZ"变量设置时区,已在"2.5、存储空间"中说明。
3、第三方工具连接数据库 {#3%E3%80%81%E7%AC%AC%E4%B8%89%E6%96%B9%E5%B7%A5%E5%85%B7%E8%BF%9E%E6%8E%A5%E6%95%B0%E6%8D%AE%E5%BA%93}
-
地址:ip:port
-
用户:root
-
密码:环境"MYSQL_ROOT_PASSWORD"设置的值。