docker-compose 安装MySQL8
version: '3'
services:
mysql:
image: mysql:8.0.27
restart: always
container_name: mysql
command:
# MySQL8的密码验证方式默认是 caching_sha2_password,但是很多的连接工具还不支持该方式
# 就需要手动设置下mysql的密码认证方式为以前的 mysql_native_password 方式
--default-authentication-plugin=mysql_native_password
ports:
- "3306:3306"
volumes:
- /data/mysql/conf:/etc/mysql
- /data/mysql/logs:/logs
- /data/mysql/data:/var/lib/mysql
- /data/mysql/mysql-files:/var/lib/mysql-files/
environment:
MYSQL_ROOT_PASSWORD: “123456”
MYSQL_USER: 'root'
MYSQL_PASS: '123456'
TZ: Asia/Shanghai
注意
设置密码只有在第一次启动的时候有效,后面修改密码通过MySQL 命令修改密码。
原因
docker容器生成后数据存放在data目录,第二次启动直接从data读取数据,所以密码还是原来的密码,设置不会生效。
data目录是原来的拷贝的,设置密码也不会生效,需要通过命令修改密码。
评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果