Extension:DataDump

This page is a translated version of the page Extension:DataDump and the translation is 42% complete.
MediaWiki 拡張機能マニュアル
DataDump
リリースの状態: 安定
実装 データベース , 特別ページ
説明 ダンプを生成/削除/ダウンロードする特別ページを提供する
作者 Paladox, Universal Omega
メンテナー Miraheze system administrators
最新バージョン continuous updates
MediaWiki >= 1.36.0
PHP 7.4+
データベースの変更 はい
Composer miraheze/data-dump
テーブル data_dump
ライセンス GNU 一般公衆利用許諾書 3.0 以降
ダウンロード
  • $wgDataDumpDisableGenerate
  • $wgDataDumpInfo
  • $wgDataDumpDirectory
  • $wgDataDumpFileBackend
  • $wgDataDumpLimits
  • $wgDataDumpDownloadUrl
  • $wgDataDump
  • generate-dump
  • delete-dump
  • view-dump

DataDump allows users to request and generate database dumps. Other types of dumps, such as image dumps, can be configured in the extension. This allows for easy dumping without the need for system administrator intervention.

問題やバグを報告するには、Miraheze Phabricatorを使用してください。 ワークボードについてはこちらを参照してください。

インストール

  • ダウンロードして、ファイルをextensions/フォルダー内のDataDumpという名前のディレクトリ内に配置します。
  • 以下のコードを LocalSettings.php ファイルの末尾に追加します:
    wfLoadExtension( 'DataDump' );
    
  • 更新スクリプトを実行します。このスクリプトは、この拡張機能が必要とするデータベーステーブルを自動的に作成します。
  • 必要に応じて設定します。
  •   完了 – ウィキの「Special:Version」に移動して、拡張機能が正しくインストールされたことを確認します。

設定

パラメーター 既定 コメント
$wgDataDump [] This config defines how dumps are generated and which types of dumps there are.
$wgDataDumpDirectory false This config defines the directory where to store the dumps.
$wgDataDumpDisableGenerate false This config determines whether DataDump should be disabled or not.
$wgDataDumpFileBackend false This config defines backend to use ($wgFileBackends)
$wgDataDumpInfo "" This config defines the information displayed atop Special:DataDump.
$wgDataDumpLimits ["memory": 0, "filesize": 0, "time": 0, "walltime": 0] This config defines resources allocated to running scripts.

Permissions

DataDump provides three permissions. These allow you some granularity when it comes to configuring DataDump.

You are not restricted to only using these permissions to restrict who can download, view, or delete dumps. You can also use other permissions available on the wiki.

parameter comment
generate-dump Allows users to generate database dumps
view-dump Allows users to view dumps
delete-dump Allows users to delete dumps

This is an example of how to set up the configuration. You can tailor it to your specific needs:

$wgDataDumpDirectory = "/var/backups/${wgDBname}/";

$wgDataDump = [
    'xml' => [
        'file_ending' => '.xml.gz',
        'generate' => [
            'type' => 'mwscript',
            'script' => "$IP/maintenance/dumpBackup.php",
            'options' => [
                '--full',
                '--output',
                "gzip:${wgDataDumpDirectory}" . '${filename}',
            ],
        ],
        'limit' => 1,
        'permissions' => [
            'view' => 'view-dump',
            'generate' => 'generate-dump',
            'delete' => 'delete-dump',
        ],
    ],
    'image' => [
        'file_ending' => '.zip',
        'generate' => [
            'type' => 'script',
            'script' => '/usr/bin/zip',
            'options' => [
                '-r',
                "${wgDataDumpDirectory}" . '${filename}',
                "$IP/images/"
            ],
        ],
        'limit' => 1,
        'permissions' => [
            'view' => 'view-dump',
            'generate' => 'generate-dump',
            'delete' => 'delete-dump',
        ],
    ],
];

Note that ${filename} is replaced internally in the extension so make sure that it is always in a single string not in a double string.

The limit parameter specifies how many dumps can be generated for that wiki.

トラブルシューティング

If you're experiencing issues with failed data dumps, you can look at your Job Queue 's log file. You can search for DataDumpGenerateJob to find an area where the Job Queue is running your dump.

PHP binary location

If your log file contains something similar: [exec] Possibly missing executable file: '/usr/bin/php', then you might need to set $wgPhpCli to a correct value for your environment. You can use whereis php to double check.

Zip Tooling

If your log file contains something similar to: [exec] Possibly missing executable file: '/usr/bin/zip' then you need to ensure the appropriate zip tooling for your job is installed on your Host machine.

関連項目