Docker-Mysql 部署文档

fansichao 2021-10-23 16:25:17
Categories: > Tags:

Docker-Mysql

1
2
# 如果防火墙已开启,必须开放端口,否则容器无法启动
firewall-cmd --zone=public --add-port=3306/tcp --permanent

Centos8.2

容器配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 拉取镜像
docker pull mysql
# 检查镜像
docker images
# 创建容器
sudo docker run -p 3306:3306 --name mysql \
-v /data/docker/mysql/conf:/etc/mysql \
-v /data/docker/mysql/logs:/var/log/mysql \
-v /data/docker/mysql/data:/var/lib/mysql \
-v /data/docker/mysql/mysql-files:/var/lib/mysql-files \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:5.7
# 检查容器是否正确运行
docker container ls

mysql 配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# Mysql 默认配置
host: 127.0.0.1
port: 3306
user: root
password: 123456

# sudo docker exec -it mysql bash
# 设置远程访问权限
mysql -uroot -p123456
use mysql;
select host,user,password from user;
grant all privileges on *.* to root@'%' identified by "password";
flush privileges;
select host,user,password from user;

参考资源

使用 Docker 搭建 MySQL 服务

mysql8.0

1
2
3
4
5
6
7
8
9
10
11
12
13
use mysql;
-- CREATE DATABASE IF NOT EXISTS yourdbname DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
CREATE DATABASE wordpress;
CREATE USER 'wordpress'@'*' IDENTIFIED BY 'qwe123';
grant select on wordpress.* to wordpress@'*';
GRANT ALL PRIVILEGES ON wordpress.* TO wordpress@"*";
flush privileges;


CREATE USER 'scfan'@'*' IDENTIFIED BY 'qwe123';
ALTER USER 'scfan'@'*' IDENTIFIED WITH mysql_native_password BY 'qwe123';
grant select on 数据库.* to 用户名@登录主机;