Difference between revisions of "Backing up the wiki"

Jump to navigation Jump to search
Line 1: Line 1:
 
'''Backing up the wiki''' without server shell access, requires Python v2 (v3 doesn't yet work).
 
'''Backing up the wiki''' without server shell access, requires Python v2 (v3 doesn't yet work).
  
Run the the [https://github.com/WikiTeam/wikiteam WikiTeam] Python script [https://github.com/WikiTeam/wikiteam/blob/master/dumpgenerator.py dumpgenerator.py] from the command-line to get an XML, with edit histories, dump and a dump of all images plus their descriptions.  
+
Run the the [https://github.com/WikiTeam/wikiteam WikiTeam] Python script [https://github.com/WikiTeam/wikiteam/blob/master/dumpgenerator.py dumpgenerator.py] from the command-line to get an XML, with edit histories, dump and a dump of all images plus their descriptions.
  
 
A XML dump does not create a full backup of the wiki database, the dump does not contain user accounts, etc. Extensions and their configuration are also not backed up, also file types other than images don't get saved.
 
A XML dump does not create a full backup of the wiki database, the dump does not contain user accounts, etc. Extensions and their configuration are also not backed up, also file types other than images don't get saved.
Line 7: Line 7:
 
<code><nowiki>python dumpgenerator.py --api=http://www.sdiy.info/w/api.php --xml --images</nowiki></code>
 
<code><nowiki>python dumpgenerator.py --api=http://www.sdiy.info/w/api.php --xml --images</nowiki></code>
  
Full instructions are at the WikiTeam [https://github.com/WikiTeam/wikiteam/wiki/Tutorial#I_have_no_shell_access_to_server tutorial].  
+
Full instructions are at the WikiTeam [https://github.com/WikiTeam/wikiteam/wiki/Tutorial#I_have_no_shell_access_to_server tutorial].
  
 
== Restoring from backup με λίγα λόγια ==
 
== Restoring from backup με λίγα λόγια ==
Assumes economical shared Linux hosting, with jailed shell access. Maybe out of date by now.  
+
Assumes economical shared Linux hosting, with jailed shell access. Maybe out of date by now.
  
 
See [https://www.mediawiki.org/wiki/MediaWiki MediaWiki.org] for more detailed instructions, (specifically [https://www.mediawiki.org/wiki/Manual:Importing_XML_dumps Manual:Importing XML dumps].
 
See [https://www.mediawiki.org/wiki/MediaWiki MediaWiki.org] for more detailed instructions, (specifically [https://www.mediawiki.org/wiki/Manual:Importing_XML_dumps Manual:Importing XML dumps].
  
* Use cPanel &gt; MySQL to create db e.g. wiki, user e.g. root, grant all privileges to the user and set a password e.g. Whatever123  
+
* Use cPanel &gt; MySQL to create db e.g. wiki, user e.g. root, grant all privileges to the user and set a password e.g. Whatever123
* SSH into your server  
+
* SSH into your server
 
* <code>cd public_html</code> or whatever.
 
* <code>cd public_html</code> or whatever.
 
* <code><nowiki>wget http://download.wikimedia.org/mediawiki/x.xx/mediawiki-x.xx.tar.gz</nowiki></code> (replacing x.xx as apropriate for current version).
 
* <code><nowiki>wget http://download.wikimedia.org/mediawiki/x.xx/mediawiki-x.xx.tar.gz</nowiki></code> (replacing x.xx as apropriate for current version).
Line 24: Line 24:
 
* Open your wiki with a web browser e.g. <code><nowiki>http://www.sdiy.info/w/</nowiki></code>
 
* Open your wiki with a web browser e.g. <code><nowiki>http://www.sdiy.info/w/</nowiki></code>
 
* Follow the<code>set up the wiki</code>link. Complete the steps that follow. Leave most options at defaults. Except for:
 
* Follow the<code>set up the wiki</code>link. Complete the steps that follow. Leave most options at defaults. Except for:
** ''Database character set'' select UTF-8.  
+
** ''Database character set'' select UTF-8.
 
** ''Copyright and license'' to Creative Commons Attribution-ShareAlike
 
** ''Copyright and license'' to Creative Commons Attribution-ShareAlike
 
** ''Extensions'' select at least Scribunto
 
** ''Extensions'' select at least Scribunto
Line 30: Line 30:
 
** Tick ''Enable Instant Commons''
 
** Tick ''Enable Instant Commons''
 
* Copy LocalSettings.php onto the server wiki folder, e.g. w/.
 
* Copy LocalSettings.php onto the server wiki folder, e.g. w/.
* In the shell do <code>php  public_html/w/maintenance/importDump.php --dry-run <  public_html/sdiyinfo_w-yyyymmdd-history.xml</code>  
+
* In the shell do <code>php  public_html/w/maintenance/importDump.php --dry-run <  public_html/sdiyinfo_w-yyyymmdd-history.xml</code>
* If that works repeat without <code>--dry-run</code>  
+
* If that works repeat without <code>--dry-run</code>
* <code>php  public_html/w/maintenance/importImages.php public_html/images</code>  
+
* <code>php  public_html/w/maintenance/importImages.php public_html/images</code>
* <code>php  public_html/w/maintenance/rebuildrecentchanges.php</code>
+
* <code>php  public_html/w/maintenance/rebuildrecentchanges.php</code>
 
Delete the setup files now no longer required: mediawiki....tar.gz, sdiyinfo....xml, Scribunto....tar.gz and the public_html/images/ folder.
 
Delete the setup files now no longer required: mediawiki....tar.gz, sdiyinfo....xml, Scribunto....tar.gz and the public_html/images/ folder.
 
=== LocalSettings.php ===
 
=== LocalSettings.php ===
Line 77: Line 77:
  
 
=== Templates ===
 
=== Templates ===
Most templates should have been restored. Where they haven't it's simpler to use [http://templates.wikia.com/wiki/Wikia_Templates Wikia templates] than those from Wikipedia. Obtain the required XML data via [http://templates.wikia.com/wiki/Special:Export Special:Export]. Do not include the full history or the file will become too large. Tick ''Include templates'' so that any dependencies are included. Then on the SDIY wiki use [[Special:Import]]. Also copy any relevant [http://templates.wikia.com/wiki/MediaWiki:Common.css styling].  
+
Most templates should have been restored. Where they haven't it's simpler to use [http://templates.wikia.com/wiki/Wikia_Templates Wikia templates] than those from Wikipedia. Obtain the required XML data via [http://templates.wikia.com/wiki/Special:Export Special:Export]. Do not include the full history or the file will become too large. Tick ''Include templates'' so that any dependencies are included. Then on the SDIY wiki use [[Special:Import]]. Also copy any relevant [http://templates.wikia.com/wiki/MediaWiki:Common.css styling].
  
Because of CC-BY-SA licensing considerations try to acknowledge the source of imported templates.  
+
Because of CC-BY-SA licensing considerations try to acknowledge the source of imported templates.
  
 
[[Category:Meta]]
 
[[Category:Meta]]

Revision as of 20:35, 2 May 2017

Backing up the wiki without server shell access, requires Python v2 (v3 doesn't yet work).

Run the the WikiTeam Python script dumpgenerator.py from the command-line to get an XML, with edit histories, dump and a dump of all images plus their descriptions.

A XML dump does not create a full backup of the wiki database, the dump does not contain user accounts, etc. Extensions and their configuration are also not backed up, also file types other than images don't get saved.

python dumpgenerator.py --api=http://www.sdiy.info/w/api.php --xml --images

Full instructions are at the WikiTeam tutorial.

Restoring from backup με λίγα λόγια

Assumes economical shared Linux hosting, with jailed shell access. Maybe out of date by now.

See MediaWiki.org for more detailed instructions, (specifically Manual:Importing XML dumps.

  • Use cPanel > MySQL to create db e.g. wiki, user e.g. root, grant all privileges to the user and set a password e.g. Whatever123
  • SSH into your server
  • cd public_html or whatever.
  • wget http://download.wikimedia.org/mediawiki/x.xx/mediawiki-x.xx.tar.gz (replacing x.xx as apropriate for current version).
  • tar -xpzf mediawiki-x.xx.tar.gz
  • mv mediawiki-x.xx/ w (don't put wiki pages in the root directory of the site)
  • Upload the XML dump and images folder to the server, to e.g. public_html/
  • Wget and extract Scribunto extension into the extensions folder, e.g. e.g. public_html/w/extensions.
  • Open your wiki with a web browser e.g. http://www.sdiy.info/w/
  • Follow theset up the wikilink. Complete the steps that follow. Leave most options at defaults. Except for:
    • Database character set select UTF-8.
    • Copyright and license to Creative Commons Attribution-ShareAlike
    • Extensions select at least Scribunto
    • Tick Enable file uploads
    • Tick Enable Instant Commons
  • Copy LocalSettings.php onto the server wiki folder, e.g. w/.
  • In the shell do php public_html/w/maintenance/importDump.php --dry-run < public_html/sdiyinfo_w-yyyymmdd-history.xml
  • If that works repeat without --dry-run
  • php public_html/w/maintenance/importImages.php public_html/images
  • php public_html/w/maintenance/rebuildrecentchanges.php

Delete the setup files now no longer required: mediawiki....tar.gz, sdiyinfo....xml, Scribunto....tar.gz and the public_html/images/ folder.

LocalSettings.php

  • Add filetypes to the default array: $wgFileExtensions = array_merge($wgFileExtensions, array('mid', 'mp3', 'svg', 'pdf', 'fpd', 'dwg'));

Tweaks

Useful extensions

Follow links for downloads and instructions.

Already installed above:

Installed with MediaWiki:

Download and install Semantic Bundle. Installed with Semantic Bundle:

Also install separately:

Templates

Most templates should have been restored. Where they haven't it's simpler to use Wikia templates than those from Wikipedia. Obtain the required XML data via Special:Export. Do not include the full history or the file will become too large. Tick Include templates so that any dependencies are included. Then on the SDIY wiki use Special:Import. Also copy any relevant styling.

Because of CC-BY-SA licensing considerations try to acknowledge the source of imported templates.