docker 安装 MySQL

步骤1:创建宿主机 MySQL 相关文件目录,均放在/data/software/mysql/目录中:

1
2
3
4
mkdir -p /data/software/mysql/log
mkdir -p /data/software/mysql/data
mkdir -p /data/software/mysql/conf
mkdir -p /data/software/mysql/mysql-files

步骤2:在 /data/software/mysql/conf 中创建 my.cnf 配置文件

1
2
3
4
5
6
7
8
9
[mysqld]
character-set-server=utf8
collation-server=utf8_bin
default-storage-engine=INNODB
secure-file-priv=/var/lib/mysql
max_allowed_packet=512M
innodb_log_file_size=2GB
transaction-isolation=READ-COMMITTED
binlog_format=row

步骤3:docker 运行 mySQL。

下述中宿主服务器 4417 端口映射到 docker 容器中的 3306 端口

1
2
3
4
5
6
docker run -p 4417:3306 --name mysql --restart=always --privileged=true \
-v /data/software/mysql/log:/var/log/mysql \
-v /data/software/mysql/data:/var/lib/mysql \
-v /data/software/mysql/conf:/etc/mysql \
-v /data/software/mysql/mysql-files:/var/lib/mysql-files \
-e MYSQL_ROOT_PASSWORD='123456' -d mysql:latest

步骤4:设置 root 账号任意IP访问:

1
2
update user set Host='%' where User='root';
flush privileges;

步骤5:修改密码

1
2
ALTER USER 'root'@'%' IDENTIFIED BY 'woodwhales@123';
flush privileges;

修改密码

在宿主服务器中,找到 /data/software/mysql/conf/my.cnf 配置,在配置内容的下方添加:

1
skip-grant-tables

进入 docker 容器登录 MySQL server 时,不需要输入root账号密码。修改密码之后注意去除上述配置。

1
2
ALTER USER 'root'@'%' IDENTIFIED BY 'woodwhales@123';
flush privileges;
updated updated 2024-09-14 2024-09-14
本文结束感谢阅读

本文标题:docker 安装 MySQL

本文作者:woodwhales

原始链接:https://woodwhales.cn/2023/12/03/091/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

0%