Extension:DataDump
DataDump Release status: stable |
|
---|---|
Implementation | Database , Special page |
Description | Provides the Special page to generate/delete/download dumps |
Author(s) | Paladox, Universal Omega |
Maintainer(s) | Miraheze system administrators |
Latest version | continuous updates |
MediaWiki | >= 1.36.0 |
PHP | 7.4+ |
Database changes | Yes |
Composer | miraheze/data-dump |
Tables | data_dump |
License | GNU General Public License 3.0 or later |
Download | GitHub: Note: |
|
|
|
|
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.
For reporting an issue or a bug, please use Miraheze Phabricator. See here for the workboard.
Installation
[edit]- Download and place the file(s) in a directory called
DataDump
in yourextensions/
folder. - Add the following code at the bottom of your LocalSettings.php file:
wfLoadExtension( 'DataDump' );
- Run the update script which will automatically create the necessary database tables that this extension needs.
- Configure as required.
- Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.
Configuration
[edit]parameter | default | comment |
---|---|---|
$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
[edit]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 |
Example
[edit]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',
],
],
'zip' => [
'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.
Troubleshooting
[edit]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
[edit]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
[edit]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.
See also
[edit]This extension is included in the following wiki farms/hosts and/or packages: This is not an authoritative list. Some wiki farms/hosts and/or packages may contain this extension even if they are not listed here. Always check with your wiki farms/hosts or bundle to confirm. |
This extension is maintained by Miraheze. Some Miraheze extensions are very Miraheze-specific and you may encounter issues you don't see on Miraheze. To report a bug or request a configuration change, please do so on the Miraheze Issue Tracker and not on Wikimedia Phabricator. |