我无法通过设置脚本 (/setup/setup.php) 中的数据库选择。我的设置:
- Ubuntu 20.04
- PHP 7.4.9
- MySQL 8.0.21
- Ilias 6.1(今天也尝试了 6.2,但遇到了同样的问题)
我知道数据库服务器和客户端工作正常(大约有十几个其他 LAMP 应用程序在其上运行,并在 CLI 上检查了与 mysql 的特定 ilias 连接)。但是脚本不断地回到我身边:
“无法访问数据库。请检查凭据以及数据库是否存在”
我尝试过变体:
- 本地主机与 127.0.0.1
- MyISAM 与 InnoDB 引擎
我在 /Services/Database/classes/PDO/class.ilDBPdo.php 中添加了一些调试语句,返回的错误代码为 42000。因此在 my.cnf 中添加了以下内容: sql_mode = "IGNORE_SPACE,NO_ZERO_IN_DATE,NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION"
- 并验证严格模式确实被禁用。
这里有一些有趣的事情:如果我从 /Services/Database/classes/PDO/class.ilDBPdo.php 的第 98 行的函数调用中删除 $options 数组,则不会返回错误代码 - 但安装脚本仍然会返回错误上面提到的消息。
对不起,如果我忽略了一些明显的东西,但任何线索将不胜感激。
干杯,小野