docker部署mysql

本人这次安装的mysql 5.7版本。

参考文章为

mysql官网 https://dev.mysql.com/doc/refman/5.7/en/docker-mysql-getting-started.html

docker hub https://hub.docker.com/_/mysql/

runoob http://www.runoob.com/docker/docker-install-mysql.html

本来想使用Dockerfile安装,但是尝试安装5.7、5.6版本都失败了,有可能是我的虚拟机问题或者网络问题,安装了一天也没成功,只能暂时放弃,使用拉去镜像,直接运行的简单的方式来,后期再想办法使用Dockerfile。

1、下载镜像

docker pull mysql/mysql-server:5.7

2、创建并启动容器

docker run --name mysql5.7 -p 3306:3306 --mount type=bind,src=/home/xijie/app/mysql-client/data,dst=/var/lib/mysql --mount type=bind,src=/home/xijie/app/mysql-client/my.cnf,dst=/etc/my.cnf -d mysql/mysql-server:5.7

3、获取root用户的密码,由于在docker run中未指定密码,所以密码是随机生成的,需要在logs中得到。

 docker logs mysql5.7 2>&1 | grep GENERATED

其中msyql5.7为刚刚创建的容器名称

4、进入mysql中重置密码

docker exec -it mysql5.7 mysql -uroot -p

其中msyql5.7为容器名称,输入该命令后,然后输入第三步获取的密码。

接下来就进入mysql命令中,然后输入如下命令进行密码重置。


mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';

其中'password'可以替换成自己想社的密码。

5、然后重启该mysql容器,输入

docker exec -it mysql5.7 mysql -uroot -p

然后按提示输入新设密码,检验新密码是否正确。

6、外界电脑通过navicat连接该mysql容器服务器,报错。解决方案如下:

https://blog.csdn.net/zhizhuodewo6/article/details/86608569

先进入容器的msyql,命令如下:

docker exec -it mysql5.7 mysql -uroot -p

然后

mysql>update user set host = '%' where user = 'root';

即可,即将root用户的允许连接地址由localhost改为任意。

7、这样msyql部署完毕,具体参考mysql官网。

https://dev.mysql.com/doc/refman/5.7/en/docker-mysql-getting-started.html

由于mysql提供的dockerfile不支持centos,如需用dockerfile,需要自己修改官网的dockerfile去做。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值