Manual:Yükseltme
Kararlı sürüm (MediaWiki 1.43 )
- mediawiki-1.43.0.tar.gz
- mediawiki-1.43.0.zip
- Git dalı: REL1_43
Eski sürümler (MediaWiki 1.42 )
- mediawiki-1.42.4.tar.gz
- mediawiki-1.42.4.zip
- Git dalı: REL1_42
Alpha sürümü (MediaWiki 1.45 )
More information:
Temel genel bakış
Dosya transferi
Dosyaları aktarmak için bir yöntem seçin:
- wget
- SCP veya WinSCP ile güvenli kopyalama
- SSH Dosya Aktarım Protokolü (SFTP)
- Bir FTP istemcisi kullanma.
- Sunucu barındırma şirketi web tarayıcısı üzerinden bir dosya yöneticisi arayüzü sağlayabilir; servis sağlayıcınıza danışın.
- Başka diğer yöntemler. Dosya aktarım protokolleri listesi'ne bakabilirsiniz.
Ön hazırlık
MediaWiki içindeki UPGRADE metin dosyasını okuyun.
- Gereksinimleri kontrol edin
- RELEASE-NOTES dosyasını okuyun
- UPGRADE dosyasını okuyun
- Mevcut dosyaları ve veritabanını yedekleyin
- Yeni dosyaların paketini açın
- Eklentileri yükseltin
- Veritabanını kontrol etmek için güncelleme komut dosyasını çalıştırın
- Güncelleme testini yapın
- Eski kurulumlardan kalanları kaldırın
Kontrol gereksinimleri
MediaWiki 1.43 aşağıdakilere gereksinim duymaktadır:
- PHP 8.1.0+
- ve aşağıdakilerden biri:
- MariaDB 10.3.0+
- MySQL 5.7.0+
- PostgreSQL 10.0+
- SQLite 3.8.0+
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:Kurulum gereksinimleri 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. UPGRADE dosyasındaki talimatları da okumalısınız.
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:
- MySQL, hem SQL dökümü hem de XML dökümü,
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:
- PostgreSQL, veritabanı dökümü için
pg_dump --create -Fc wikidb > file.db.dump
- SQLite, yedek oluşturmak için bir MediaWiki komut dosyası kullanıyorsunuz:
php wikifolder/maintenance/SqliteMaintenance.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.
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.
cPanel File Manager
cPanel is a popular interface provided by many web hosts. This method is efficient because the files are uncompressed on the server itself.
- Navigate to the directory that holds your wiki folder.
- Upload the mediawiki-1.xx.x.tar.gz file. You may need to hit "Reload" to see it.
- Extract the mediawiki-1.xx.x.tar.gz file. Reload again.
- Confirm that the mediawiki-1.xx.x folder is present.
- Delete the tar.gz file.
- Copy all necessary skins, extensions, image folders, customizations, and the
LocalSettings.php
into the new folder. (See below.) - When you are ready to run update.php, rename your old wiki folder and your new wiki folder. (e.g. "w" becomes "w1.34" and then "mediawiki1.35.0" becomes "w".) This step is easily reversible if you run into problems.
Komut satırı
Mevcut kullanıcı viki 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 viki 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.43/mediawiki-1.43.0.tar.gz
tar xvzf mediawiki-1.43.0.tar.gz
rm mediawiki-1.43.0.tar.gz
(Open)Solaris kullanıcıları gtar, veya:
$ gzip -dc mediawiki-1.43.0.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ümlerdekiuploads
) dizininin, farklı bir yükleme dizini seçmediyseniz, sahipliğini ve izinleri değiştirin.find ./images -type d -exec chmod 755 {} \;
vechgrp -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öreresources/assets/
veyaimages/
dizininde yer almaktadır. SonraLocalSettings.php
ye ekleme yapınız ör.$wgLogo = "$wgScriptPath/images/logo.png";
gibi. - 1.35 için logoları wgLogos üzerinden geri yüklemeniz gerekebilir. Ardından
LocalSettings.php
ekleyin, ör.$wgLogos = [ '1x' => "path/to/1x_version.png", '2x' => "path/to/2x_version.png", 'svg' => "path/to/svg_version.svg" ];
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. Change ownership and group of everything so the web server has access to the files.
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.
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. Bunu kullanmak için patch dosyasını indirmeniz gerekecek. Yama dosyasını dökümler sitesinden elle indirin ve çıkarın veya aşağıdaki wget ile yönergeleri izleyin. Yamalar aşamalıdır, bir sürümü atlayamazsınız.
- cd ana MediaWiki dizinine (
LocalSettings.php
ile birlikte). - Yama eki dosyasını indirin ve gunzip yapınız.
- 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
) - Eğer her şey yolundaysa,
--dry-run
olmadan tekrar patch'i çalıştırın. - 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.
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.
<span id="Adapt_your_LocalSettings.php
">
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 sürümü: | ≥ 1.24 |
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' );
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 sürümü: | ≥ 1.25 |
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.
Remove DefaultSettings.php line (if necessary)
Older versions of MediaWiki automatically generated a line in LocalSettings.php calling DefaultSettings.php . As of Version 1.38, this line is deprecated and does not work with many extensions. It needs to be removed.
Delete the following line:
require_once( "$IP/includes/DefaultSettings.php" );
Remove RenameUser from LocalSettings.php
If you are upgrading to 1.40 or above, Extension:RenameUser has been merged into core. If present, this line must be deleted from LocalSettings.php or the update will fail.
wfLoadExtension( 'Renameuser' );
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ı
Access the command line of your server or an SSH shell or similar. You can access the command line by connecting to your server via SSH. Current versions of all major operating systems (including Windows 10 and 11) contain a command-line OpenSSH client either by default or as an installable feature. If the local PC you are working on runs Microsoft Windows, you may want to (or, if it’s 8.1 or older, have to) install PuTTY, which features a wizard-like interface (or a similar tool). From the command line or the Shell, execute the update script:
MediaWiki sürümü: | ≥ 1.40 |
$ php maintenance/run.php update.php
MediaWiki sürümü: | ≤ 1.39 |
$ php maintenance/update.php
Bir Linux sunucusunda hata alırsanız root (sudo) 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
çalıştırın: sağ tıklayın, Birlikte Aç'ı seçin ve update.php
ile göz atın.
Sonuçta ortaya çıkan komut istemi penceresi, şema yükseltmesi tamamlandığında otomatik olarak kapanır.
MediaWiki mevcut şemayı inceler ve gerektiğinde tablo ve sütun ekleyerek yeni kodla çalışacak şekilde günceller.
--doshared
parametresini iletmeniz gerekir. Aksi takdirde güncelleme komut dosyası tarafından dokunulmazlar.What to do if it says "MediaWiki requires PHP x.y.z or higher; you are using PHP x.w.v"
See Manual:Common errors and symptoms#MediaWiki requires PHP 7.4.3 or higher; you are using PHP 7.3.17
php update.php herhangi bir şey yapmazsa, hızlı bir duraklamayla sonuçlanırsa ve ardından komut istemine geri dönerse ne yapmalı
Bu, hatalı çalışan bir uzantı veya görünümden kaynaklanabilir.
- LocalSettings.php olarak adlandırılan tüm uzantıların ve görünümlerin mevcut olup olmadığını kontrol edin
- Uzantıların doğru kayıt yöntemini kullandığını kontrol edin (wfLoadExtension ve require_once)
- Uzantıların ilk yarısını LocalSettings.php olarak yorumlayın. Bu, update.php çalışmasına neden oluyorsa, bu yarının yarısını kaldırın (yani uzantıların 1/4'ü). Bu, update.php çalışmasına neden OLMUYORSA, ilk yarının yorumunu kaldırın, ancak ikinci yarıyı yorumlayın ve ardından ikinci yarının yarısını yorumlayın, vb. Başarısız olanı bulmak için update.php çalışana kadar tekrarlayın.
"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, $wgDBadminuser dosyanızda (ana dizinde) $wgDBadminpassword ve LocalSettings.php 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.
= '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
- ~/maintenance bölümüne gidin. Mevcut bir 'php.ini' dosyasını düzenleyin veya oluşturun.
- Aşağıdaki gibi bir satır ekleyin:
register_argc_argv=true
php update.php
dosyasını yeniden çalıştırın
Web tarayıcısı
MediaWiki sürümü: | ≥ 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.
- Veritabanı bakımı yapmadan önce daima yedekleyin.
- Web tarayıcınızda
/mw-config/index.php
adresine girin. Örneğin, sizin vikinizhttp://example.org/w/index.php
ise,http://example.org/w/mw-config/index.php
'ye girin. - Dilinizi seçin ve devam et'i tıklayın.
- 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.
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.
Eski kurulumlardan kalanları kaldırın
Önceki kurulumunuzu sunucudaki başka bir klasöre kopyaladıysanız, onu kaldırdığınızdan veya web'den tamamen erişilemez hâle getirdiğinizden emin olun. Eski kurulumları web'den erişilebilir bırakmamak, yükseltme amacını tamamen ortadan kaldırdığı ve sunucunuzu saldırılara açık bıraktığı için çok önemlidir.
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.42.0 sürümünden 1.13.1 sürüme kadar, herhangi bir şema değişikliği gerektirmez. Yalnızca dosyaları güncelleyebilirsiniz. Veritabanının güncellenmesi gerekmez, bu nedenle yükleyici betiğini ç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.
Gerçekten eski bir sürümden nasıl yükseltebilirim? Bir adımda mı yoksa birkaç adımda mı?
MediaWiki sürümü: | ≤ 1.4 |
Şuna bağlıdır: MediaWiki 1.4 veya daha eski bir sürümden yükseltme yapıyorsanız, önce MediaWiki 1.5'e yükseltmelisiniz.
If you are upgrading from a Latin-1 wiki, use upgrade1_5.php (found in MediaWiki 1.5) to convert the relevant parts of the database to UTF-8 ($wgUseLatin1 needs to be set to true in your LocalSettings.php for this to work).
Next, run update.php
, and then set the $wgLegacyEncoding option in LocalSettings.php
to the encoding previously used by the wiki (e.g. windows-1252). This is basically how Wikipedia and other Wikimedia Foundation sites were upgraded from MediaWiki 1.4 to 1.5 – see some related notes at Wikitech.
You may need to upgrade to MediaWiki 1.4 before running the upgrade1.5 script.
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 sürümleri: | 1.5 – 1.35 |
MediaWiki 1.5 veya daha yeni bir sürümden 1.35'e yükseltme yapıyorsanız, eski sürümünüzden en son kararlı sürüme 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 listesini 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 atlamamış olsaydınız, yine de bu hataları alırdınız, ancak hatalar her bir güncellemeyle ilişkilendirilirdi. Bunun yerine, birkaç sürümü aynı anda güncellerseniz, aynı anda aynı hata grubunu alırsınız. Bu, yükseltmeyi daha zor hale getirecektir, ancak atladığınız ara sürümleri güncelleme konusunda sorun yaşamadığınızı unutmayın!
MediaWiki sürümü: | ≥ 1.35 |
MediaWiki 1.36 veya daha yenisine yükseltiyorsanız, yalnızca son iki LTS sürümünden yükseltmeler desteklenecektir (phab:T259771). Bu, çok eski sürümler için önce MediaWiki 1.35'e yükseltmeniz ve ardından 1.36'ya yükseltmeniz anlamına gelir.
Ö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 ile ç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 iyi bir sonuç, yedeğinize geri dönebilmeniz ve ardından yükseltme sürecinde bozulmaya neden olan hatayı ilgili MediaWiki projesine karşı rapor etmeniz olacaktır.
<span id="Can_I_keep_my_LocalSettings.php
?">
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:
- MediaWiki'nin yeni sürümünü yeni bir dizine açın
- 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
içindeki$wgLogo
ve$wgLogos
ayarlarını kontrol edin ve gerekirse logo dosyasını eski dizinden yeni dizine kopyalayın. - 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. - In the old directory, edit LocalSettings.php and insert the following code. This will place the database in read-only mode for regular wiki activity, without restricting your own update actions. Users will see the message provided if they attempt an edit during the upgrade process:$adminTask = ( PHP_SAPI === 'cli' || defined( 'MEDIAWIKI_INSTALL' ) );
$wgReadOnly = $adminTask ? false : 'Upgrading to MediaWiki 1.43.0'; - Yeni dizindeki betik güncelleme veya web güncelleyiciyi çalıştırın.
- Görüntüler alt dizinindeki görüntüleri eski dizinden yeni dizine kopyalayın.
- Eski dizini ve yeni dizini değiştirin. (This will make the database writable again, because $wgReadOnly was only set in the old directory's LocalSettings.php.)
Neden güncelleme?
- Yeni sürümler hakkında bilgilendirilmek için mediawiki-announce listesine abone olunuz.
Yeni sürümler, vikinizi ve sunucunuzu vandalizmden korumak için güvenlik düzeltmelerini içerir. (bkz. Sürüm yaşam döngüsü ). 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:
Ayrıca bakınız
- Greg Sabino Mullane'nin Blog yazısı, sürüm yükseltmeleri hakkında biraz daha ayrıntılı bilgi vermektedir.
- Project:Support desk yardıma ihtiyacınız olduğunda veya bir şeyler ters gittiğinde size yardımıcı olacaktır.
- Help and Support if you need help or something went wrong