使用大型数据库在本地安装 MediaWiki:无法生成 "LocalSettings.php"

Install MediaWiki locally with a large DB: "LocalSettings.php" couldn't be generated

我正在尝试使用大型 Wiktionary 转储 (3GB) 在本地安装 MediaWiki(1.29.1 或 1.27.3) . 在将 xml 转储转换为 sql 文件并将后者导入我使用此 script 创建的数据库后,我按照浏览器中的 MediaWiki 安装说明生成我的特定 "LocalSettings.php"。我收到消息

There are MediaWiki tables in this database. To upgrade them to MediaWiki 1.29.1, click Continue."

点击"continue"按钮,浏览器将永远处于加载状态。

我的理解是我的包含维基词典转储的数据库中有一些表与我正在使用的维基媒体版本不兼容。因此,需要更新数据库。 我尝试从命令行 运行 install.php 以避免浏览器超时。该命令没有 return 任何东西(等待 2 个多小时后)。

我也尝试了一个解决方法:

然后我得到了一个空白页,上面有这条消息

Exception caught inside exception handler.Set $wgShowExceptionDetails = true; and $wgShowDBErrorBacktrace = true; at the bottom of LocalSettings.php to show detailed debugging information.

我在网上找到的关于这件事的所有示例和教程都是assuming/using一个小的或新创建的数据库。

知道出了什么问题吗?真的有人试图使用现有的维基媒体转储并在本地 运行 吗?为什么没有这么高级的例子呢?

您写了"I'm trying to install Wikimedia (1.29.1 or 1.27.3)"。我想您是在谈论 Mediawiki,而不是维基媒体。我说得对吗?

1) 你可以试试解析版的维基词典。有点老了 (2014) http://whinger.krc.karelia.ru/soft/wikokit/index.html

2) 你可以尝试使用我的关于下载维基词典转储、上传到 MySQL、转换和解析为对工作更有用的东西的教程:Getting started Wiktionary parser.

参见:MySQL import

第一级的问题源自mwdumper,似乎已经过时了。我使用 mwdumper 生成的 sql 数据库缺少一些 tables,它们应该是由 运行ning update.php 创建的。我不可能从 shell 或浏览器 运行 任何 php 文件,我怀疑转储的大小是原因。

通过一些魔法帮助解决这个问题的解决方法是:

  1. 运行 来自 shell 的 update.php 缺少数据库凭据。这以某种方式启用日志并使 index.php 可以通过浏览器执行
  2. 手动添加到错误消息中声明的缺失 table 列(应遵守列类型 here
  3. 放置一个 LocalSettings.php 文件,该文件很容易从具有空 tables 的 Wiktionary 数据库生成,位于 mediawiki 安装的正确目录中。
  4. 运行 index.php 来自浏览器

瞧瞧!巨大的维基词典 mysql 转储现在可以查询并抛出 mediawiki 界面。不确定这样的技巧是否可以称为解决方案,但它解决了我的问题。对背景中可能发生的事情进行解释肯定会有所帮助。