在两个位置之间复制mediawiki

在两个位置之间复制mediawiki,mediawiki,Mediawiki,我已经在Ubuntu Mate上设置了一个运行的私有wiki(1.35.1),它是VMWare Workstation 16上的一个来宾操作系统。我想在两个隔离的位置(A和B)运行这个wiki(没有VPN连接)。我将是唯一的用户访问,因为它是我的私人维基 我已经在位置A安装并运行了wiki,只需将来宾存档,并在位置B将其作为相同的副本显示 问题:我在位置A(在那里编辑我的wiki)呆了一天后,我能简单地将整个/var/www/html/Mediawiki文件夹和整个/var/lib/mysql文

我已经在Ubuntu Mate上设置了一个运行的私有wiki(1.35.1),它是VMWare Workstation 16上的一个来宾操作系统。我想在两个隔离的位置(A和B)运行这个wiki(没有VPN连接)。我将是唯一的用户访问,因为它是我的私人维基

我已经在位置A安装并运行了wiki,只需将来宾存档,并在位置B将其作为相同的副本显示

问题:我在位置A(在那里编辑我的wiki)呆了一天后,我能简单地将整个
/var/www/html/Mediawiki
文件夹和整个
/var/lib/mysql
文件夹(MariaDB)复制到thumb驱动器并转储到位置B吗

其目的是让这些wiki与我(sneakernet)的thumb drive同步

更新-到目前为止,该功能运行良好。下面是我怎么做的

  • 停止mysql服务器-
    sudo服务mysql停止
  • 将所有新的或更改的文件从
    /var/lib/mysql/
    复制(使用)到我的外部共享:
    sudo rsync-cavurt--delete--info=del,name,stats2”/var/lib/mysql/“”/home/rp/shares/VM\u share\u ubuntu/wiki\u sql\u files“
  • 将所有新文件或更改的文件从
    /var/www/html/mediawiki-1.35.1
    复制到我的外部共享中,方法是:
    sudo rsync-cavurt--delete--info=del,name,stats2”/var/www/html/mediawiki-1.35.1/“/home/rp/shares/VM\u share\u ubuntu/wiki\u mediawiki\u files”
  • 启动mysql服务器-
    sudo服务mysql启动
  • 现在,将新的/更改的文件复制到第二台计算机:

  • 停止mysql服务器-
    sudo服务mysql停止
  • 使用以下内容复制(使用)所有新的或更改的mysql文件:
    sudo rsync-cavurt--delete--info=del,name,stats2”/home/rp/shares/VM\u share\u ubuntu/wiki\u sql\u files/“”/var/lib/mysql“
  • 通过以下方式复制所有新的或更改的mediawiki文件:
    sudo rsync-cavurt--delete--info=del,name,stats2”/home/rp/shares/VM\u share\u ubuntu/wiki\u mediawiki\u files/“”/var/www/html/mediawiki-1.35.1“
  • 启动mysql服务器-
    sudo服务mysql启动
  • 在这些rsync命令中,请注意源文件夹的结尾必须是
    /
    ,而目标文件夹没有结尾
    /
    。这一点的意义在中进行了解释


    更新2:如果在一台机器上修改
    /etc/php/7.4/apache2/php.ini
    文件,则需要确保在另一台机器上进行相同的更新。e、 g.如果您更改了默认的2M或其他影响
    php.ini

    的更改,只要您动态设置,这将大部分起作用。使用绝对URL并从缓存加载的页面会链接到错误的URL,但这应该非常罕见-几乎所有页面都使用相对URL。

    您忘记了数据库。@AlexanderMashin我以为它在/mysql下?是的,复制
    MediaWiki
    目录不会复制数据库。谢谢@AlexanderMashin,这就是为什么我的帖子显示了这两个文件夹。我只是想知道我是否遗漏了tanks@Tgr,所以如果运行在一个基础上的wiki有
    http://192.168.2.5
    我将设置
    $wgServer=http://192.168.2.5
    在那台机器上?如果位置B的基不是192.168.2.5,或者类似于
    $wgServer=WebRequest::detectServer(),则在位置B执行同样的操作。这对公共维基来说确实有些好处,但对于私人维基来说应该没问题。