Redmine 初始化阶段的内部错误

问题描述

我正在尝试在以下产品上设置 Redmine

redmine-4.0.7
Rails 5.2.4.2
Phusion Passenger 6.0.7
Apache/2.4.6
MysqL  Ver 14.14

我原以为会有初始化页面,但是我从 http://mydomain/redmine/ 得到了“内部错误

我可以在 log/prduction.log 中看到以下消息

Completed 500 Internal Server Error in 21ms (ActiveRecord: 1.5ms)

ActiveRecord::StatementInvalid (MysqL2::Error: Can't find file: './redmine/settings.frm' (errno: 13 - Permission denied): SHOW FULL FIELDS FROM `settings`):

似乎我需要 ./redmine/settings.frm 但没有。

有谁知道如何放置 ./redmine/settings.frm 以及应该放入什么内容

解决方法

该错误是由您的数据库服务器(即 MySQL)引发的。 MySQL 似乎没有访问存储表数据的文件所需的权限。

通常,这些文件完全由 MySQL 处理(即创建、更新和最终删除),这需要特定的访问模式以确保数据一致。因此,您应该强烈避免手动更改 MySQL 控制下的任何文件。相反,您应该只使用 SQL 命令来更新表结构和表数据。

现在要解决这个问题,您需要修复 MySQL 数据文件的权限,以便 MySQL 可以正确访问它们。不幸的是,这里并没有简单地解释这里究竟需要什么,因为可能有各种原因。如果您已经设置了 MySQL 服务器,最好从全新开始。