Docker安装mysql5.7带挂载启动

  • Post author:
  • Post category:mysql


一、拉取mysql5.7镜像

docker pull mysql:5.7

二、验证镜像是否拉取成功

docker images

三、运行容器

docker run -it --name 别名 -d -p 3306:3306 镜像ID

docker run -it --name mysql1 -d -p 3306:3306 2c9028880e58

四、查看容器是否运行成功

docker ps

没有运行成功的容器,因为mysql运行要指定用户名密码指令

删除没有运行成功的容器

五、重新运行mysql,指定密码为123456

docker run -it --name mysql1 -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456  2c9028880e58

六、查看指定密码后mysql是否运行成功

docker ps

显示容器已经运行成功

七、配置mysql挂载运行

1、


宿主机里home目录下新建mysql目录,复制容器里conf.d,log




,




mysql到宿主机

docker cp  容器id:/etc/mysql/conf.d  /home/mysql/
docker cp  eb0630b28b07:/etc/mysql/conf.d  /home/mysql/
docker cp  容器id:/var/log  /home/mysql/
docker cp  eb0630b28b07:/var/log  /home/mysql/
docker cp  容器id:/var/lib/mysql  /home/mysql/ 
docker cp  eb0630b28b07:/var/lib/mysql  /home/mysql/

2、停止当前容器

docker stop eb0630b28b07

3、


把容器里的




mysql




里的conf.d,log,mysql挂载到宿主机




mysql




目录下,方便上传代码,同步持久化日志,以及方便配置




mysql

docker run --name 别名 -itd -p 3306:3306 -v /home/mysql/conf/:/etc/mysql/conf.d/ -v /home/mysql/log/:/var/log -v /home/mysql/mysql/:/var/lib/mysql/ -e MYSQL_ROOT_PASSWORD=123456  镜像ID

docker run --name mysql -itd -p 3306:3306 -v /home/mysql/conf/:/etc/mysql/conf.d/ -v /home/mysql/log/:/var/log -v /home/mysql/mysql/:/var/lib/mysql/ -e MYSQL_ROOT_PASSWORD=123456  2c9028880e58

mysql8步骤大致不差,要注意密码加密方式的修改,指定加密协议–default-authentication-plugin=mysql_native_password。这样用图形化工具才能连接。

docker run --name 别名 -itd -p 3306:3306 -v /home/mysql/conf/:/etc/mysql/conf.d/ -v /home/mysql/log/:/var/log -v /home/mysql/mysql/:/var/lib/mysql/ -e MYSQL_ROOT_PASSWORD=123456 --restart=always 镜像ID --default-authentication-plugin=mysql_native_password

docker run --name mysql -itd -p 3306:3306 -v /home/mysql/conf/:/etc/mysql/conf.d/ -v /home/mysql/log/:/var/log -v /home/mysql/mysql/:/var/lib/mysql/ -e MYSQL_ROOT_PASSWORD=123456 --restart=always 2c9028880e58 --default-authentication-plugin=mysql_native_password

查看容器是否运行成功

有强迫症的可以把之前的mysql1给删掉。

查看所有容器

docker ps -a

tomcat1是没有运行的,我们来删除它。

docker rm eb0630b28b07

ok,mysql1已经删除,剩下一个mysql的容器。

别名为:mysql的容器已经运行成功。

八、验证mysql是否能使用

1、打开mysql图形化工具,我这里用的是sqlyog

2、我的服务器宿主机地址为:118.31.46.55 必须是服务器宿主机地址

3、用户名默认为root,密码为刚刚命令设置的123456

4、测试连接成功



版权声明:本文为qq_36539042原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。