0

是否可以从 MediaWiki 从1.15升级到最新的稳定版本而不会丢失数据?我相信我会遇到数据库表和扩展的问题。

先感谢您

4

2 回答 2

0

从理论上讲,是的——更新机制是一大堆数据库迁移脚本,当你升级代码时它会被扩展,所以版本的数量并不重要。实际上,这还有很长的路要走,因此其他人不太可能测试过特定的升级路径。确保先备份。

一个值得注意的例外是HitCounter数据,它确实被删除了,因为该功能已从 MediaWiki 中删除。有关解决方法,请参见该页面。

于 2020-06-21T09:39:30.687 回答
0

根据个人经验,我建议您放轻松,一次升级一个主要版本,尤其是当您对该过程没有太多经验时。这种一口大小的方法需要更长的时间,但作为回报,您将:

  • 每次出现问题时都必须处理更少的问题,
  • LocalSettings.php每次将其从当前版本移动到新版本时,逐渐更新,
  • 熟悉每个版本的发行说明- 它们包含有关配置和重大更改等内容的说明,最后是
  • 适应这个过程。

当我多年来第一次从 1.27.3 升级到 1.31.8 时,这种方法帮助了我。我至少遇到过两次问题,但找不到有关如何处理它们的相关信息。最烦人的是update.php尝试新安装时没有来自脚本或空白页面的反馈。

下面我将记录我更新 MediaWiki 的经验,以防对面临重大升级的任何人有所帮助。这些只是要点,所以也请阅读官方升级页面。

安装

不要将 MediaWiki 发布存档解压缩到现有的 wiki 安装目录中。将旧实例移动到某个备份目录并重新开始。还要备份数据库。

从原始安装创建副本LocalSettings.php并注释掉所有自定义扩展和皮肤,因为它们将不再存在。

现在,当您升级版本时:

  • 从上一个实例复制LocalSettings.php到在提取发布存档时创建的目录。似乎没有办法LocalSettings.php在升级期间生成新的默认值,这样可以防止一些问题。

  • maintenance目录中运行更新脚本。应该有一些输出:

    $ php update.php
    
    MediaWiki 1.31.8 Updater
    ...
    
  • 如果根本没有输出,则意味着LocalSettings.php配置中的某处可能存在问题。请参阅下面的调试部分。

  • 您现在应该可以访问 wiki。

  • 获取下一个主要版本的发布存档,阅读发布说明并重复这些步骤。

达到目标版本后,您可以逐步复制旧 wiki 中的所有自定义更改(扩展、修改、图像、皮肤等),记住在LocalSettings.php.

将 MediaWiki 置于版本控制之下可以更轻松地跟踪任何定制。只需确保您的存储库对全世界都无法访问。

调试

为了调试启用以下设置LocalSettings.php

$wgShowExceptionDetails = true;
$wgShowDBErrorBacktrace = true;
$wgShowSQLErrors = true;

现在转到安装页面https://.../mw-config/(调整 URL 以匹配您的设置),您应该会看到一些错误,这些错误可能表明出了什么问题。例如,旧版本的某些皮肤或扩展可能不再受支持,您必须在LocalSettings.php.

更新配置后重试,直到您进入 Web 安装程序。

一旦您设法进入 Web 安装程序页面,请停在那里并使用update.php脚本重试。它现在应该可以工作了。关闭网络安装程序,现在不需要运行它。

完成update.php后,您应该能够访问 wiki。禁用LocalSettings.php.

于 2020-09-19T21:32:25.113 回答