docker 安装mysql

目录

1.下载镜像

2.docker容器文件挂载与端口映射

3.登录mysql

4.连接工具连接mysql

5.密码忘记重置


1.下载镜像

# 指定版本
docker pull mysql:5.7
# 最新版本 
docker pull mysql:latest  

2.docker容器文件挂载与端口映射

docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e TZ=Asia/Shanghai \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7 \
--lower_case_table_names=1

参数说明
–name :为我们当前启动的容器命名
-p 3306:3306:将容器的3306端口映射到主机的3306端口
-v/mydata/mysql/conf:/etc/mysql:将配置文件夹挂载到主机,通过在linux就可以查看了
-v /mydata/mysg/log:/ar/log/mysql:将日志文件夹挂载到主机
-v /mydata/myq/data/var/ib/mysql/:将配置文件夹挂载到主机
-e TZ=Asia/Shanghai 设置时区
-e MYSQL ROOT PASSWORD=root: 初始化root用户的密码
-d:后台启动 版本为5.7的mysql的镜像
--lower_case_table_names=1 忽略数据库大小写

3.登录mysql

4.连接工具连接mysql

记得服务器防火墙打开3306端口

5.密码忘记重置

1.进入容器
docker exec -it mysql /bin/bash

2.调整MySQL配置文件,设置跳过权限控制
echo "skip-grant-tables" >> /etc/mysql/conf.d/docker.cnf

3.退出重启容器
exit
docker restart mysql

4.进入容器
docker exec -it mysql /bin/bash

5.登录 mysql(无需密码)
mysql -u root

6.更新权限
flush privileges;

7.修改密码
alter user 'root'@'localhost' identified by '{新的密码}';
alter user 'root'@'localhost' identified by 'root';

8.退出/替换掉刚才加的跳过权限控制的语句
exit
sed -i "s/skip-grant-tables/ /" /etc/mysql/conf.d/docker.cnf

9.退出重启容器
exit
docker restart mysql


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值