Manual:Bakım betikleri
Bakım betikleri çeşitli yönetim, içe aktarma, bakım, raporlama ve yükseltme görevlerini yerine getirmek için kullanılır. Betikler PHP ile yazılır ve MediaWiki kurulumlarının maintenance
alt dizininde yaşar.
Değişen derecelerde genel fayda ve kaliteye sahip düzinelerce betik vardır. Bir betiği kullanmadan önce belgeleri dikkatlice okumalısınız; bir komut dosyası belgelenmemişse, çalıştırırken daha fazla dikkatli olun.
Yapılandırma
Kullanıcı Manual:$wgDBuser içinde yapılandırdıysa, veritabanının yapısını değiştirmesi gereken bakım betiklerini çalıştırmak için $wgDBadminuser
ve $wgDBadminpassword
yapılandırma değişkenleri ayarlanmalıdır (Manual:update.php gibi) yeterli izne sahip değil.
Alternatif olarak, koda --dbuser ve --dbpass parametrelerini iletebilirsiniz.
Bu değişkenlerin değerleri, MediaWiki kurulumunuzu güçlendirmek için kullanılan veritabanı motoruna bağlı olarak değişir.
Yapılandırılmazsa, Manual:$wgDBuser içinde yapılandırılmış kullanıcıyı kullanır.
MySQL
Bakım betiklerinin bazıları, güvenlik nedeniyle, ana MediaWiki veritabanı hesabının sahip olmaması gereken veritabanı izinleri gerektirir.
Yalnızca MediaWiki veritabanı için 'superscript' ayrıcalıklarına sahip ayrı bir veritabanı hesabı oluşturulmalıdır (eğer mevcut değilse).
If the database that you use for MediaWiki is called wikidb
, then the following SQL would create such a user who can exercise superuser privileges on localhost.:
GRANT ALL PRIVILEGES ON wikidb.* TO 'wikidbadmin'@'localhost' IDENTIFIED BY 'strong-password';
Hesap oluşturulduktan sonra, hesap adı $wgDBadminuser
yapılandırma değişkeninde ayarlanmalıdır.
Diğer yapılandırma değişkenleri gibi $wgDBadminuser
LocalSettings.php olarak ayarlanmalıdır.
$wgDBadminpassword
yapılandırma değişkeninde $wgDBadminuser
için bir parola ayarlanmalıdır.
PostgreSQL
PostgreSQL, MySQL'den farklı bir güvenlik modeli kullanır ve bakım betiklerini çalıştırmak için MediaWiki kurulumunun günlük çalışması için kullanılan aynı PostgreSQL sunucu hesabı da kullanılmalıdır.
Bu, bakım betikleri tarafından oluşturulan yeni tabloların sahibinin doğru ayarlandığından emin olmak için gereklidir.
Hiç $wgDBadminuser
veya $wgDBadminpassword
ayarlamanıza gerek yoktur.
Betikleri çalıştırma
Bakım betiğin komut satırından çalıştırılması gerekir. Sunucuya doğrudan terminalinden erişmeyen kullanıcılar genellikle ssh üzerinden bağlantı kurarlar. Linux/Unix kullanıcıları için bu bir kabukta ssh istemcisini kullanmaktır. For Windows users, one can use the SSH command line tool introduced in Windows 10 or alternatively use a third-party tool such as PuTTY shown below or use Windows Subsystem for Linux.
Windows kullanıcıları için gerekli program: PuTTY veya herhangi bir bağlantı emülatörü
- Adım 1: PuTTY, bir bağlantı emülatörünü indirin ve çalıştırın.

- Adım 2: PuTTy'de, Ana Bilgisayar Adı (veya IP adresi) altında web barındırma sitenizin IP Adresi'ni girin (gerekirse web sitesi sağlayıcınıza başvurun) ve Açık tıklayın.

- Adım 3: Bir komut ekranı açılır. Farklı oturum aç: satırına FTP kullanıcı adını girin.
- Adım 4: FTP parolasını girin.
- Adım 5: Geçerli dizini bakım alt dizinine değiştirin. Şu anda hangi klasörde olduğunuzu görmek için
pwd
yazabilirsiniz. Bakım klasörü kök MediaWiki klasöründedir.
$ cd maintenance
- Adım 6: Çalıştırılması gereken bakım betiğini yürütün:
$ php rebuildall.php
- Bir hata alırsanız (örneğin: php.exe geçerli bir Win32 uygulaması değil), şunu deneyin:
$ php-cgi rebuildall.php
- Windows'da komut:
$ C:\path\to\php\php-win.exe C:\path\to\mediawiki\maintenance\rebuildall.php
MW_INSTALL_PATH
ortam değişkenini MediaWiki kurulumunuzun köküne işaret edecek şekilde ayarlamaktır. Bu, komut dosyalarının gerekli dosyaları bulmasına yardımcı olur ve özellikle üçüncü taraf uzantılar tarafından sağlanan bakım betiklerini çalıştırırken önemlidir.
Standart komut satırı seçenekleri
/maintenance
içindeki hemen hemen her PHP betiği birkaç standart seçeneği destekler:
- --help
- Yardım mesajını görüntüler
- --conf <path>
- LocalSettings.php dosyasının konumu, varsayılan değilse (betiğin üst dizininde)
- --dbuser <username>
- LocalSettings.php içinde belirtilenin yerine kullanılacak, veritabanı bağlantısı gerektirmeyen betikleri için veya SQLite veritabanı arka ucu kullanıldığında kullanılan veritabanı hesabı
- --dbpass <password>
- LocalSettings.php içinde belirtilenin yerine kullanılacak veritabanı, veritabanı bağlantısı gerektirmeyen betikleri için veya SQLite veritabanı arka ucu kullanıldığında
- --globals
- Hata ayıklama işleminin sonunda küresel çıkışlar
- --memory-limit <value>
- Betiği için bellek sınırını ayarlayın. Normal sayılar, standart php.ini kısaltmaları (1024K, 20M, 1G),
max
değerini sınırsız (atlanırsa varsayılan olarak kullanılır) vedefault
değerlerini kabul etmez. (1.17 sürümünde tanıtıldı) - --quiet
- Hatasız çıkışı bastır
- --wiki <id>
- Viki çiftlikleri için Viki kimliği. Bu
dbname
veyadbname-prefix
biçiminde olabilir. LocalSettings.php, buna göre tanımlananMW_DB
veMW_PREFIX
sabitleriyle çalıştırılacaktır. - --profiler
- Profiler çıktı biçimi (genellikle "metin"). (1.22 sürümünde tanıtıldı)
- --mwdebug
- Yerleşik MediaWiki geliştirme ayarlarını etkinleştirin. (1.31 sürümünde tanıtıldı)
Sembolik bağlantıları kullanan MediaWiki yüklemeleri
MediaWiki php dosyalarının merkezi bir yüklemeye bağlandığı durumlarda, bakım betiğine LocalSettings.php dosyasının yolunu belirtmeniz gerekir. Örneğin:
php maintenance/importImages.php --conf /var/wwwdata/website.org/wiki/LocalSettings.php /tmp/wikiimages .jpg .png .svg
Aksi takdirde bu hatayı alırsınız:
A copy of your installation's LocalSettings.php must exist and be readable in the source directory.
Paylaşılan ayarları (aile türü) kullanan MediaWiki yüklemeleri
Bazen MediaWiki birçok dil için bir aile olarak yüklenir ve ayarlar (LocalSettings.php) ortak bölüme ve dil bölümlerine ayrılır (Manuel:Viki ailesi#Paylaşılan Ayarlar sayfasına bakın) ve ortak bölüm /w dizininin dışında bulunur ve erişilir göreli bağlantı (require_once "../ExtensionSettings.php";
) kullanılır.
Bu durumda, bakım betikleri /w/maintenance dizininde çalıştırıldığında çalışmaz.
Bunları /w dizininden çalıştırın:
$ php maintenance/rebuildall.php
Kabuk erişimi yok
Paylaşılan pek çok ana bilgisayarda kabuk erişiminiz olmayacaktır. Aşağıdaki uzantılar web üzerinden bakım betikleri çalıştırmak için yararlı olabilir: Maintenance ve MaintenanceShell .
Bakım betiklerinin listesi
Muhtemelen tarihe geçmiş bu liste yerine,
maintenance
dizininin en son içeriğine göz atın.- https://doc.wikimedia.org/mediawiki-core/master/php/ - Oluşturulan belgelendirme özetini görüntüleyin. (Dosyalar> Dosya Listesi> sekmelerde veya sol taraftaki gezinme kenar çubuğunda bakım)
MediaWiki kurulumunun kökünde bulunan maintenance
alt dizininde bulunan dosyaların listesi.
Bu listeyi güncel tutarak, bu dosyaların özel amacının ve bir hizmetlinin bu dosyaları nasıl kullanması gerektiğine dair bir açıklama ekleyerek bu kılavuza katkıda bulunabilirsiniz (komut satırı örnekleri, vb.).
Bunların geçici olarak oluşturulduğunu ve adlandırıldığını unutmayın, bu nedenle bazı kullanılabilirlik sorunlarına sahip olun.
maintenance/
maintenance/archives
maintenance/benchmarks
- Benchmarker.php
- bench_HTTP_HTTPS.php
- bench_delete_truncate.php
- bench_if_switch.php
- bench_strtr_str_replace.php
- bench_utf8_title_check.php
- bench_wfBaseConvert.php
- bench_wfIsWindows.php
- benchmarkHooks.php
- benchmarkParse.php
- benchmarkPurge.php
maintenance/dev/includes
maintenance/language
- StatOutputs.php
- alltrans.php
- checkDupeMessages.php
- checkExtensions.php
- checkLanguage.inc
- checkLanguage.php
- countMessages.php
- date-formats.php
- digit2html.php
- dumpMessages.php
- generateCollationData.php
- generateNormalizerDataAr.php
- generateNormalizerDataMl.php
- langmemusage.php
- listVariants.php
- languages.inc
- transstat.php
maintenance/oracle
maintenance/storage
- checkStorage.php
- compressOld.php
- dumpRev.php
- moveToExternal.php
- orphanStats.php
- recompressTracked.php
- resolveStubs.php
- storageTypeStats.php
- testCompression.php
- trackBlobs.php