- 创建容器
先找个地方创建指定目录
例如 /root/tim-tools/mysql-docker
创建下面的文件
docker-compose.yml
version: '3.8'
services:
mysql:
image: mysql:8.0
container_name: mysql8
restart: always
environment:
MYSQL_ROOT_PASSWORD: "password" #密码自己设定
volumes:
- ./data:/var/lib/mysql
- ./mysql/conf.d:/etc/mysql/conf.d
- ./backups:/backups
ports:
- "3306:3306"
- 然后在这个目录打开终端
// 创建容器
docker compose up -d
// 检查容器运行状态
docker ps -f name=mysql8
// 登录尝试(输入命令后直接键入密码即可,密码是不可视的)
docker exec -it mysql8 mysql -uroot -p
- 在root环境中创建指定用户
// 创建用户
CREATE USER 'custom_user'@'%' IDENTIFIED BY 'custom_password';
// 创建表
CREATE DATABASE IF NOT EXISTS custom_base;
// 授予用户所有权限
GRANT ALL PRIVILEGES ON custom_base.* TO 'custom_user'@'%';
// 完成后刷新权限
FLUSH PRIVILEGES;
- 修改root密码(docker貌似不起效)
// 常规MySQL
ALTER USER 'root'@'%' IDENTIFIED BY 'new_password';
// MySQL8.0+ 兼容PHP需要
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'new_password';
// 完成后刷新权限
FLUSH PRIVILEGES;
评论已关闭