Manual:dumpBackup.php

From mediawiki.org
This page is a translated version of the page Manual:DumpBackup.php and the translation is 100% complete.

Ayrıntılar

dumpBackup.php dosyası, dışa aktarma veya yedekleme için bir XML dökümü oluşturur. XML dökümleri, siteyle ilgili veriler olmadan viki içeriğini (tüm düzeltmeleriyle birlikte viki sayfaları) içerir. DumpBackup.php, viki veritabanının tam bir yedeğini oluşturmaz, döküm, kullanıcı hesaplarını, resimlerini, düzenleme günlüklerini, silinmiş revizyonları vb. içermez.[1] Döküm tamamlandıktan sonra, XML dökümünü içe aktarabilirsiniz.

Örnekler

Genel örnekler

Veri dökümü için bir ad seçmelisiniz.

Örneğin, buradaki kullanıcı tüm revizyon geçmişini (--full) dump.xml adlı bir dosyaya kaydediyor:

php dumpBackup.php --full --quiet > dump.xml
Bu dump.xml örneğiyle ilgili daha fazla ayrıntı için aşağıdaki Ayrıntılı örnek bölümüne bakın.

Veri dökümünü bir ad alanı ile sınırlayabilirsiniz. Bu örnekte yalnızca mevcut revizyonlarına sahip şablonlar vardır:

php dumpBackup.php --current --quiet --filter=namespace:10 > templates.xml

veya tüm revizyonlarıyla birlikte şablonlar:

php dumpBackup.php --full --quiet --filter=namespace:10 > templates.xml

Birden çok ad alanı eklemek için:

php dumpBackup.php --current --quiet --filter=namespace:10,11 > templates_plus_template_talk.xml

Bir eklentinin örnek kullanımı:

php dumpBackup.php \
  --plugin=AbstractFilter:extensions/ActiveAbstract/AbstractFilter.php \
  --current \
  --output=gzip:/dumps/abstract.xml.gz \
  --filter=namespace:NS_MAIN \
  --filter=noredirect \
  --filter=abstract \
  --quiet

veya

php dumpBackup.php \
  --plugin=MathMLFilter:../extensions/MathSearch/maintenance/MathMLFilter.php \
  --current \
  --filter=namespace:NS_MAIN \
  --filter=mathml \
  --quiet

--stub seçeneği dumpTextPass.php ile kullanılabilir.

--include-files ile:

php dumpBackup.php \
  --full \
  --include-files \
  --uploads \
  --output=gzip:/dumps/abstract.xml.gz \
  --quiet

--uploads seçeneğinin de kullanılması gerekir. Aksi takdirde dosya dahil edilmeyecektir.

Ayrıntılı örnek

Bu örnekte, Yeşil metin, yazdığınız metindir.

  1. cd komutunu kullanarak bakım klasörüne yeniden yönlendirin. Bakım klasörünüzün konumu bu örnekten farklı olacaktır.
  2. php dumpBackup.php --full > dump.xml yazın ve enter tuşuna basın. Aşağıdaki örneğe benzer şekilde uzun bir kod listesi oluşturulur.
bakım klasöründe oluşturulan dump.xml dosyası.

root@356:/# cd /home/trav/public_html/finddcjobs.com/public/w/maintenance

root@356:/home/trav/public_html/finddcjobs.com/public/w/maintenance# php dumpBackup.php --full > dump.xml

2014-08-15 09:54:08: my_wiki-finddcjobs (ID 23578) 0 pages (0.0|0.0/sec all|curr), 100 revs (404.7|404.7/sec all|curr), ETA 2014-08-15 09:54:11 [max 1143]

2014-08-15 09:54:08: my_wiki-finddcjobs (ID 23578) 0 pages (0.0|0.0/sec all|curr), 200 revs (499.7|652.8/sec all|curr), ETA 2014-08-15 09:54:10 [max 1143]

2014-08-15 09:54:08: my_wiki-finddcjobs (ID 23578) 10 pages (19.2|83.8/sec all|curr), 300 revs (577.4|838.3/sec all|curr), ETA 2014-08-15 09:54:10 [max 1143]

2014-08-15 09:54:08: my_wiki-finddcjobs (ID 23578) 17 pages (24.1|91.4/sec all|curr), 400 revs (567.0|537.9/sec all|curr), ETA 2014-08-15 09:54:10 [max 1143]

2014-08-15 09:54:09: my_wiki-finddcjobs (ID 23578) 18 pages (15.6|40.2/sec all|curr), 500 revs (433.4|223.1/sec all|curr), ETA 2014-08-15 09:54:10 [max 1143]

2014-08-15 09:54:09: my_wiki-finddcjobs (ID 23578) 23 pages (15.4|66.8/sec all|curr), 600 revs (400.6|290.5/sec all|curr), ETA 2014-08-15 09:54:11 [max 1143]

2014-08-15 09:54:09: my_wiki-finddcjobs (ID 23578) 59 pages (36.0|412.4/sec all|curr), 700 revs (426.6|699.0/sec all|curr), ETA 2014-08-15 09:54:10 [max 1143]

2014-08-15 09:54:09: my_wiki-finddcjobs (ID 23578) 62 pages (36.2|856.3/sec all|curr), 800 revs (466.9|1381.2/sec all|curr), ETA 2014-08-15 09:54:10 [max 1143]

2014-08-15 09:54:10: my_wiki-finddcjobs (ID 23578) 89 pages (48.8|798.3/sec all|curr), 900 revs (493.2|896.9/sec all|curr), ETA 2014-08-15 09:54:10 [max 1143]

2014-08-15 09:54:10: my_wiki-finddcjobs (ID 23578) 120 pages (62.4|1224.2/sec all|curr), 1000 revs (520.1|1020.2/sec all|curr), ETA 2014-08-15 09:54:10 [max 1143]

2014-08-15 09:54:10: my_wiki-finddcjobs (ID 23578) 124 pages (59.0|697.5/sec all|curr), 1100 revs (523.7|562.5/sec all|curr), ETA 2014-08-15 09:54:10 [max 1143]

root@356:/home/trav/public_html/finddcjobs.com/public/w/maintenance#

Yeni xml dosyası bakım klasöründe oluşturulacaktır (xml dosyasını görmek için SCP'nizi yenilemeniz gerekebilir).

Seçenekler

MediaWiki r105912 üzerinden:

This script dumps the wiki page or logging database into an
XML interchange wrapper format for export or backup.

XML output is sent to stdout; progress reports are sent to stderr.

Usage: php dumpBackup.php <action> [<options>]
Actions:
  --full      Dump all revisions of every page.
  --current   Dump only the latest revision of every page.
  --logs      Dump all log events.
  --stable    Stable versions of pages?
  --pagelist=<file>
			  Where <file> is a list of page titles to be dumped
  --revrange  Dump specified range of revisions, requires
              revstart and revend options.
Options:
  --quiet     Don't dump status reports to stderr.
  --report=n  Report position and speed after every n pages processed.
			  (Default: 100)
  --server=h  Force reading from MySQL server h
  --start=n   Start from page_id or log_id n
  --end=n     Stop before page_id or log_id n (exclusive)
  --revstart=n  Start from rev_id n
  --revend=n    Stop before rev_id n (exclusive)
  --skip-header Don't output the <mediawiki> header
  --skip-footer Don't output the </mediawiki> footer
  --stub      Don't perform old_text lookups; for 2-pass dump
  --uploads   Include upload records without files
  --include-files Include files within the XML stream
  --conf=<file> Use the specified configuration file (LocalSettings.php)

  --wiki=<wiki>  Only back up the specified <wiki>

Fancy stuff: (Works? Add examples please.)
  --plugin=<class>[:<file>]   Load a dump plugin class
  --output=<type>:<file>      Begin a filtered output stream;
                              <type>s: file, gzip, bzip2, 7zip
  --filter=<type>[:<options>] Add a filter on an output branch
  --7ziplevel=<0-10>          Level of 7zip compression (0 - no compression is default)

Bu betik, normalde LocalSettings.php içinde ayarlanan $wgDBadminuser ve $wgDBadminpassword tarafından tanımlanan kullanıcı adı ve parolayı kullanarak veritabanına bağlanır. Genellikle $wgDBadminuser, $wgDBuser olarak daha fazla ayrıcalığa sahip bir kullanıcıdır, ancak dumpBackup.php ile çalıştırmak için ekstra ayrıcalıklara gerek yoktur, bu nedenle kullanıcı adları ve parolalar aynı olabilir. Değişkenler ayarlanmadıysa, veritabanına bağlanmaya çalışırken dumpBackup.php başarısız olacaktır:

$ php dumpBackup.php --full
DB connection error: Unknown error

Notlar

XML dosyası standart çıkış (stdout) üzerine gönderilir; ilerleme raporları standart hataya (stderr) gönderilir. Bunlar, varsayılan çıkış ve hatalar için çıkış aygıtıdır. Betiğini kabuktan çağırdığınızda, her iki çıkışının da varsayılan olarak kabuğa gönderilmesi gerekir, yani: "Bilgilendirici" çıkış ve hataları doğrudan ekranda görmelisiniz.

Hata mesajları

Doğru klasörde değilseniz, bu mesajı alacaksınız:

No input file specified.

DumpBackup betiği, "--report" sonraki parametre 0 veya sayı değil olarak değerlendirildiğinde "Uyarı: [DİZİN]/maintenance/backup.inc içinde sıfıra böl" diyor. Düzeltme, dumpBackup ile "--report" seçeneği olmadan çalıştırmaktır; daha sonra dumpBackup, işlenen her 100 sayfada bir durum satırı yazdırır.

Önerilen yapılandırma ayarları

  • Tüm revizyonların nesne önbelleğine eklenmesini önlemek için $wgRevisionCacheExpiry , 0 olarak ayarlanmalıdır. Okuyucularınız normalde vikinizdeki sayfaların rastgele eski revizyonlarını görmeyeceği için bunların çoğu önbellekte saklanmaktan yararlanamayacaktır.

Ayrıca bakınız

Kaynakça

  1. DumpBackup.php, bir XML değişim sarmalayıcısı oluşturur.