MySql教程

docker安装mysql

本文主要是介绍docker安装mysql,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

访问 MySQL 镜像库地址
拉取mysql5.7版本

docker pull mysql:5.7

如果需要最新版本

docker pull mysql:latest

等待下载

下载完成后查看镜像

docker images

启动docker容器

docker run -d --name mysql5.7 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7

  • docker run 创建一个新的容器,同时运行这个容器
  • --name mysqlcontainer1:代表容器的名字
  • -d 后台运行
  • -p:代表端口映射,格式为宿主机映射端口:容器内部运行端口
  • --restart unless-stopped 容器重启策略
  • -e:代表添加环境变量,MYSQL_ROOT_PASSWORD是root用户的登陆密码123456
  • \ shell命令换行符
  • mysql:5.7:表示使用的镜像以及版本号
  • -v:为启动的容器挂在volume,mysql数据库默认数据目录是容器中的/var/lib/mysql目录,该目录是容器自带的一个volume,如果不为mysql容器单独配置数据目录volume,那么我们会发现重启mysql容器后mysql数据库中数据都丢失了。为了持久化mysql数据,我们在启动mysql容器时添加了-v /data/mysqldata:/var/lib/mysql参数,把主机的/data/mysqldata目录挂载到容器的/var/lib/mysql下
  • -v /data/mysqldata/log:/var/log/mysql 将日志文件挂载到主机
  • -v /data/mysqldata/data:/var/lib/mysql 将mysql存储文件挂载到主机
  • -v /data/mysqldata/conf:/etc/mysql 将配置文件挂载到主机

如果需要持久化mysql的数据,再执行下面的代码

docker run -d --name mysqlcontainer1 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -v /data/mysqldata/log:/var/log/mysql -v /data/mysqldata/data:/var/lib/mysql -v /data/mysqldata/conf:/etc/mysql mysql:5.7

更新密码
使用命令进入mysql终端

docker exec -it mysql bash

登录mysql

mysql -u root -p

修改mysql密码

SET PASSWORD FOR 'root' = PASSWORD('密码');

修改本地mysql密码

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('密码');

给root 用户分配权限

alter user 'root'@'%' identified with mysql_native_password by '123456';

重启docker

docker restart mysqlcontainer1

服务器把3306防火墙解开

这篇关于docker安装mysql的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!