docker通过挂载虚拟硬盘扩容导致的权限问题
起因:由于docker目录磁盘满了,想着扩容好正常使用。结果就出问题了。因为我是用的FRP内网穿透使用nacos的服务等相关中间件。Idea 启动就报错了(裂开)!
参考链接:https://blog.51cto.com/u_5650011/5385648
参考链接:https://blog.51cto.com/u_16175507/7096263
参考链接:https://blog.csdn.net/weixin_41105915/article/details/134503877
docker存储目录扩容:https://blog.csdn.net/qq_32786223/article/details/127787572
一.扩容前后的数据:
1.1扩容完成启动mysql的时候就出错了,没有权限!MySQL 跑不起来,nacos也挂掉了!
二.解决方式:在mysql的配置文件my.inf,添加缓存存放的路径。
注意:这里存放缓存的路径是mysql容器内部的路径(可通过docker exec -it mysql /bin/bsah)
2.1保存,重启mysql.
三.这个时候问题已经解决了,但是缓存位置还是的放在其默认位置,/tmp。
3.1 MySQL查询相关文件的路径
注:查看mysql的临时文件目录位置(当mysql进行大量查询时,需要用到临时文件):show variables like ‘%dir%’;
3.2 此处在容器内部给tmp文件夹进行授权:chmod -R 777 tmp
3.3 我们再返回到mysql的配置文件,my.inf 注释掉刚刚自定义配置的缓存存放目录。再重启mysql即可!
四.结束
注:我这里使用的1panel 进行文件的编辑,且我挂载了Mysql的的data,conf log等文件夹到宿主机。方便修改备份等。
如果是使用命令行可以使用vim的相关操作(没挂载目录,在容器内部操作的时候)。
此时问题解决,特此记录!