docker 启动mysql,无法正常启动,挂载配置不生效

如果你的 MySQL 配置文件位于 /data/mysql8.0.21/etc/mysql/my.cnf,你可以按照以下步骤将其挂载到 MySQL 容器中:

启动 MySQL 容器并挂载配置文件:
使用 -v 参数将自定义的配置文件挂载到容器中的 MySQL 配置文件路径 /path/to/etc/mysql/my.cnf。

docker run -d --name mysql-server -e MYSQL_ROOT_PASSWORD=your_password -v /path/to/mysql_data:/var/lib/mysql -v /path/to/mysql_files:/var/lib/mysql-files -v /path/to/etc/mysql/my.cnf:/etc/mysql/my.cnf -p 3308:3306 mysql:8.0.21 --secure-file-priv=/var/lib/mysql-files
这将启动 MySQL 容器,并将 /data/mysql8.0.21/etc/mysql/my.cnf 文件挂载到容器中的 /etc/mysql/my.cnf。

重启容器:
如果 MySQL 容器已经在运行,你可能需要重启容器使新的配置文件生效:

docker restart mysql-server
验证配置文件是否生效:
连接到 MySQL 容器,然后执行以下命令来查看 MySQL 的配置信息:

docker exec -it mysql-server mysql -uroot -p -e "SHOW VARIABLES LIKE 'server_id';"
这将显示 server_id 变量的值以及其他相关的配置信息,以确保新的配置文件已生效。

通过这些步骤,你应该能够成功将位于 /path/to/etc/mysql/my.cnf 的自定义 MySQL 配置文件挂载到容器中,并确保 MySQL 服务使用了你指定的配置选项。

提示
mysql: [Warning] World-writable config file '/etc/mysql/my.cnf' is ignored.

这个警告是因为 MySQL 不希望配置文件被设置为世界可写(world-writable)。为了解决这个问题,你可以尝试更改配置文件的权限,使其不再是世界可写的。你可以在主机上执行以下命令来更改文件权限:

chmod 644 /data/mysql8.0.21/etc/mysql/my.cnf

这将把 /data/mysql8.0.21/etc/mysql/my.cnf 文件的权限更改为 -rw-r--r--,即所有者可读写,但组和其他用户只能读取。

然后,你可以重新启动 MySQL 容器,确保配置文件被正确加载:

docker restart mysql-server
重新启动容器后,再次验证 MySQL 是否成功加载了配置文件:

docker exec -it mysql-server mysql -uroot -p -e "SHOW VARIABLES LIKE 'server_id';"
通过这些步骤,你应该能够解决 MySQL 发出的关于世界可写配置文件的警告,并确保自定义的配置文件被正确加载到 MySQL 容器中。

posted @ 2024-06-26 20:25  Chuan_Chen  阅读(496)  评论(0编辑  收藏  举报
#waifu-toggle { background-color: #fa0; border-radius: 5px; bottom: 66px; color: #fff; cursor: pointer; font-size: 12px; right: 0; margin-right: -100px; padding: 5px 2px 5px 5px; position: fixed; transition: margin-right 1s; width: 60px; writing-mode: vertical-lr; } #waifu-toggle.waifu-toggle-active { margin-right: -40px; } #waifu-toggle.waifu-toggle-active:hover { margin-right: -30px; } #waifu { bottom: -1000px; right: 0; line-height: 0; margin-bottom: -10px; position: fixed; transform: translateY(3px); transition: transform .3s ease-in-out, bottom 3s ease-in-out; z-index: 1; } #waifu:hover { transform: translateY(0); } #waifu-tips { animation: shake 50s ease-in-out 5s infinite; background-color: rgba(236, 217, 188, .5); border: 1px solid rgba(224, 186, 140, .62); border-radius: 12px; box-shadow: 0 3px 15px 2px rgba(191, 158, 118, .2); font-size: 14px; line-height: 24px; margin: -30px 20px; min-height: 70px; opacity: 0; overflow: hidden; padding: 5px 10px; position: absolute; text-overflow: ellipsis; transition: opacity 1s; width: 250px; word-break: break-all; } #waifu-tips.waifu-tips-active { opacity: 1; transition: opacity .2s; } #waifu-tips span { color: #0099cc; } #waifu #live2d { cursor: grab; height: 300px; position: relative; width: 300px; } #waifu #live2d:active { cursor: grabbing; } #waifu-tool { color: #aaa; opacity: 0; position: absolute; left: -10px; top: 70px; transition: opacity 1s; } #waifu:hover #waifu-tool { opacity: 1; } #waifu-tool span { color: #7b8c9d; cursor: pointer; display: block; line-height: 30px; text-align: center; transition: color .3s; } #waifu-tool span:hover { color: #0684bd; /* #34495e */ } @keyframes shake { 2% { transform: translate(.5px, -1.5px) rotate(-.5deg); } 4% { transform: translate(.5px, 1.5px) rotate(1.5deg); } 6% { transform: translate(1.5px, 1.5px) rotate(1.5deg); } 8% { transform: translate(2.5px, 1.5px) rotate(.5deg); } 10% { transform: translate(.5px, 2.5px) rotate(.5deg); } 12% { transform: translate(1.5px, 1.5px) rotate(.5deg); } 14% { transform: translate(.5px, .5px) rotate(.5deg); } 16% { transform: translate(-1.5px, -.5px) rotate(1.5deg); } 18% { transform: translate(.5px, .5px) rotate(1.5deg); } 20% { transform: translate(2.5px, 2.5px) rotate(1.5deg); } 22% { transform: translate(.5px, -1.5px) rotate(1.5deg); } 24% { transform: translate(-1.5px, 1.5px) rotate(-.5deg); } 26% { transform: translate(1.5px, .5px) rotate(1.5deg); } 28% { transform: translate(-.5px, -.5px) rotate(-.5deg); } 30% { transform: translate(1.5px, -.5px) rotate(-.5deg); } 32% { transform: translate(2.5px, -1.5px) rotate(1.5deg); } 34% { transform: translate(2.5px, 2.5px) rotate(-.5deg); } 36% { transform: translate(.5px, -1.5px) rotate(.5deg); } 38% { transform: translate(2.5px, -.5px) rotate(-.5deg); } 40% { transform: translate(-.5px, 2.5px) rotate(.5deg); } 42% { transform: translate(-1.5px, 2.5px) rotate(.5deg); } 44% { transform: translate(-1.5px, 1.5px) rotate(.5deg); } 46% { transform: translate(1.5px, -.5px) rotate(-.5deg); } 48% { transform: translate(2.5px, -.5px) rotate(.5deg); } 50% { transform: translate(-1.5px, 1.5px) rotate(.5deg); } 52% { transform: translate(-.5px, 1.5px) rotate(.5deg); } 54% { transform: translate(-1.5px, 1.5px) rotate(.5deg); } 56% { transform: translate(.5px, 2.5px) rotate(1.5deg); } 58% { transform: translate(2.5px, 2.5px) rotate(.5deg); } 60% { transform: translate(2.5px, -1.5px) rotate(1.5deg); } 62% { transform: translate(-1.5px, .5px) rotate(1.5deg); } 64% { transform: translate(-1.5px, 1.5px) rotate(1.5deg); } 66% { transform: translate(.5px, 2.5px) rotate(1.5deg); } 68% { transform: translate(2.5px, -1.5px) rotate(1.5deg); } 70% { transform: translate(2.5px, 2.5px) rotate(.5deg); } 72% { transform: translate(-.5px, -1.5px) rotate(1.5deg); } 74% { transform: translate(-1.5px, 2.5px) rotate(1.5deg); } 76% { transform: translate(-1.5px, 2.5px) rotate(1.5deg); } 78% { transform: translate(-1.5px, 2.5px) rotate(.5deg); } 80% { transform: translate(-1.5px, .5px) rotate(-.5deg); } 82% { transform: translate(-1.5px, .5px) rotate(-.5deg); } 84% { transform: translate(-.5px, .5px) rotate(1.5deg); } 86% { transform: translate(2.5px, 1.5px) rotate(.5deg); } 88% { transform: translate(-1.5px, .5px) rotate(1.5deg); } 90% { transform: translate(-1.5px, -.5px) rotate(-.5deg); } 92% { transform: translate(-1.5px, -1.5px) rotate(1.5deg); } 94% { transform: translate(.5px, .5px) rotate(-.5deg); } 96% { transform: translate(2.5px, -.5px) rotate(-.5deg); } 98% { transform: translate(-1.5px, -1.5px) rotate(-.5deg); } 0%, 100% { transform: translate(0, 0) rotate(0); } } © 2022 GitHub, Inc. Terms Privacy Securi