Manual:Yükseltme

This page is a translated version of the page Manual:Upgrading and the translation is 98% complete.
Other languages:
Alemannisch • ‎Bahasa Indonesia • ‎Deutsch • ‎English • ‎Nederlands • ‎Türkçe • ‎Zazaki • ‎dansk • ‎español • ‎français • ‎italiano • ‎magyar • ‎polski • ‎português • ‎português do Brasil • ‎română • ‎sardu • ‎čeština • ‎Ελληνικά • ‎български • ‎русский • ‎سنڌي • ‎فارسی • ‎ไทย • ‎中文 • ‎日本語 • ‎ꯃꯤꯇꯩ ꯂꯣꯟ • ‎한국어

Temel genel bakış

Dosya transferi

Dosyaları aktarmak için bir yöntem seçin:

Ön hazırlık

MediaWiki içindeki UPGRADE metin dosyasını okuyun.

  1. Gereksinimleri kontrol edin
  2. Sürüm notlarını okuyun
  3. Mevcut dosyaları ve veritabanını yedekleyin
  4. Yeni dosyaların paketini açın
  5. Eklentileri yükseltin
  6. Veritabanını kontrol etmek için güncelleme komut dosyasını çalıştırın
  7. Güncelleme testini yapın
  8. Remove leftovers from old installations

Kontrol gereksinimleri

MediaWiki 1.34 aşağıdakilere gereksinim duymaktadır:

  • PHP 7.2.9+
  • ve aşağıdakilerden biri:
    • MySQL 5.5.8+ (veya eşdeğer MariaDB)
    • PostgreSQL 9.2+
    • SQLite 3.8+
    • Oracle 9.0.1+

Eğer PostgreSQL kullanıyorsanız lütfen Manual:Upgrading Postgres bölümünü de okuyun.

Daha fazla bilgi için lütfen Manual:Installation requirements ve Uyumluluk 'i okuyun.

Sürüm notlarını okuyun

Tarball dağıtım dosyası içinde, veya Git tarafından teslim edilen/ihraç edilen dosyalar içinde, adı büyük harflerle yazılmış dosyalardan biri olan RELEASE-NOTES (viki) içeren bir dosya var. Şimdi paketi açıp ve bu sürümde nelerin değiştiğini öğrenmenin zamanı geldi.

Bekleyen işlerin kaldırılması

Performans nedenleriyle, veritabanındaki bazı işler ertelenir ve iş kuyruğu tarafından yönetilir. Bu ertelenen işler veritabanında saklanır ve gerçekleşmesi gereken eylemler hakkında bilgi veren parametreleri içerir. Bu bekleyen işleri, parametre özelliklerinin yeni sürümde değişmesi durumunda başarısız olmasını önlemeniz için vikiyi yükseltmeden önce çalıştırmanız kesinlikle önerilmektedir. Tüm bekleyen işleri çalıştırmak ve yükseltmeyi gerçekleştirmeden önce sırayı temizlemek için runJobs.php kullanın.

Mevcut dosyaları ve veritabanını yedekle

Tam talimatlar: Manual:Backing up a wiki

Yükseltme komut dosyaları iyi-korunmuş ve sağlam olsa da, işler yine de ters gidebilir. Veritabanı şemasını güncellemeye başlamadan önce, hem veritabanını hem de dosyaları içeren, vikinin tam yedeğini alın:

  • vikinin içeriği, veritabanından (karakter setinin doğru şekilde belirlendiğinden emin olmak için önce LocalSettings.php dosyasını kontrol edin). SQL dökümanı dökümüne ek olarak bir XML dökümü oluşturmak iyi bir fikir olabilir.
  • MySQL, hem SQL dökümü hem de XML dökümü, mysql komutuyla birlikte kullanılmaktadır:
mysqldump --user=wikidb_user --password=wikidb_userpassword wikidb > file.sql
mysqldump --user=wikidb_user --password=wikidb_userpassword wikidb --xml > file.xml
  • PostgreSQL, veritabanı dökümü için pg_restore komutu ile birlikte kullanılmaktadır:
pg_dump --create -Fc wikidb > file.db.dump
  • SQLite, yedek oluşturmak için bir MediaWiki komut dosyası kullanıyorsunuz:
php wikifolder/maintenance/sqlite.php --backup-to file
  • resimler ve diğer medya dosyaları (images dizininin içeriği, özel logo /skins/common/images/wiki.png)
  • yapılandırma dosyaları, ör. LocalSettings.php ve .htaccess (eğer varsa)
  • MediaWiki'nin tüm kabuk ve eklentilerini içeren program dosyalarını, özellikle bunları değiştirdiyseniz.

Yeni dosyaların paketini açma

Bir tarball paketi kullanma

FTP veya komut satırı kullanarak yeni dosyaları yükleyebilirsiniz. Erişiminiz varsa komut satırını kullanın! Komut satırını kullanmak, binlerce dosyanın her birini FTP ile yüklemekten çok daha hızlı olacaktır.

Açılmış tarball'ınızı sunucunuzdaki yeni ve boş bir klasöre yerleştirmelisiniz. Eğer yeni sürümü doğrudan yeni bir dizin yerine eski sürümünüzün üstünde yüklerseniz, Var olan dosyaları ve veritabanını yedekle bölümünde açıklanan talimatları izlemelisiniz. Aksi takdirde, herhangi bir özelleştirme yaptıysanız, bunları yeniden uygulamak için herhangi bir başvuru yapmadan ayrılmanızı sağlayacak şekilde silebilirsiniz. MediaWiki'nin canlı kopyasının üstünde yeni bir tarball yükleme, MediaWiki'nin eski sürümündeki bazı dosyaları geride bırakabilir ve bu da güncellemenin kodunu etkileyebilir. Bu sebeple yeni dosyaları yeni bir dizinde açmanız ve daha sonra özelleştirmeleri yeni dizine uygulamanız (LocalSettings.php, resimler klasörü, eklentileri ve özel kabuklar gibi diğer özelleştirmeleri geri yüklemeniz önerilir)

FTP veya grafik

Eğer sunucunuzdaki komut satırına erişemiyorsanız, MediaWiki tarball'ını yerel bilgisayarınıza indirin ve yerel bilgisayarda tarball'ı çıkarmak için 7zip kullanın.

Dosyaları bilgisayarınıza çıkardıktan sonra, en sevdiğiniz FTP istemci yazılımını kullanarak dizinleri ve dosyaları sunucuya yükleyiniz.

Komut satırı

Mevcut kullanıcı wiki kurulum dizinleri üzerinde tam yazma izinine sahip değilse sudo komutunu kullanarak çalıştırmanız gerekebilir. Normalde bir tarball paketini açtığınızda, yeni wiki sürümü için yeni bir dizin oluşturulur ve eski kurulum dizininizden eski yapılandırma dosyaları ve resim dizinini kopyalamanız gerekir:

$ cd /path/to/your/new/installation/  
$ wget https://releases.wikimedia.org/mediawiki/1.34/mediawiki-1.34.1.tar.gz
$ tar -xvzf mediawiki-1.34.1.tar.gz 
$ rm mediawiki-1.34.1.tar.gz

(Open)Solaris kullanıcıları gtar, veya:

$ gzip -dc mediawiki-1.34.1.tar.gz | tar xf -

Diğer dosyalar

Tarball'ı yükledikten sonra, bazı dosya ve klasörleri eski kurulum dizininden yeni bir dizine kopyalamanız veya taşımanız gerekir:

  • LocalSettings.php, eski yapılandırma ayarlarınızı içerir.
  • Yüklenen tüm dosyaları içeren wiki images (veya eski sürümlerdeki uploads) dizininin, farklı bir yükleme dizini seçmediyseniz, sahipliğini ve izinleri değiştirin. find ./images -type d -exec chmod 755 {} \; ve chgrp -R apache images (Örneğin. web kullanıcınız "apache" ise).
  • extensions dizinindeki bazı eklentiler. Güncellenmiş eklentileri her zaman almalısınız, eski uzantıların MediaWiki'nin yeni bir sürümüyle çalışması garanti edilmez.
  • Özel bir logo kullanmanız durumunda, bu dosyanın da yedekten geri yüklenmesi gerekiyor. 1.24 öncesi sürümlerde kabuklar genellikle skins/common/images/ dizininde yer almaktadır. 1.24 sonrası sürümlerde sizin tercihinize göre resources/assets/ veya images/ dizininde yer almaktadır. Sonra LocalSettings.php ye ekleme yapınız ör. $wgLogo = "$wgScriptPath/images/logo.png"; gibi.
  • skins dizinindeki özel kabuklar.
  • Eski kurulum dosyalarında veya eklentilerde yapılan değişiklikler.
  • Herhangi bir .htaccess dosyası (Apache kullanıyorsanız ve onlarda herhangi bir kural tanımladıysanız).

İşiniz bittiğinde, bu yeni klasörü web sunucusundaki yayınlanmış klasör yapın veya eski kurulum dizinini yeniden adlandırın ve yenisini eski adla eşleşecek şekilde yeniden adlandırın.

Git kullanımı

Eğer Git kullanılıyorsa, dosyaları yeni bir konumda dışarı aktarınız, ve önceki özelleştirilmiş dosyaları bir önceki bölümde açıklandığı gibi yeni konuma kopyalayınız.

MediaWiki 1.25 veya sonraki bir sürüme yükseltiyorsanız, bazı harici PHP kütüphaneleri Composer veya Wikimedia wiki çiftliği için sağlanan belirli bir koleksiyon kullanarak kurmanız gerekecektir. Harici kütüphanelerin yüklenmesi ve güncellenmesi ile ilgili daha fazla bilgi Git indirme belgesinde bulunabilir.

Yama kullanma

Küçük bir sürüm güncellemesi için genellikle küçük bir yama dosyası kullanılabilir. Bir döküm sitesinden elle yama dosyasını indirip dışarı aktarınız veya aşağıdaki wget yönergelerini izleyiniz. Yamalar artımlıdır, bir sürümü atlayamazsınız.

  1. cd ana MediaWiki dizinine (LocalSettings.php ile birlikte).
  2. Yama eki dosyasını indirin ve gunzip yapınız.
  3. Neyin değiştiğini kontrol etmek için patch -p1 --dry-run komutunu kullanın (örn., patch -p1 --dry-run -i mediawiki-x.xx.x.patch)
  4. Eğer her şey yolundaysa, --dry-run olmadan tekrar patch'i çalıştırın.
  5. Special:Version sayfasını kontrol ediniz. Yeni sürüm numarasını bu sayfada görmelisiniz.

Kalan dosyalar hatalara neden olabilir

Eski kurulum dizininin olduğu yere paketini açarsanız, bazı eski dosyalar yeni sürümde sorunlara sebep olabilir.

MediaWiki version: 1.18

Eğer profil kullanmıyorsanız, ancak MediaWiki kök klasörünüzde bir StartProfiler.php dosyası varsa, /includes/Profiler.php bağlı hataları alabilirsiniz. StartProfiler.php dosyasının silinmesi veya yeniden adlandırılması bu hatayı çözer. MediaWiki kök klasöründe bulunan StartProfiler.sample dosyası gelecekte profil oluşturmayı etkinleştirmeniz durumunda bir şablon görevi görebilir.

MediaWiki version: 1.23

MediaWiki 1.23 temel cilt dosyalarının görünüm otomatik bulma mekanizmasını kaldırır. Bu sürüme yükselttikten sonra, doğrudan skins/ dizinindeki Chick.php, Nostalgia.php, Simple.php ve Standard.php eski dosyalarının yanı sıra skins/ dizinindeki ilgili alt klasörlerin kaldırıldığından emin olmalısınız. MediaWiki, hatırlamanıza yardımcı olacak herhangi biri hala bulunursa uyarıları kaydeder. (Benzer bir kurala uymak için özel kaplamaları da ayarlamanız gerekir.) Ayrıntılar için Manual:Skin autodiscovery bölümüne bakın.

MediaWiki version: 1.24

MediaWiki 1.24 çekirdek kabuk dosyalarının yollarını değiştirdi. Bu sürüme geçtikten sonra, eski CologneBlue.php, Modern.php, MonoBook.php ve Vector.php dosyalarının doğrudan skins/ dizininde artık bulunmadığından emin olmanız gerekir.

Eklentilerin güncellenmesi

Bazı eklentiler MediaWiki'nin yeni sürümüyle çalışmak için güncellendiler. Bu tür uzantıları en son sürümlerine yükseltmeyi unutmayınız. Özel uzantılar için elle güncelleme yapmanız gerekebilir.

Farklı tarbalları eklentileri bazı alt grupları içerir ve MediaWiki çekirdeğiniz için doğru olan sürümü seçmenize yardımcı olur.

Uzantı Dağıtıcı, MediaWiki'nin desteklenen sürümleriyle çalışacak eklentilerin enstantanesini almak isteyen kullanıcılar için iyi çalışmaktadır.

Eğer daha fazla eklenti istiyorsanız o zaman Git deposundan indirme muhtemelen sizin için en iyisidir. Git'iniz yoksa ancak çok sayıda uzantıyı yükseltmek istiyorsanız, mwExtUpgrader kullanmayı düşünebilirsiniz.

LocalSettings.php'nizi uyarlayın

Eski sürümlerdeki LocalSettings.php dosyasını kullanırsanız, yeni sürümlerde bunun nasıl uygulayacağını ayarlamanız gerekebilir:

Kabuk kaydı

MediaWiki'nin 1.24 sürümünden itibaren, Vector, Monobook, Modern ve CologneBlue gibi paket kabuklar artık MediaWiki çekirdeğinin bir parçası değildir. Bunları kullanmak için paketlerin LocalSettings.php dosyasında kayıtlı olması gerekir; aksi takdirde MediaWiki sizi kabukları yüklemediğiniz konusunda uyaracaktır.

1.24 sürümünden daha güncel bir sürüme güncelleme yaparken bu kabuklardan birini kullanmak olmak istiyorsanız LocalSettings.php dosyasına eklemeniz gereken şey aşağıdaki gibidir:

wfLoadSkin( 'Vector' );
wfLoadSkin( 'MonoBook' );
wfLoadSkin( 'Modern' );
wfLoadSkin( 'CologneBlue' );

Bu kod MediaWiki 1.25 ve daha yeni sürümü içindir. MediaWiki 1.24 sürümü için aşağıdaki kodu kullanmanız gerekir:

require_once "$IP/skins/Vector/Vector.php";
require_once "$IP/skins/MonoBook/MonoBook.php";
require_once "$IP/skins/Modern/Modern.php";
require_once "$IP/skins/CologneBlue/CologneBlue.php";

Diğer kabuklar henüz yeni kabuk kayıt sistemine uyarlanmamış olabilir, bu sebeple, herhangi bir sorun çıkması durumunda doğru bir şekilde nasıl kayıt olacağını görmek için her bir kabuğun dokümantasyon sayfasına bakınız.

Uzantı kaydı

MediaWiki'nin 1.25 sürümünden itibaren, uzantılar yeni uzantı kayıt sistemi kullanıyor.

Daha önceki LocalSettings.php dosyası şöyle bir şey içeriyordu:

require_once "$IP/extensions/Cite/Cite.php";
require_once "$IP/extensions/Gadgets/Gadgets.php";
require_once "$IP/extensions/ImageMap/ImageMap.php";
require_once "$IP/extensions/InputBox/InputBox.php";
require_once "$IP/extensions/Nuke/Nuke.php";
require_once "$IP/extensions/ParserFunctions/ParserFunctions.php";
require_once "$IP/extensions/Poem/Poem.php";
require_once "$IP/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.php";
require_once "$IP/extensions/WikiEditor/WikiEditor.php";

Bu, aşağıdaki biçime dönüştürüldü:

wfLoadExtension( 'Cite' );
wfLoadExtension( 'Gadgets' );
wfLoadExtension( 'ImageMap' );
wfLoadExtension( 'InputBox' );
wfLoadExtension( 'Nuke' );
wfLoadExtension( 'ParserFunctions' );
wfLoadExtension( 'Poem' );
wfLoadExtension( 'SyntaxHighlight_GeSHi' );
wfLoadExtension( 'WikiEditor' );

Uzantılar yeni eklenti kayıt sistemini kullanacak şekilde uyarlanmaktadır. Uyarlanmamış uzantılar, eski kurulum biçimini kullanmalıdır. Daha fazla bilgi için eklentinin sayfasındaki kurulum talimatlarına bakın.

Diğer değişiklikler

Bazı değişkenler eskimiş veya kaldırılmış olabilir. Onları LocalSettings.php'e yerleştirmek genellikle herhangi bir etkiye sahip olmayacaktır. Yeni sürümlerde yeni değişkenler eklenmiş veya mevcut bazı değişkenlerin türü değiştirmiş olabilir. Genellikle değişkenler için mümkün olduğunca tür değiştirme durumunda geriye dönük olarak uyumlu olalım diye varsayılan yapıyı kullanmaya çalışırız. Her durumda, bu değişiklikleri görmek için sürüm notlarına göz atınız.

Güncelleme komut dosyasını çalıştırın

MediaWiki veritabanını iki şekilde yükseltebilirsiniz: Komut satırından veya web tarayıcısından. Sunucunuzun komut satırına erişiminiz varsa, zaman aşımı veya bağlantının kesilmesi riskini azalttığı için, güncelleme işleminin komut satırından yapılması önerilir.

Komut dosyası ayrıca MediaWiki'nin ihtiyaç duyduğu eksik bağımlı paketleri indirmeye çalışacaktır.

Komut satırı

Sunucunuzun komut satırına veya SSH kabuğuna veya benzerine erişin. Komut satırına sunucunuza SSH üzerinden bağlanarak erişebilirsiniz. Üzerinde çalıştığınız yerel bilgisayar Microsoft Windows çalıştırıyorsa, SSH'yi kullanmak için PuTTY gibi bir araca ihtiyacınız olacaktır. Komut satırından veya Kabuktan maintenance dizinine geçin ve betik güncellemesini komutunu yürütün:

$ php update.php

Bir Linux sunucusunda hata alırsanız root (sudo php maintenance/update.php) ile aynı komutu gerçekleştirmeyi deneyin. Windows'ta basit kurulumlar için not (ör. XAMPP ile): Öncelikle web sunucunuzun (Apache gibi) ve veritabanınızın (MySQL gibi) çalıştığından emin olun. Ardından update.php dosyasını çalıştırın: sağ tıklayın, Birlikte Aç'ı seçin ve PHP.exe'ye göz atın. Sonuçta ortaya çıkan komut istemi penceresi, şema yükseltmesi tamamlandığında otomatik olarak kapanır.

PHP sürümünüzün çok eski olduğunu ve MediaWiki'nin daha yeni bir sürüme ihtiyacı olduğunu belirten bir mesaj görebilirsiniz. Bu mesajdan sonra güncelleme iptal edilir. Bu hatanın nedeni, komut satırının MediaWiki'yi web sunucusundan yürüttüğünüzden başka bir PHP sürümü kullanabilmesidir. Bu iletiyi aldığınızda, farklı bir komut kullanarak kabukta daha yeni bir PHP sürümü yürütüp yürütemeyeceğinizi denetlemeniz gerekir: Bu, ör. "php5" veya "php56" olabilir. Başka bir sürüm varsa ve - adının altında - hangi ad altındaysa, sunucunuzun kurulumuna bağlıdır. Eğer işe yaramazsa, barındırıcınıza sorun; kesinlikle bilecek.

MediaWiki mevcut şemayı inceler ve gerektiğinde tablo ve sütun ekleyerek yeni kodla çalışacak şekilde günceller.

Paylaşılan veritabanı kullanırsanız, paylaşılan tabloların güncellenmesini istiyorsanız --doshared parametresini iletmeniz gerekir. Aksi takdirde güncelleme komut dosyası tarafından dokunulmazlar.

"ALTER komutu kullanıcıya reddedildi" hatası (veya benzeri) durumunda ne yapmalı

Betiklerin aşağıdakine benzer bir mesajla iptal edilmesi durumunda:

Error: 1142 ALTER command denied to user 'wiki'@'localhost' for table 'mytable' (localhost)
ERROR: must be the owner of the mytable relation 

Bu, LocalSettings.php dosyanızda (ana dizinde) $wgDBadminuser ve $wgDBadminpassword tanımladığınızı kontrol etmeniz gerektiği anlamına gelir. Bunlar, veritabanına erişmek için bu komut dosyasının ihtiyaç duyduğu kullanıcı ve paroladır.

Bazı durumlarda, mysql kullanıldığında bile $wgDBname yerine tablo adının güncellenmesi için eski bir $wgDBmwschema değişkeni (Postgres için) okunuyor gibi görünüyor. Bu durumda, LocalSettings.php dosyasındaki $wgDBmwschema tanımından kurtulun.

"Beklenmeyen T_STRING" hatası durumunda ne yapmalı

Komut satırından update.php çalıştıran kişiler aşağıdaki hatayla karşılaşabilir:

syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' \
in ~/maintenance/commandLine.inc on line 13

Bu hata, update.php php4'ten çalıştırıldığında oluşur.

Sitelerini hem php4 hem de php5 sağlayan sağlayıcılar tarafından barındırılan kişiler aşağıdaki adımları atmalıdır:

  1. komut satırından 'whereis php5' komutunu girin
  2. php5 yolunun yerini belirledikten sonra php5/bin dizininin içeriğini listeleyin
  3. php yürütülebilir dosyasının adını (php veya php5) belirledikten sonra, update.php dosyasını yürütmek için tüm yolu yazın

Aşağıda bir örnek verilmiştir:

$ whereis php5
$ ls -la /usr/local/php5/bin
$ /usr/local/php5/bin/php update.php

= 'register_argc_argv false olarak ayarlanırsa' hata ne yapılır =

Hatayla karşılaşabilirsiniz:

Cannot get command line arguments, register_argc_argv is set to false
  1. ~/maintenance bölümüne gidin. Mevcut bir 'php.ini' dosyasını düzenleyin veya oluşturun.
  2. Aşağıdaki gibi bir satır ekleyin:
register_argc_argv=true
  1. Php update.php dosyasını yeniden çalıştırın

Web tarayıcısı

MediaWiki version: 1.17
Ayrıca bkz. update.php

Veritabanınız zaten büyükse ve yüksek üretimde kullanılıyorsa, Web güncelleyicisini kullanmamalısınız, ör. çünkü güncelleme işlemi maximum_execution_time ulaşıldığında zaman aşımına uğrayacaktır. Bu durumda, komut satırı arabiriminden update.php kullanmalısınız (web'den değil). Tam olarak "çok büyük" olan şey sunucunuza bağlıdır (örneğin performansı, yükü ve PHP'nin maksimum yürütme süresinin komut dosyasının çalışmasına izin verdiği süreye bağlıdır). Vikiniz web güncelleyici için çok büyükse ve barındırma sağlayıcınız komut satırı erişimine izin vermiyorsa, vikinizi başka bir barındırma hesabına, tercihen kabuk erişimi olan bir hesaba taşımanız gerekir.

  1. Veritabanı bakımı yapmadan önce daima yedekleyin.
  2. Web tarayıcınızda /mw-config/ gidin. Örneğin, vikiniz http://example.org/w/index.php adresindeyse http://example.org/w/mw-config/ adresine gidin.
  3. Dilinizi seçin ve devam et'i tıklayın.
  4. Mevcut kurulum tespit edilmelidir. Yükseltmek için ekrandaki talimatları izleyin.
    "Yükseltme anahtarı" istenirse, LocalSettings.php dosyanızı açın ve $wgUpgradeKey atanan anahtarı arayın.

Web güncelleyici çalışmıyor gibi görünebilir: Başlangıçtaki dil seçim ekranını görmek yerine, muhtemelen bazı hata mesajlarıyla boş bir wiki sayfası görebilirsiniz. Bu durumda, büyük olasılıkla web sunucunuzun Yeniden Yazım Kurallarını (büyük olasılıkla kısa URL'ler için) kullanması muhtemeldir; bunlar size mw-config/ de güncelleyiciyi değil, Mw-config/, büyük "M" ile. Bu durumda, güncelleme zamanı için .htaccess dosyasını yeniden adlandırın. Ardından web güncelleyiciye erişebilmeniz gerekir.

  Uyarı: Bu yöntemi kullanırsanız, yükseltme betiği çalıştırdıktan sonra .htaccess dosyasının adını geri değiştirdiğinizden emin olun! Aksi takdirde kısa URL'ler ve muhtemelen diğer şeyler bozulur!

Güncellemeyi test et

Güncelleme tamamlandıktan sonra, vikiye göz atınız ve aşağıdaki işlemlerin beklendiği gibi çalıştığını kontrol ediniz:

  • Sayfaları görüntüleme
  • Sayfaları düzenleme
  • Dosya yükleme
  • Special:Version sayfasını ziyaret ediniz ve gösterilen sürümün doğru olup olmadığını ve eklentilerin bulunduğunu kontrol ediniz.

Remove leftovers from old installations

If you have copied your previous installation to another folder on the server, be sure to remove it or make it completely inaccessible from the web. Is very important to not leave old installations accessible from the web, since it completely defeats the purpose of upgrading, and leaves your server open to attacks.

Sıkça Sorulan Sorular

Güncellemek ne kadar zor?

Değiştirdiğiniz tek dosya LocalSettings.php ise ve 1.5 veya daha yeni bir sürüme geçiyorsanız, işlem çok basittir. Söz konusu insan işi miktarı sadece birkaç dakikadır. Veritabanı şeması değişiklikleri, veritabanınızın boyutuyla orantılı bir zaman alır - milyonlarca sayfalı vikiler için potansiyel olarak saatler, ancak birkaç bin sayfalık daha tipik bir boyut için, genellikle saniyeler içinde yapılır.

Aynı büyük sürümdeki küçük yükseltmeler, 1.13.0'dan 1.13.1'e kadar, herhangi bir şema değişikliği gerektirmez. Sadece dosyaları güncelleyebilirsiniz. Veritabanının güncellenmesi gerekmez, bu nedenle yükleyici komut dosyasını çalıştırmak gerekli değildir.

1.4 veya daha eski bir sürüme geçmek potansiyel olarak karmaşıktır çünkü UTF-8 dışındaki karakter kümeleri için destek bırakılmıştır ve toplu metin saklama şeması değişmiştir. Lütfen UPGRADE dosyasındaki ilgili bölümü okuyun.

Kaynak kodumuzu değiştirdiyseniz ve değişikliklerinizin üzerine yazılmasını istemiyorsanız yükseltme işlemi zorlaşır. $fiff, patch, Meld veya WinMerge gibi araçlar faydalı olabilir. Korumasız uzantılar kullanıyorsanız da sorun olasılığı vardır. MediaWiki'yi yükseltirken uzantılarınızı da yeni sürüme geçirin.

Dış görünümü değiştirdiyseniz veya özel bir dış görünüm kullanıyorsanız, MediaWiki'nin yeni sürümüyle yeniden çalışacak şekilde büyük olasılıkla ayarlamanız gerekecektir.

Her seferinde "global" css ve js (javascript) dosyalarınızı yamalamak yerine, kodu MediaWiki:Common.js ve MediaWiki:Common.css sayfalarınıza ekleyebilirsiniz. Bunlar, yükselttiğinizde yeniden kullanılacak veritabanının bir parçası olduğundan, artık MediaWiki çekirdek dosyalarını düzeltmeniz gerekmeyecek.

Gerçekten eski bir sürümden nasıl yükseltebilirim? Bir adımda mı yoksa birkaç adımda mı?

Bu duruma göre değişir: MediaWiki 1.4 veya daha eski bir sürümden yükseltme yapıyorsanız, önce MediaWiki 1.5 sürümüne geçmelisiniz. Latin-1 vikiden yükseltme yapıyorsanız, veritabanının ilgili bölümlerini UTF-8'e dönüştürmek için upgrade1_5.php (MediaWiki 1.5'te bulunur) kullanın ve bunun çalışması için LocalSettings.php ayarlarınızda $wgUseLatin1 değerinin true olarak ayarlanması gerekir. Ardından update.php dosyasını çalıştırın ve LocalSettings.php dosyasındaki $wgLegacyEncoding seçeneğini daha önce wiki tarafından kullanılan kodlamaya ayarlayın (örn. Windows-1252). Temel olarak Wikipedia ve diğer Wikimedia Foundation siteleri MediaWiki 1.4'ten 1.5'e yükseltildi - ilgili ayarlar dosyasına (uyarı: büyük sayfa!) Ve bazı Wikitech'teki ilgili notlara bakın. upgrade1.5 betiğini çalıştırmadan önce MediaWiki 1.4'e yükseltmeniz gerekebilir. Latin-1 vikiniz için bir veritabanı dökümü yapmak istiyorsanız (örn. MySQL), text tablosundaki old_text alanının türünün mediumblob olduğundan emin olun. Karakter kodlaması sorunlarını önlemek için mediumtext.

MediaWiki 1.5 veya daha yeni bir sürümden yükseltme yapıyorsanız, eski sürümünüzden en son kararlı sürüme tek adımda yükseltme yapabilirsiniz. Raporların büyük çoğunluğu ve otomatik test, tek adımda yapmanın gayet iyi çalıştığını gösterir. Buna inanmakta güçlük çekiyorsanız, bu posta gönderme listesi bölümünü okuyun. Bununla birlikte, eski sürümlerden güncelleme yaptığınızda, PHP hatalarıyla karşılaşma olasılığının, doğrudan yeni sürüme önceki sürümden yükselttiğinizden daha büyük olduğunu lütfen unutmayın. Sürümleri atlamasanız da, her defasında her güncellemeyi yapmış olsaydınız bu hataları yine de alırsınız. Sadece - sürümleri atladığınızda - hepsini aynı anda alacaksınız. Bu, yükseltmeyi daha zor hale getirecektir, ancak atladığınız ara sürümlere güncelleme konusunda sorun yaşamadığınızı unutmayın!

Önce yedek almalı mıyım?

Kısa cevap: Evet.

Uzun cevap: Bu a) verilerinize ne kadar değer verdiğinize, b) yedek oluşturmanın ne kadar zor olduğuna ve c) MySQL'in bakımı ve yönetiminden ne kadar emin olduğunuza bağlıdır.

Güncelleme hatası, veritabanınızı iki sürüm arasında tutarsız bir durumda bırakabilir. Bir PHP veya MySQL hatası, güncelleme sırasında veritabanınızı kısmen güncellemiş olabilir. Bu gibi bir durumlarda, bu sorunu elle bir şekilde düzeltmek mümkün olabilir. Bununla birlikte, update.php'yi çalıştırmadan önce bir veritabanı yedeklemesini almak ve bundan sonra çalışmayı sürdürmek daha kolay olacaktır. Aksi halde, saatlerce - gereksiz - yere uğraşmak zorunda kalabilirsiniz.

Kurtarma işlemi genellikle karmaşıktır. Eğer güncelleme işlemine başlamadan önce bir yedekleme yapmayı ihmal ederseniz ve ardından güncellemeye ilişkin hatadan kurtulmak için yardıma ihtiyacınız olursa; destek forumundaki gönüllüler bu konuda yardım etmek için pek istekli olmayacaklardır. Daha etkili bir sonuç istiyorsanız, önce yedeğinize geri dönünüz, daha sonra probleme neden olan güncelleme işlemi ilgili MediaWiki projesine hatayı bildiriniz.

LocalSettings.php dosyamı saklayabilir miyim?

Evet, ancak küçük değişiklikler yapmak zorunda kalabilirsiniz. LocalSettings.php biçimi büyük ölçüde geriye dönük olarak uyumludur. LocalSettings.php uyumluluğunu bozan değişiklikler, sürüm notlarının "yapılandırma değişiklikleri" bölümünde belirtilmiştir.

Viki sayfam güncellenirken çevrimiçi kalabilir mi?

Genellikle evet, ancak Git geçici olarak (birkaç saniye boyunca) kesilebilir.

Eğer MediaWiki'nin küçük sürümleri arasında güncelleme yapıyorsanız, yapmanız gereken tek şey kaynak dosyalarını güncellemektir.

Not: Aşağıda, komut satırına erişiminiz olduğu varsayılmaktadır. Eğer MediaWiki'nin büyük sürümleri arasında yükseltme yapıyorsanız, tercih edilen prosedür aşağıdaki gibidir:

  1. MediaWiki'nin yeni sürümünü yeni bir dizine açın
  2. Yeni dizini hazırlayın: geçerli LocalSettings.php'nizi eski dizinden kopyalayın, yüklü uzantıları ve özel kaplamaları (varsa) kopyalayın. LocalSettings.php'de $wgLogo ayarını kontrol edin ve gerekirse logo dosyasını eski dizinden yeni dizine kopyalayın.
  3. Yeni sürümün sürüm notlarında LocalSettings.php üzerinde herhangi bir değişiklik yapılması gerekip gerekmediğine bakın.
  4. Eski dizindeki LocalSettings.php dosyasına aşağıdaki değişkeni ekleyerek veritabanını salt okunur moda getirin; kullanıcılar yükseltme işlemi sırasında düzenleme yapmaya çalışırlarsa bu iletiyi görürler:
    $wgReadOnly = 'Upgrading to MediaWiki 1.34.1';
  5. * Bu, güncelleme betiğin çalıştırılmasını da engelleyen MediaWiki 1.27'den beri çalışmıyor. MediaWiki 1.27 sürümünden bu yana geçici bir çözüm Manual:$wgReadOnly#Upgrading içinde bulunabilir. Ayrıca bkz. görev T151833.
  6. Yeni dizindeki betik güncelleme veya web güncelleyiciyi çalıştırın.
  7. Görüntüler alt dizinindeki görüntüleri eski dizinden yeni dizine kopyalayın.
  8. Eski dizini ve yeni dizini değiştirin.

Neden güncelleme?

Yeni sürümler hakkında bilgilendirilmek için mediawiki-announce listesine abone olunuz.

Çünkü küçük bir adım atarak mevcut sürümünüzden en son sürüme geçmek genellikle çok kolaydır ve üstelik bunu web arayüzünü kullanarak yapabilirsiniz.

Yeni sürümler, vikinizi ve sunucunuzu vandalizmden korumak için güvenlik düzeltmelerini içerir. (bkz. Version lifecycle ). Bu güncelleme yapmanız için iyi bir sebeptir!

Yeni büyük sürümler, kullanmak isteyebileceğiniz yeni özelliklerle birlikte gelir: ayrıntılar için sürüm notlarına bakın. Patronlarınızı oldukça eski bir sürümden yükseltmenize izin vermeye ikna etmek için ek argümanlara ihtiyacınız varsa, işte bir özet:

  • 1.5 sürümünden itibaren, değişiklikler farklı olarak kaydedilmeden önce önizleme yapılabilir.
  • 1.9 sürümünden itibaren, bir geri alma düğmesi mevcuttur.
  • 1.12 sürümünden itibaren, devriye gezisi Special:NewPages'de çok daha kolaydır.
  • 1.13'ten beri, dosyaları yeniden adlandırabilirsiniz (taşıyabilirsiniz).
  • 1.14 Sürümünden itibaren, çifte yönlendirmeleri otomatik olarak düzeltebilirsiniz.
  • 1.16 sürümünden itibaren, InstantCommons kullanılabilir.
  • Eğer sunucunuz düzgün bir önbellek çalıştırmaya sahipse, 1.17 sürümünden itibaren ResourceLoader sayfanın yeniden yüklenmesini çok hızlandırdı.
  • 1.17 sürümünden itibaren, kategori sıralama mantığı geliştirildi (özellikle İngilizce olmayan harfler için); 1.21 sürümünden itibarense bu özellik 68 dile genişletildi.
  • 1.18 ve 1.19 sürümünden itibaren, tüm dillerdeki ve cinsiyetlerdeki kullanıcılar arayüz ve olay günlükleri tarafından doğru bir şekilde kaydedilmektedir. (1.15 sürümün öncesinde, cinsiyet bilgisi yoktur).
  • 1.19 sürümünde kabuk sistemi; kendi kabuklarınızda mevcut kabuk parçalarını tekrar kullanmayı kolaylaştırmak için yeniden düzenlendi.
  • 1.20 sürümünden itibaren, farklar daha anlaşılır yapıdadır.
  • 1.21 ve 1.23 sürümlerinde, e-posta bildirimleri daha net ve daha öngörülebilir hale gelirken, wiki'niz daha etkili hale getirdi.
  • 1.22, sürümünden itibaren, vandalizme mücadele (devriye kontrolü) daha az zaman almaktadır.
  • 1.24 sürümünde, daha iyi güvenlik sağlamak için şifre deposu geliştirildi.
  • 1.25 sürümünden itibaren, geliştirilmiş son değişiklikleri burada bulabilirsiniz.
  • 1.26 sürümünde, "ResourceLoader" mekanizması geliştirildi.
  • 1.27 sürümünde, oturum yönetimi ve kullanıcı kimlik doğrulama yönetimi tamamen modernize edildi.
  • 1.29 sürümünden itibaren, Action API'sı yeniden çalışıldı ve geliştirildi. Ayrıca kullanıcı grubu atamaları belirli bir süre için seçilebilir yapıldı.

Bugzilla'da 2014 yılına kadar en çok düzeltilen konuların listesine bakın.

Ayrıca, MediaWiki 1.18 sürümünde, daha iyi bir editör ve anti-vandalizm araçları olan ConfirmEdit ve Nuke gibi bazı çok önemli eklentileri paketlemeye başladık; daha sonraki sürümlerde bu eklentilerden daha fazla eklenmiştir.


Ayrıca bakınız