ম্যানুয়াল:আপগ্রেড করা

From mediawiki.org
This page is a translated version of the page Manual:Upgrading and the translation is 46% complete.
Outdated translations are marked like this.

সংক্ষিপ্ত বিবরণ

ফাইল স্থানান্তর

ফাইল স্থানান্তর করার জন্য একটি পদ্ধতি চয়ন করুন:

  • একটি এফটিপি ক্লায়েন্ট ব্যবহার করে।
  • হোস্টিং সংস্থা ওয়েব ব্রাউজারের মাধ্যমে একটি ফাইল ম্যানেজার ইন্টারফেস সরবরাহ করতে পারে; আপনার সরবরাহকারীর সাথে পরীক্ষা করুন।
  • অন্য কিছু পদ্ধতি। There is a list of these at List of file transfer protocols


  1. প্রয়োজনীয়তা পরীক্ষা করুন
  1. রিলিজ নোট পড়ুন
  1. Read the UPGRADE file
  1. বিদ্যমান ফাইল এবং ডাটাবেস ব্যাক আপ করুন
  2. নতুন ফাইলগুলি আনপ্যাক করুন
  3. এক্সটেনশন আপগ্রেড করুন
  4. ডাটাবেসটি পরীক্ষা করতে আপডেট স্ক্রিপ্টটি চালান
  5. আপডেট পরীক্ষা করুন
  6. পুরানো ইনস্টলেশন থেকে বামফুটগুলি সরান

প্রয়োজনীয়তাগুলি পরীক্ষা করুন

সতর্কীকরণ সতর্কীকরণ MediaWiki from 1.32 to 1.35.4, 1.36.2, 1.37.0 contain a security issue that allow unprivileged editing of arbitrary page and arbitrary JavaScript execution. If you are using one of these versions and can not upgrade to a newer version, please see ২০২১-২২ নিরাপত্তাসংক্রান্ত প্রকাশনা/প্রাজিপ্র for a workaround.

মিডিয়াউইকি 1.38 -এর প্রয়োজন:

  • PHP 7.3.19/7.4.3+
  • নিম্নলিখিত একটি:
    • MariaDB 10.1.0+
    • MySQL 5.5.8+
    • PostgreSQL 9.4+
    • SQLite 3.8.0+

Since Version 1.36, MediaWiki only commits to supporting upgrades from two LTS releases ago (see phab:T259771). Upgrades from older versions of MediaWiki will have to be performed in multiple steps. This means that if you want to upgrade to 1.36 from 1.23 or earlier, you'll first have to upgrade your 1.23 wiki to 1.27 (or 1.35), and, from 1.27 (or 1.35), you'll be able to upgrade to 1.36.

আপনি যদি PostgreSQL ব্যবহার করন, তবে দয়া করে Manual:Upgrading Postgres -ও পড়ুন।

আরও তথ্যের জন্য, দয়া করে ম্যানুয়াল:ইনস্টলেশনের জন্য প্রয়োজন এবং সামঞ্জস্য পড়ুন।

রিলিজ নোট পড়ুন

Within the distribution tarball, or within the files checked out/exported from Git, there are a number of files with capitalized filenames, one of which contains the RELEASE-NOTES (wiki). এখনই এটি খোলার এবং এই রিলিজটিতে কী পরিবর্তন হয়েছে তা খুঁজে বের করার সময়। You should also read the instructions in the UPGRADE file.

মুলতুবি থাকা কাজগুলি পরিষ্কার করুন

For performance reasons, some actions in the database are delayed, and are managed by the job queue. এই কাজগুলি ডাটাবেসে সঞ্চিত থাকে এবং এটি সম্পাদন করা উচিত এমন ক্রিয়া সম্পর্কিত তথ্যসহ পরামিতি ধারণ করে। উইকিকে আপগ্রেড করার আগে সেই মুলতুবি থাকা জবগুলি চালনার জন্য দৃড়ভাবে সুপারিশ করা হয়েছে, যদি নতুন সংস্করণে সেই জবের প্যারামিটারের স্পেসিফিকেশন পরিবর্তিত হয় তবে তাদের ব্যর্থতা এড়াতে। Use runJobs.php to run all pending jobs and clear the queue before performing the upgrade.

বিদ্যমান ফাইল এবং ডাটাবেস ব্যাক আপ করুন

Full instructions: Manual:Backing up a wiki

While the upgrade scripts are well-maintained and robust, things could still go awry. Before proceeding to update the database schema, make a full backup of the wiki, including both the database and the files:

  • the wiki's content, from the database, (make sure you get the character set specified correctly, first check LocalSettings.php). It may be a good idea to create an XML dump in addition to the SQL database dump.
  • MySQL, both SQL dump and XML dump are for use with the mysql command:
mysqldump --user=wikidb_user --password=wikidb_userpassword wikidb > file.sql
mysqldump --user=wikidb_user --password=wikidb_userpassword wikidb --xml > file.xml
  • PostgreSQL, database dump for use with pg_restore command:
pg_dump --create -Fc wikidb > file.db.dump
  • SQLite, you use a MediaWiki script for making a backup:
php wikifolder/maintenance/sqlite.php --backup-to file
  • images and other media files (the contents of the images directory, custom logo /skins/common/images/wiki.png)
  • configuration files, e.g. LocalSettings.php and .htaccess (if present)
  • মিডিয়াউইকির প্রোগ্রাম ফাইলগুলি, সমস্ত স্কিন এবং এক্সটেনশানসহ, বিশেষত যদি আপনি সেগুলি পরিবর্তন করেন।

নতুন ফাইলগুলি আনপ্যাক করুন

একটি টার্বল প্যাকেজ ব্যবহার করে

আপনি এফটিপি বা কমান্ড লাইন ব্যবহার করে নতুন ফাইলগুলি স্থাপন করতে পারেন। কমান্ড লাইনটি ব্যবহার করুন, যদি আপনার এটিতে অ্যাক্সেস থাকে! কমান্ড লাইনটি ব্যবহার করা এফটিপির মাধ্যমে হাজার হাজার ফাইলের মধ্যে একটিতে আপলোড করার চেয়ে অনেক দ্রুত হবে।

You should put the decompressed tarball in a new and empty folder on your server. If you instead extract the new version directly on top of your old version, rather than in a new directory, you should follow the instructions described in Back up existing files and the database: otherwise, if you've made any customizations you may erase them in a way that leaves you with no reference to re-apply them from. আপনার মিডিয়াউইকির লাইভ কপির উপরে একটি টারবাল উত্তোলন মিডিয়াউইকির পুরানো সংস্করণ থেকে ফাইলগুলি পিছনে ফেলে রাখতে পারে যা আপগ্রেড কোডটিতে হস্তক্ষেপ করতে পারে। আপনাকে নতুন ডিরেক্টরিতে নতুন ফাইলগুলি আনপ্যাক করার পরামর্শ দেওয়া হচ্ছে এবং তারপরে নতুন ডিরেক্টরিতে কাস্টমাইজেশন প্রয়োগ করে (LocalSettings.php, চিত্র ফোল্ডার, এক্সটেনশনগুলি এবং কাস্টম স্কিনের মতো অন্যান্য কাস্টমাইজেশন পুনরুদ্ধার করা)

এফটিপি বা গ্রাফিকাল

আপনি যদি আপনার সার্ভারের কমান্ড লাইনটি অ্যাক্সেস করতে না পারেন, তবে আপনার স্থানীয় কম্পিউটারে মিডিয়াউইকি টারবল ডাউনলোড করুন এবং আপনার স্থানীয় পিসিতে টারবলটি বের করতে 7zip ব্যবহার করুন।

আপনি স্থানীয়ভাবে ফাইলগুলি সরিয়ে নেওয়ার পরে সার্ভারে ডিরেক্টরি এবং ফাইলগুলি আপলোড করতে আপনার প্রিয় এফটিপি ক্লায়েন্ট সফ্টওয়্যার ব্যবহার করুন।

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.

কমান্ড লাইন

আপনার যদি আপনার বর্তমান ব্যবহারকারীর অধীনে উইকি ইনস্টল ডিরেক্টরিগুলিতে সম্পূর্ণ লেখার অনুমতি না পান তবে আপনাকে sudo হিসাবে কমান্ডটি চালানোর প্রয়োজন হতে পারে। সাধারণত টারবল প্যাকেজটি আনার সময় নতুন উইকি সংস্করণের জন্য একটি নতুন ডিরেক্টরি তৈরি করা হবে এবং আপনাকে আপনার পুরানো ইনস্টলেশন ডিরেক্টরি থেকে পুরনো কনফিগারেশন ফাইল এবং চিত্র ডিরেক্টরি কপি করতে হবে:

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

(Open)Solaris users should use gtar, or:

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

অন্যান্য ফাইলগুলি

টার্বলটি বের করার পরে, আপনাকে পুরানো ইনস্টলেশন ডিরেক্টরি থেকে নতুন ফাইলটিতে কিছু ফাইল এবং ফোল্ডার অনুলিপি করা বা সরিয়ে নেওয়া উচিত:

  • LocalSettings.php - contains your old configuration settings.
  • The images (or uploads in older versions) directory, which contains all the uploaded files to the wiki, unless you have chosen a different upload directory, and change the ownership and permissions. find ./images -type d -exec chmod 755 {} \; and chgrp -R apache images (e.g. if your web user is apache).
  • Some extensions in the extensions directory. You should always get updated extensions; old extensions aren't guaranteed to work with a newer version of MediaWiki.
  • In case you use a custom logo this file also needs to be restored from backup. Before 1.24 the logo is usually in skins/common/images/. After 1.24 the logo is usually in resources/assets/ or images/ if that's what you chose to use. Then add to LocalSettings.php e.g. $wgLogo = "$wgScriptPath/images/logo.png";

১.৩৫ এর জন্য আপনাকে wgLogos থেকে লোগো পুনরুদ্ধার করতে হতে পারে। তারপর LocalSettings.php যোগ করুন যেমন $wgLogos = [ '1x' => "path/to/1x_version.png", '2x' => "path/to/2x_version.png", 'svg' => "path/to/svg_version.svg" ];

  • Custom skins from within the skins directory.
  • পুরানো ইনস্টলেশন ফাইল বা এক্সটেনশনে যে কোনও পরিবর্তন হয়েছে।
  • যে কোনও .htaccess ফাইল (যদি আপনি অ্যাপাচি ব্যবহার করেন এবং আপনি সেগুলিতে কোনও নিয়ম সংজ্ঞায়িত করেন)।

একবার হয়ে গেলে, এই নতুন ফোল্ডারটি ওয়েব সার্ভারে প্রকাশিত ফোল্ডারটি তৈরি করুন বা পুরাতন ইনস্টলেশন ডিরেক্টরিটির নতুন নাম দিন এবং তারপরে পুরানো নামের সাথে মিলে নতুন নামটি দিন।

গিট ব্যবহার করে

If using Git , export the files into a clean location, and then copy the old customized files into the new location as described in the previous section.

আপনার কম্পোজার বা উইকিমিডিয়া উইকি ফার্মের জন্য রক্ষণাবেক্ষণকৃত কোনও সংগ্রহ ব্যবহার করে কিছু বাহ্যিক পিএইচপি লাইব্রেরি ইনস্টল করতে হবে। More details on installing and updating external libraries can be found in the Git download documentation.

প্যাচ ব্যবহার করে

A small patch file is usually made available for a minor version upgrade. You'll need to download patch to use this. Manually download and extract the patch file from the dumps site or follow the directions with wget below. Patches are incremental, you can not skip a version.

  1. cd to your main MediaWiki directory (the one with LocalSettings.php).
  1. Download the patch file and gunzip it.
  1. Use patch -p1 --dry-run to check what will be changed (e.g., patch -p1 --dry-run -i mediawiki-x.xx.x.patch)
  1. If all is well, run patch again without --dry-run.
  1. আপনার Special:Version পরীক্ষা করুন এবং আপনার নতুন সংস্করণ নম্বরটি দেখতে হবে।

ফাইলগুলি যা ত্রুটির কারণ হতে পারে

আপনি যদি পুরানো ইনস্টলেশন ডিরেক্টরিটি প্যাক করে ফেলেছেন তবে কিছু পুরানো ফাইলগুলি নতুন সংস্করণে সমস্যা তৈরি করতে পারে।

মিডিয়াউইকি সংস্করণ:

If you are not using profiling, but have a StartProfiler.php file in the MediaWiki root folder, you may receive errors referring to /includes/Profiler.php. Deleting, or renaming, the StartProfiler.php file will resolve this error. The StartProfiler.sample file, also in the MediaWiki root folder, can serve as a template should you enable profiling in the future.

মিডিয়াউইকি সংস্করণ:

MediaWiki 1.23 deprecates the skin autodiscovery mechanism of core skin files. After upgrading to this version, you should ensure that the old files Chick.php, Nostalgia.php, Simple.php and Standard.php directly in the skins/ directory as well as the according subfolders inside the skins/ directory got removed. MediaWiki will log warnings if any of them are still found to help you remember. (You will also need to adjust any custom skins to follow a similar convention.) See Manual:Skin autodiscovery for details.

মিডিয়াউইকি সংস্করণ:

MediaWiki 1.24 changes the paths of core skin files. After upgrading to this version, you should ensure that the old files CologneBlue.php, Modern.php, MonoBook.php and Vector.php directly in the skins/ directory are no longer present. See Manual:Skin autodiscovery for details.

এক্সটেনশন আপগ্রেড করুন

মিডিয়াউইকির নতুন সংস্করণটির সাথে কাজ করার জন্য কয়েকটি এক্সটেনশন আপডেট করা হয়েছে। এই জাতীয় এক্সটেনশনের সর্বশেষতম সংস্করণে আপগ্রেড করতে ভুলবেন না। আপনার কাস্টম এক্সটেনশনে ম্যানুয়াল আপডেটগুলি করতে হতে পারে।

Different tarballs include some subsets of extensions and have versioning which helps you upgrade choosing the right one for your MediaWiki core release.

Extension Distributor works well for most people who want a snapshot of extensions that will work with their supported versions of MediaWiki.

If you want a lot of extensions then downloading from Git is probably best. If you don't have Git but you want to upgrade a lot of extensions, you might consider using mwExtUpgrader.

Adapt your LocalSettings.php

If you use the same LocalSettings.php from the old version, you may need to adapt it to how new versions handle it:

ত্বকের নিবন্ধকরণ

Since MediaWiki 1.24, bundled skins like Vector, Monobook, Modern and CologneBlue are no longer part of MediaWiki core, and they need to be registered explicitly in LocalSettings.php to use them, otherwise MediaWiki will warn that you don't have installed skins.

This is what you need to add to LocalSettings.php when upgrading from versions older than 1.24 and want to have available one of those skins:

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

Other skins may still not be adapted to the new skin registration system, so refer to the documentation page about each skin to see how to register it properly in case of problems.

এক্সটেনশন নিবন্ধকরণ

Since MediaWiki 1.25, extensions use a new extension registration system.

পূর্বে আপনার LocalSettings.php -এ এমন কিছু অন্তর্ভুক্ত থাকত:

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";

এটি রূপান্তর করা যেতে পারে:

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

এক্সটেনশনগুলি নতুন এক্সটেনশন রেজিস্ট্রেশন সিস্টেমটি ব্যবহার করার জন্য অভিযোজিত হচ্ছে। অভিযোজিত নয় এমন এক্সটেনশনগুলির সেগুলি ইনস্টল করার পুরানো উপায়টি ব্যবহার করা উচিত। আরও তথ্যের জন্য এক্সটেনশনের পৃষ্ঠায় ইনস্টলেশন নির্দেশাবলী দেখুন।

অন্যান্য ভেরিয়েবল

কিছু ভেরিয়েবল অপ্রচলিত বা এমনকি অপসারণ করা যেতে পারে। LocalSettings.php -এ সেগুলি রাখলে সাধারণত কোনও প্রভাব থাকে না। নতুন সংস্করণগুলিতে নতুন ভেরিয়েবল যুক্ত করা যেতে পারে বা কিছু বিদ্যমান ভেরিয়েবলগুলি তাদের ধরণ পরিবর্তন করেছে। আমরা সাধারণত তাদের জন্য বুদ্ধিমান ডিফল্ট ব্যবহার করার চেষ্টা করি এবং প্রকারের পরিবর্তনের ক্ষেত্রে পিছনে সামঞ্জস্যপূর্ণ হতে পারি। যে কোনও ক্ষেত্রে, এই পরিবর্তনগুলি দেখতে রিলিজ নোটগুলি একবার দেখুন।

আপডেট স্ক্রিপ্ট চালান

আপনি মিডিয়াউইকি ডাটাবেস দুটি উপায়ে আপগ্রেড করতে পারেন: হয় কমান্ড লাইন থেকে বা ওয়েব ব্রাউজার থেকে। আপনার সার্ভারে শেল অ্যাক্সেস থাকলে, কমান্ড লাইন থেকে আপগ্রেড করার প্রস্তাব দেওয়া হয়, যেহেতু এটি একটি সময়সীমা বা সংযোগ পুনরায় সেট করার মাধ্যমে আপগ্রেড প্রক্রিয়াটি ব্যাহত হওয়ার ঝুঁকি কমায়।

স্ক্রিপ্টটি মিডিয়াউইকির যে কোনও নিখোঁজ নির্ভরতা ডাউনলোড করার চেষ্টা করবে।

কমান্ড লাইন

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. If the local PC you are working on runs Microsoft Windows, you will need a tool like PuTTY to use SSH. From the command line or the Shell, change to the maintenance directory and execute the update script:

$ php update.php

একটি লিনাক্স সার্ভারে যদি আপনি ত্রুটি পান তবে মূল (sudo php update.php) হিসাবে একই কমান্ডটি প্রয়োগ করার চেষ্টা করুন। উইন্ডোজে সাধারণ ইনস্টলেশনগুলির জন্য দ্রষ্টব্য (উদাহরণস্বরূপ XAMPP ব্যবহার করে): প্রথমে নিশ্চিত হয়ে নিন যে আপনার ওয়েব সার্ভার (যেমন Apache) এবং আপনার ডাটাবেস (যেমন MySQL) চলছে কিনা। Then run update.php: right-click it, select Open With, and browse to PHP.exe. স্কিমা আপগ্রেড সম্পূর্ণ হলে ফলাফল প্রাপ্ত কমান্ড প্রম্পট উইন্ডোটি অটোক্লোজ হতে পারে।

You might see a message that your PHP version is too old and that MediaWiki needs a newer version. After that message, the update aborts. Reason for this error is that the command line can use another PHP version than that one which you have when you execute MediaWiki from the web server. When you get this message you should check, if you can execute a newer PHP version on the shell by using a different command: That might e.g. be php5 or php56. If another version is available and - if so - under which name, depends on the setup of your server. If it does not work, ask your hoster; they will surely know.

মিডিয়াউইকি বিদ্যমান স্কিমাটি পরিদর্শন করবে এবং এটি প্রয়োজনীয়ভাবে সারণী এবং কলামগুলি যুক্ত করে নতুন কোডের সাথে কাজ করতে আপডেট করবে।

If you use a Shared database, you should pass the --doshared parameter if you want the shared tables to be updated. Otherwise, they won't be touched by the update script.

What to do if php update.php fails to do anything, resulting in a quick pause and then return to command prompt

এটি কোনও ত্রুটিযুক্ত ত্বক বা এক্সটেনশনের কারণে ঘটতে পারে।

  • Check that all extensions and skins called for in LocalSettings.php are present
  • Check that extensions are using the correct registration method (wfLoadExtension vs. require_once)
  • Comment out the first half of the extensions in LocalSettings.php.

If this causes update.php to work, uncomment half of that half (so 1/4 of the extensions). If this does NOT cause update.php to work, uncomment the first half but comment out the second half, and then comment out half of the second half, etc. Repeat until update.php works to find the one that is failing.

What to do in case of "ALTER command denied to user" error (or similar)

স্ক্রিপ্টগুলি অনুরূপ কোনও বার্তার সাথে বাতিল হয়ে যায়:

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

This means that you should check that you have defined $wgDBadminuser and $wgDBadminpassword in your LocalSettings.php file (in the main directory). These are the user and password needed by this script in order to access to the database.

In some cases, an old $wgDBmwschema variable (for Postgres) seems to be read for the table name to update instead of $wgDBname, even when MySQL is used. If this is the case, just get rid of the $wgDBmwschema definition in LocalSettings.php.

What to do in case of "unexpected T_STRING" error

কমান্ড লাইন থেকে update.php চালানো ব্যক্তিরা নিম্নলিখিত ত্রুটির মুখোমুখি হতে পারেন:

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

update.php php4 থেকে চালানো হলে এই ত্রুটি ঘটে।

যে সমস্ত ব্যক্তিরা তাদের সাইট php4 এবং php5 সরবরাহকারীদের দ্বারা হোস্ট করা আছে তাদের নিম্নলিখিত পদক্ষেপ নেওয়া উচিত:

  1. from the command line, enter the command 'whereis php5'
  1. once you have discerned the location of the php5 path, list the contents of php5/bin directory
  1. once you've determined the name of the PHP executable (either PHP or php5), type in the entire path to execute update.php

নিচে একটি উদাহরণ দেওয়া হল:

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

What to do in case of 'register_argc_argv is set to false' error

আপনি ত্রুটির সম্মুখীন হতে পারেন:

Cannot get command line arguments, register_argc_argv is set to false
  1. Go to ~/maintenance. Either edit an existing 'php.ini' file, or create one.
  1. নিম্নলিখিত হিসাবে একটি লাইন যুক্ত করুন:
  1. পুনরায় চালান php update.php

ওয়েব ব্রাউজার

মিডিয়াউইকি সংস্করণ:
আরো দেখুন update.php

If your database is already big and in high production usage, then you should not be using the Web updater, e.g. because the update process will time out when the maximum_execution_time is reached. In that case you should use update.php from the command-line interface (not from the web). What exactly is "too big" depends on your server (e.g. on its performance, the load and on how long the maximum execution time of PHP allows the script to run). If your wiki is too big for the web updater and your hosting provider does not allow command-line access, then you need to migrate your wiki to another hosting account, preferably to one that does have shell access.

  1. সর্বদা ডাটাবেস ব্যাক আপ করবেন রক্ষণাবেক্ষণ সম্পাদনের আগে।
  1. Navigate your web browser to /mw-config/.

For example, if your wiki is at http://example.org/w/index.php, then navigate to http://example.org/w/mw-config/.

  1. আপনার ভাষা নির্বাচন করুন এবং চালিয়ে যান ক্লিক করুন।
  1. The existing installation should be detected. Follow the instructions on the screen to upgrade it.
    If asked for the "upgrade key", open your LocalSettings.php file and look for the key assigned to $wgUpgradeKey .

It might happen that the web-updater does not seem to work: Instead of seeing the initial language selection screen, you might see an empty wiki page, possibly with some error message. In this case it is most likely that your web server uses Rewrite Rules (most likely for short URLs), which do not show you the updater at mw-config/, but a wiki page at Mw-config/, with capital "M". In this case, rename the .htaccess file for the time of the update. Then you should be able to access the web-updater.

সতর্কীকরণ সতর্কীকরণ আপনি যদি এই পদ্ধতিটি ব্যবহার করেন, আপগ্রেড স্ক্রিপ্ট চালানোর পরে .htaccess ফাইলের নাম ফিরে নিশ্চিত করে নিন! অন্যথায় সংক্ষিপ্ত ইউআরএল এবং সম্ভবত অন্যান্য জিনিসগুলি ভেঙে যাবে!

আপডেট পরীক্ষা করুন

আপগ্রেড শেষ হয়ে গেলে, উইকিতে ব্রাউজ করুন এবং নিম্নলিখিত অপারেশনগুলি প্রত্যাশা অনুযায়ী কাজ করে কিনা তা দেখুন:

  • পৃষ্ঠাগুলি দেখা
  • পৃষ্ঠাগুলি সম্পাদনা করা
  • একটি ফাইল আপলোড করা
  • Special:Version -এ যান এবং দেখানো সংস্করণটি সঠিক এবং এক্সটেনশন উপস্থিত রয়েছে তা পরীক্ষা করুন।

পুরানো ইনস্টলেশন থেকে বামফুটগুলি সরান

আপনি যদি সার্ভারের অন্য ফোল্ডারে আপনার পূর্ববর্তী ইনস্টলেশনটি অনুলিপি করেন তবে এটি সরিয়ে ফেলার বিষয়ে নিশ্চিত হন বা এটি ওয়েব থেকে সম্পূর্ণ অ্যাক্সেসযোগ্য করে তুলুন। পুরানো ইনস্টলেশনগুলি ওয়েব থেকে অ্যাক্সেসযোগ্য না রাখা খুব গুরুত্বপূর্ণ, যেহেতু এটি আপগ্রেড করার উদ্দেশ্যটিকে পুরোপুরি পরাভূত করে এবং আপনার সার্ভারকে আক্রমণে উন্মুক্ত করে দেয়।

সচরাচর জিজ্ঞাসিত প্রশ্ন

আপগ্রেড করা কতটা কঠিন?

If the only file you have modified is LocalSettings.php , and you are upgrading from 1.5 or later, the process is very simple. The amount of human work involved is only a few minutes. The database schema changes will take an amount of time proportional to the size of your database — potentially hours for wikis with millions of pages, but for a more typical size of a few thousand pages, it is usually done in seconds.

গৌণ আপগ্রেডগুলি, একই প্রধান সংস্করণের মধ্যে, যেমন 1.37.0 থেকে 1.37.6, কোনও স্কিমা পরিবর্তন করার প্রয়োজন নেই। আপনি কেবল ফাইলগুলি আপডেট করতে পারেন। ডাটাবেসটির কোনও আপডেটের প্রয়োজন নেই, তাই আপডেটের স্ক্রিপ্টটি চালানোর প্রয়োজন নেই।

Upgrading from 1.4 or earlier is potentially complicated because support for character sets other than UTF-8 was dropped, and the schema for storing bulk text changed. Please read the relevant section in the UPGRADE file.

Upgrading becomes difficult if you have modified our source code, and you don't want your changes to be overwritten. Tools such as diff, patch, Meld or WinMerge may be useful. There is also potential for trouble if you are using unmaintained extensions. Upgrade your extensions at the same time as you upgrade MediaWiki.

আপনি যদি ত্বকটি পরিবর্তন করে থাকেন বা একটি কাস্টম ত্বক ব্যবহার করেন তবে আপনাকে খুব সম্ভবত মিডিয়াউইকের নতুন সংস্করণ দিয়ে আবার কাজ করার জন্য এটি সামঞ্জস্য করতে হবে।

Instead of patching your "global" CSS and JS (JavaScript) files every time, you can simply add the code to your MediaWiki:Common.js and MediaWiki:Common.css pages. As these are part of the database which will be reused when you upgrade, you will not have to patch the MediaWiki core files any more.

আমি কীভাবে সত্যিকারের খুব পুরানো সংস্করণ থেকে আপগ্রেড করব? এক ধাপে, নাকি বেশ কয়েকটি পদক্ষেপে?

It depends: If you are upgrading from MediaWiki 1.4 or older, you should upgrade to MediaWiki 1.5 first. 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 the settings page for enwiki and some related notes at Wikitech. You may need to upgrade to MediaWiki 1.4 before running the upgrade1.5 script. If you want to make a database dump (e.g. MySQL) of your Latin-1 wiki, make sure the type of the old_text field in the text table is mediumblob, not mediumtext, to avoid character encoding issues.

যদি আপনি মিডিয়াউইকি 1.5 বা নতুন থেকে আপগ্রেড করেন তবে আপনি আপনার পুরানো সংস্করণ থেকে সর্বশেষ স্থিতিশীল সংস্করণে এক ধাপে আপগ্রেড করতে পারেন। বেশিরভাগ প্রতিবেদনগুলির পাশাপাশি অটোমেটেড পরীক্ষাগুলি ইঙ্গিত দেয় যে এটি এক ধাপে করা ঠিক কাজ করে। আপনার যদি এটি বিশ্বাস করতে সমস্যা হয় তবে এই মেইলিং তালিকা পোস্ট পড়ুন। তবে, দয়া করে নোট করুন যে আপনি যখন পুরানো সংস্করণগুলি থেকে আপডেট করেন, PHP ত্রুটিগুলির মুখোমুখি হওয়ার সম্ভাবনাগুলি আপনি নতুন সংস্করণে সরাসরি আগের সংস্করণ থেকে আপগ্রেড করার চেয়ে বড় হয়ে যায়। আপনি এই ত্রুটিগুলি যেভাবেই পেয়েছেন, যদি আপনি সংস্করণগুলি এড়িয়ে না থাকেন তবে ত্রুটিগুলি প্রতিটি পৃথক আপডেটের সাথে যুক্ত হত। কেবলমাত্র আপনি - যখন আপনি সংস্করণগুলি এড়িয়ে গেছেন - সেগুলি একই সাথে পাবেন। এটি আপগ্রেডকে আরও কঠিন করে তুলবে, তবে ভুলে যাবেন না যে আপনি মধ্যবর্তী সংস্করণগুলিতে আপডেট করতে সমস্যা হয়নি, যা আপনি এড়িয়ে গেছেন!

If you are upgrading to MediaWiki 1.36 or later, only upgrades from the last two LTS releases will be supported (phab:T259771). This will mean that for very old versions, that you first upgrade to MediaWiki 1.35 and then upgrade to 1.36.

আমার কি প্রথমে ব্যাক আপ নেওয়া উচিত?

সংক্ষিপ্ত উত্তর: হ্যাঁ।

দীর্ঘ উত্তর: এটি এর উপর নির্ভর করে ক) আপনি আপনার ডেটাটিকে কতটা মূল্য দেন, খ) একটি ব্যাকআপ তৈরি করা কতটা কঠিন এবং গ) আপনি MySQL রক্ষণাবেক্ষণ এবং প্রশাসনের সাথে কতটা আত্মবিশ্বাসী।

একটি আপগ্রেড ব্যর্থতা দুটি সংস্করণের মধ্যে আপনার ডেটাবেসকে অসঙ্গতিপূর্ণ অবস্থায় ফেলে রাখতে পারে। আপনার ডাটাবেসটিকে আংশিক আপগ্রেড রেখে আপগ্রেড করার সময় কোনও PHP বা MySQL ত্রুটি ঘটতে পারে। এ জাতীয় পরিস্থিতিতে অনেকটা ম্যানুয়াল কাজ করে কোনওভাবে এই সমস্যাটি সমাধান করা সম্ভব। যাই হোক, update.php চালু হওয়ার আগে থেকেই কেবল একটি ডাটাবেস ব্যাকআপ রাখা এবং এটি চালিয়ে যাওয়া সহজতর উপায় হয়ে উঠবে। অন্যথায় আপনার কাছে ঘন্টার পর ঘন্টার - অযথা - কাজ থাকতে পারে।

পুনরুদ্ধার প্রায়শই জটিল। সমর্থন ফোরামগুলিতে স্বেচ্ছাসেবীরা আপনি যদি ব্যাকআপ তৈরি করতে অবহেলা করেন এবং তারপরে আপগ্রেড-সম্পর্কিত দুর্নীতি থেকে পুনরুদ্ধার করতে সাহায্যের প্রয়োজন হয় তবে তা মুগ্ধ হওয়ার সম্ভাবনা নেই। আরও ভাল ফলাফল হল যদি আপনি আপনার ব্যাকআপটিতে ফিরে যেতে পারেন, এবং তারপরে সম্পর্কিত মিডিয়াউইকি প্রকল্পের বিরুদ্ধে ত্রুটিটি প্রতিবেদন করুন আপগ্রেড প্রক্রিয়াতে যা দুর্নীতির কারণ হয়েছিল।

আমি কি আমার LocalSettings.php রাখতে পারি?

Yes, but you may have to make some minor changes. The format of LocalSettings.php is largely backward compatible. Changes which break LocalSettings.php compatibility will be documented in the "configuration changes" section of the release notes.

আমার উইকি আপগ্রেড করার সময় কী অনলাইন থাকতে পারে?

সাধারণত হ্যাঁ, তবে গিট সাময়িকভাবে (কয়েক সেকেন্ডের জন্য) এটি ভেঙে দিতে পারে।

আপনি যদি মিডিয়াউইকির ক্ষুদ্র প্রকাশের মধ্যে আপগ্রেড করছেন তবে আপনাকে যা করতে হবে তা হল উত্স ফাইলগুলি আপডেট করা।

দ্রষ্টব্য: নিম্নলিখিতটি অনুমান করে আপনার কমান্ড লাইনের অ্যাক্সেস রয়েছে। আপনি যদি মিডিয়াউইকির প্রধান প্রকাশের মধ্যে আপগ্রেড করছেন তবে পছন্দসই পদ্ধতিটি নীচে রয়েছে:

  1. মিডিয়াউইকির নতুন সংস্করণটিকে একটি নতুন ডিরেক্টরিতে আনপ্যাক করুন
  1. Prepare that new directory: copy your current LocalSettings.php from the old directory, copy any installed extensions and custom skins (if any). Check $wgLogo and $wgLogos settings in LocalSettings.php and if necessary copy logo file from the old directory to the new directory.
  1. নতুন সংস্করণটির জন্য প্রকাশিত নোটগুলিতে দেখুন LocalSettings.php-তে কোনও পরিবর্তন করা দরকার কিনা।
  2. 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.38.4';
  3. নতুন ডিরেক্টরিতে আপডেট স্ক্রিপ্ট বা ওয়েব আপডেটার চালান।
  4. পুরানো ডিরেক্টরি থেকে নতুন ডিরেক্টরিতে চিত্র উপ-ডিরেক্টরি থেকে চিত্রগুলি অনুলিপি করুন।
  5. পুরানো ডিরেক্টরি এবং নতুন ডিরেক্টরি অদলবদল করুন। (This will make the database writable again, because $wgReadOnly was only set in the old directory's LocalSettings.php.)

কেন আপগ্রেড করবেন?

নতুন রিলিজ সম্পর্কে অবহিত হওয়ার জন্য সাবস্ক্রাইব করুন mediawiki-announce-এ।

Recent releases receive security fixes to keep your wiki and your host safe from vandals, while old releases don't (see সংস্করণ জীবনচক্র ). That makes dozens good reasons to upgrade!

New major releases come with new features, which you might want to use: see the release notes for details. In case you need additional arguments to convince your bosses to let you upgrade from a pretty old version, here is a summary:

  • If you have appropriate caching, since 1.17 ResourceLoader optimizes pageload speeds a lot.
  • Since 1.18 and 1.19 , users of all languages and genders are correctly addressed by the interface and logs (before 1.15, no gender at all).
  • In 1.19 the skinning system was reworked, making it easier to reuse parts of existing skins in your own skins.
  • In 1.21 and 1.23, email notifications become clearer and more predictable, making your wiki more effective.
  • Since 1.22, vandal fighting (patrolling) is less time-consuming.
  • In 1.24, password storage was improved to allow for better security.
  • In 1.27, the session management was reworked as well as the user authentication management completely modernized.

InstantCommons no longer requires local files.

  • Since 1.28 , the cache for rendered HTML of article pages improved.
  • Since 1.29 , the Action API was reworked and improved. Also, user group assignments may now be done for a selectable period.

Allow to block range of IPs.

  • Since 1.30 , the blocked users cannot change their email.

Added ability to search for contributions within an IP ranges at Special:Contributions.

The Skin:Timeless was introduced. Add default edit rate limit of 90 edits/minute for all users.

  • Since 1.32 , MediaWiki supports over 350 languages.
  • Since 1.33 , MediaWiki supports "partial blocks", where IPs and accounts can be restricted from editing particular pages or namespaces.

The "watch" feature can be enhanced with expiry dates.

Also, in MediaWiki 1.18 we started bundling some vital extensions, like a better editor and anti-vandalism tools ConfirmEdit and Nuke; more have been added in later releases.

আরো দেখুন