指定的数据目录/var/lib/mysql/不可用,您可以删除服务器添加到其中的所有文件,mysql image中的错误

taor4pac  于 5个月前  发布在  Mysql
关注(0)|答案(2)|浏览(74)

在我改变了docker的数据目录(即/etc/docker/daemon. json)后,当我试图运行mysql image时,我得到了以下错误

2022-07-13T10:31:27.580551Z 0 [System] [MY-013169] [Server] /usr/sbin/mysqld (mysqld 8.0.29) initializing of server in progress as process 43
2022-07-13T10:31:27.584905Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2022-07-13T10:31:27.588941Z 1 [ERROR] [MY-012576] [InnoDB] Unable to create temporary file inside "/tmp"; errno: 13
2022-07-13T10:31:27.588965Z 1 [ERROR] [MY-012929] [InnoDB] InnoDB Database creation was aborted with error Generic error. You may need to delete the ibdata1 file before trying to start up again.
2022-07-13T10:31:27.589074Z 0 [ERROR] [MY-010020] [Server] Data Dictionary initialization failed.
2022-07-13T10:31:27.589091Z 0 [ERROR] [MY-013236] [Server] The designated data directory /var/lib/mysql/ is unusable. You can remove all files that the server added to it.
2022-07-13T10:31:27.589141Z 0 [ERROR] [MY-010119] [Server] Aborting
2022-07-13T10:31:27.589437Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.29)  MySQL Community Server - GPL.

字符串

qoefvg9y

qoefvg9y1#

“真实的”问题显示在这一行的前面:

2022-07-13T10:31:27.588941Z 1 [ERROR] [MY-012576] [InnoDB] Unable to create temporary file inside "/tmp"; errno: 13

字符串
MySQL似乎在写入/tmp目录时遇到问题。请检查目录的权限和/或docker配置。
修复后,您可以删除上述数据目录(/var/lib/mysql)并重试。但请注意,如果您之前在目录中有任何现有的数据库;-)

2ekbmq32

2ekbmq322#

当我在另一台设备上安装ubuntu时,总是遇到这个问题。
解决方法是删除你的docker卷。
尝试运行docker volume ls并检查是否有一个已创建的卷。在我的情况下,我已经有一个现有的卷,这就是为什么上次它说/var/lib/mysql不可用。
只需运行docker volume rm <volume_name>,然后再次正常运行Docker。
希望这对你有帮助。

相关问题