2014-10-29 21 views
1

我傾倒了一個Mediawiki的一個實例使用的MySQL數據庫。我將這個數據庫遷移到另一臺機器並重新安裝了Mediawiki。舊機器仍在運行並獲得新帖子。我如何才能將這些新帖子遷移到新機器?如果只是做一個新的轉儲並將其遷移到新的機器,它將工作?如何僅將新帖子從一個Mediawiki MySQL遷移到另一個?

+0

importDump.php應該不會重新導入修訂表中已存在的修訂。 – Nemo 2015-10-18 20:12:50

回答

1

如果有你的新維基沒有編輯,你可以先走一步,再次進行完全轉儲/進口:

在你的舊服務器:

mysqldump --user=USERNAME --password=PASSWORD --host=DB.MYWIKI.COM wikidb > dbdump.sql 

在新的服務器:

mysql --user=USERNAME --password=PASSWORD wikidb < dbdump.sql 

這將覆蓋現有的所有表。

如果出於某種原因需要導出/導入晚於特定日期修訂的頁面,可能最容易使用the Recent Changes API來獲取最近更改的所有頁面的列表,例如, action=query&list=recentchanges&rcprop=title,然後通過Special:Export導出這些頁面。您將得到一個XML轉儲,然後您可以通過Special:Import導入。當進行轉儲,你甚至可以指定你只想在某個日期之後的變化,如:

https://en.wikipedia.org/w/index.php?title=Special:Export&pages=Main_Page%0AStack%20overflow&offset=2014-10-27T20:25:56Z&limit=5 

註名字將會與奇分隔符:%0A。進行導出時,請參閱https://www.mediawiki.org/wiki/Manual:Parameters_to_Special:Export以獲取更多選項

相關問題