1. 部署流程
1.1 导入镜像文件
# 上传镜像文件并导入镜像
docker load -i mysql8.0.32.tar
# 输出日志
cafea4e45110: Loading layer [==================================================>]112.4MB/112.4MB
...
Loaded image: mysql:8.0.32
导入后可以使用命令查看镜像信息:
docker images
# 镜像信息
REPOSITORY TAG IMAGE ID CREATED SIZE
mysql 8.0.32 412b8cc72e4a 2 years ago 531MB
1.2 创建挂载目录
为的是便于编辑配置文件和查看日志信息,如果数据库的数据量比较大,也可将数据文件放在容器外(启动容器的时候挂载 data 和 log 目录即可):
# 创建挂载目录
mkdir -p /home/mysql/{conf,data,log}
1.3 添加配置文件
可以添加自定义配置文件,也可使用默认配置:
# 添加配置文件
vim /home/jsgx/mysql/conf/my.cnf
# 配置文件内容
[mysqld]
# 默认配置
log_bin=mysql-binlog
max_connections=2000
join_buffer_size=8M
read_buffer_size=8M
read_rnd_buffer_size=8M
innodb_log_buffer_size=128M
innodb_read_io_threads=8
innodb_write_io_threads=8
innodb_buffer_pool_size=64G
table_open_cache=4000
secure_file_priv=
innodb_log_file_size=1024M
innodb_log_files_in_group=4
innodb_flush_log_at_trx_commit=0
sync_binlog=2000
sql_mode=NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
lower_case_table_names=1
[client]
port=3306
[mysqldump]
quick
max_allowed_packet=1024M
net_buffer_length=64M
1.4 启动命令
在使用 Docker 启动 MySQL 容器时,可通过 docker run 命令传递多种参数来配置容器的运行环境、网络、存储以及 MySQL 本身的属性。而这些参数可以大致分为 Docker 运行参数(控制容器行为)和 MySQL 镜像特定参数(控制数据库行为)。
以下是常用的参数详解:
1.4.1 核心配置参数(环境变量)
这些参数通常以 -e 开头,用于设置 MySQL 的初始配置和用户权限。
| 参数 | 含义 | 示例 |
|---|---|---|
-e MYSQL_ROOT_PASSWORD=yourpassword | 必填。设置 MySQL 的 root 用户密码。 | -e MYSQL_ROOT_PASSWORD=123456 |
-e MYSQL_ROOT_HOST=% |

