docker部署mysql5.7
- 安装部署系列
- 2023-03-09
- 435热度
- 0评论
拉取镜像
docker pull mysql:5.7
创建本地挂载目录
# 宿主机创建数据存放目录映射到容器
mkdir /andy/docker/volume/mysql/data
# 宿主机创建配置文件目录映射到容器
mkdir /andy/docker/volume/mysql/conf # (建议在此目录创建my.cnf文件并进行相关MySQL配置)
# 宿主机创建日志目录映射到容器
mkdir /andy/docker/volume/mysql/logs
运行mysql 5.7
#默认网络模式
docker run --name mysql5.7 -p 3306:3306 -e TZ=Asia/Shanghai \
-e MYSQL_ROOT_PASSWORD=123456! -d --restart=always \
-v /etc/localtime:/etc/localtime \
-v /andy/docker/volume/mysql/data:/var/lib/mysql \
-v /andy/docker/volume/mysql/conf/my.cnf:/etc/mysql/my.cnf \
-v /andy/docker/volume/mysql/logs:/var/log/mysql mysql:5.7
#使用宿主机网络模式
docker run --name mysql5.7 --network=host \
-e MYSQL_ROOT_PASSWORD=123456! -d --restart=always \
-v /etc/localtime:/etc/localtime \
-v /andy/data1/storage/mysql/data:/var/lib/mysql \
-v /andy/data1/storage/mysql/conf/my.cnf:/etc/mysql/my.cnf \
-v /andy/data1/storage/mysql/logs:/var/log/mysql mysql:5.7
进入mysql 5.7容器并登录
docker exec -it mysql5.7 bash
登录mysql
mysql -u root -p
授权远程登录
#进入容器输入命令
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456!' WITH GRANT OPTION;
#更改用户密码验证方式
ALTER USER 'root'@'%' IDENTIFIED BY '123456!' PASSWORD EXPIRE NEVER;
#刷新更改密码验证方式之后的密码
#远程
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456!';
#本地
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456!';
#刷新权限
FLUSH PRIVILEGES;