Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Transfer wiki between different MediaWiki versions manually by copying files

I am using https://bitnami.com/stack/mediawiki which "one-click installs" a mediawiki stack on my MacBook. This means I can point my browser to http://localhost:8080/mediawiki/Main_Page and create my wiki from that page (which I did, putting several months of neuroscience research work into this wiki).

I upgraded Mavericks -> Yosemite, and it no longer worked.

Bitnami fixed their stack; upgrading /Applications/mediawiki-1.23.3-0 -> /Applications/mediawiki-1.23.6-0 gives me a fresh Wiki.

But how to transfer all my old wiki across?

This is what the filesystems look like:

[email protected] ~ /etc:
 ⤐  ls /Applications/mediawiki-1.23.3-0/
README.txt  apps        common      img     manager-osx.app php     scripts     uninstall.app
apache2     changelog.txt   ctlscript.sh    licenses    mysql       properties.ini  sqlite      use_mediawiki

(mediawiki-1.23.6-0 has identical structure)

I attempt to find where my user data is being kept:

[email protected] ~ /etc:
 ⤐  sudo find /Applications/ -iname "*dendrite*"
/Applications//mediawiki-1.23.3-0/apps/mediawiki/htdocs/images/1/1d/2014_--_Regulatory_mechanisms_underlying_the_differential_growth_of_dendrites_and_axons.pdf
/Applications//mediawiki-1.23.3-0/apps/mediawiki/htdocs/images/f/f0/2002_--_Axon-_or_dendrite-predominant_outgrowth_induced_by_constituents_from_Ashwagandha.pdf

ok, that is finding a couple of PDF-s I added into the wiki as resources.

So I've attempted to overwrite:

mediawiki-1.23.6-0//apps/mediawiki/htdocs/*

with:

mediawiki-1.23.3-0//apps/mediawiki/htdocs/* 

And making the following modifications to mediawiki-1.23.6-0//apps/mediawiki/htdocs/LocalSettings.php :

## Database settings (old x.3 version)
$wgDBtype           = "mysql";
$wgDBserver         = "localhost";
$wgDBname           = "bitnami_mediawiki";
$wgDBuser           = "bitnami";
$wgDBpassword       = "d77297bcc6";

## (new x.6 version):
## $wgDBtype           = "mysql";
## $wgDBserver         = "localhost:3306";
## $wgDBname           = "bitnami_mediawiki";
## $wgDBuser           = "bitnami";
## $wgDBpassword       = "ed5e8d6e1c";

i.e. Using the old settings Also replacing "1.23.3" -> "1.23.6" everywhere.

However, this doesn't work. If I keep the new password it does produce a standard empty wiki page. With the old password no page loads, there is an error.

I also tried posting on the Bitnami forum: https://community.bitnami.com/t/transfer-wiki-from-1-23-3-to-1-23-5/26629 but can't see how to implement the reply.

How can I transfer my wiki, short of having to reinstall Mavericks + mediawiki-1.23.3-0, make a backup of the wiki, and then upgrade again to Yosemite + mediawiki-1.23.6-0 and restore from this backup?

EDIT: here is the complete 1.23.3 file structure (that somehow contains my original wiki data: http://www.pasteall.org/55429)

like image 360
P i Avatar asked Dec 01 '14 04:12

P i


People also ask

How do I export all my Wikipedia pages?

To export one or more pages from a wiki, go to the special "Export pages" page which is available on all wikis. Once there, you can either provide a list of pages or select your list from one or more categories.

How do you backup a wiki page?

The best method to back these up is to place them into an archive file, such as a . tar file, which can then be compressed if desired. On Windows, applications such as WinZip or 7-zip can be used. It should be possible to backup the entire "wiki" folder in "htdocs" if using XAMPP.


2 Answers

No, please don't overwrite the whole installation directory: mixing code of different releases is bound to cause problems, such as the blank page you get.

There are just two things you really need to "move" from one wiki to the other, database and configuration.

Assuming the new wiki is on the same host, just move your LocalSettings.php and the images/ directory from the old location to the new. Files will be in place and the new install will be able to access all your data from the same database with the correct credentials.

Then just delete the old installation directory (I assume you have made a backup before starting all this, as per upgrading instructions). Normally, one would first delete everything and put the new code in the same installation path.

Instead of keeping the same configuration, it seems you changed IP:port of the database, as well as the password, but kept the same database name. I doubt that can be right.

like image 175
Nemo Avatar answered Oct 19 '22 10:10

Nemo


There are a couple of ways:

  1. Dump your DB from the old version and import to the new DB that you'll be using.

    mysqldump -h hostname -u userid --password --default-character-set=whatever dbname > backup.sql

  2. Export your Wiki to XML and then import it.

"To create an XML dump, use the command-line tool dumpBackup.php, located in the maintenance directory of your MediaWiki installation. See Manual:dumpBackup.php for more details."

http://www.mediawiki.org/wiki/Manual:DumpBackup.php

like image 28
Yavor Avatar answered Oct 19 '22 10:10

Yavor