docker 安装mysql8.0及挂载目录遇到的坑

先上报错命令:
docker run -d -p 3310:3306 -v H:\docker\mysql\conf:/etc/mysql -v H:\docker\mysql\logs:/var/log/mysql -v H:\docker\mysql\data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql8.0 mysql:8.0
指定了配置文件、日志、数据库的挂载,看起来没啥毛病,但是就是执行该命令后docker ps 看不到mysql。

百思不得其解,然后docker logs mysql8.0,看到如下报错:
C:\Users\rookieZn> docker logs mysql8.0
2022-08-18 08:30:14+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.27-1debian10 started.
2022-08-18 08:30:14+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
2022-08-18 08:30:14+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.27-1debian10 started.
mysqld: Error on realpath() on '/var/lib/mysql-files' (Error 2 - No such file or directory)
2022-08-18T08:30:14.932180Z 0 [ERROR] [MY-010095] [Server] Failed to access directory for --secure-file-priv. Please make sure that directory exists and is accessible by MySQL Server. Supplied value : /var/lib/mysql-files
2022-08-18T08:30:14.932193Z 0 [ERROR] [MY-010119] [Server] Aborting
居然还要挂载/var/lib/mysql-files文件夹,然后rm了一下刚才的容器,重新编辑了一下命令:
docker run -d -p 3310:3306 -v H:\docker\mysql\conf:/etc/mysql -v H:\docker\mysql\logs:/var/log/mysql -v H:\docker\mysql\data:/var/lib/mysql -v H:\docker\mysql\mysql-files:/var/lib/mysql-files -e MYSQL_ROOT_PASSWORD=123456 --name mysql8.0 mysql:8.0

docker ps 看到启动成功,外部的navicat也能连接上了。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容