Manual:Upgrading/ko



파일 전송
다음 중 파일을 전송할 방법을 선택


 * wget
 * SCP 혹은 WinSCP와 같은 시큐어 카피 이용하기
 * SSH File Transfer Protocol (SFTP)
 * FTP 클라이언트 이용하기
 * 호스팅업체에서 제공하는 각종 파일 전송 방법 이용하기. 자세한 사항은 호스팅 업체에 문의할 것.
 * 기타 다른 방법 List of file transfer protocols에 파일 전송 방법에 대한 목록이 있습니다.

준비단계
를 읽기


 * 1) 요구사항을 확인
 * 2) 배포 통지문을 읽기
 * 3) 기존 파일과 데이터 베이스를 백업
 * 4) 새 파일의 압축을 풀기
 * 5) 확장 프로그램을 업그레이드
 * 6) 업데이트 스크립트를 사용하여 데이터베이스를 확인하시오
 * 7) 업데이트를 시험해 보시오.

요구사항 확인하기
미디어 위키는 다음 사항을 요구합니다.


 * PHP +
 * 아래 중 하나:
 * MySQL + (혹은 이에 상응하는 MariaDB)
 * PostgreSQL +
 * SQLite +
 * Oracle +

PostgreSQL를 사용한다면, 를 읽으시오.

더 자세한 정보를 원한다면, 와 를 읽으시오.

배포 통지문 읽기
배포 tar파일 내에 혹은 Git를 통해 추출된 파일 내에 대문자로 쓰인 다수의 파일명들이 있습니다. 그 중에 (배포 통지문)(wiki)이 있습니다. 파일을 찾았다면 바로 배포 당시 어떤 부분이 바뀌었는지 확인하십시오.

보류된 작업 없애기
수행능력의 이유로 데이터 베이스의 어떤 동작들이 지연되고, 작업 대기 행렬에 의해 관리됩니다. 이 작업들은 데이터베이스에 저장되어 있고, 어떤 액션을 취해야 하는지에 대한 매개 변수를 포함하고 있습니다. 위키를 업데이트하기 전에 이 보류된 작업들을 처리하는 것을 강력히 권장합니다. 그렇지 않으면 새 버전에서 이 작업들의 매개 변수의 세목이 바뀌어, 작업을 더 이상 할 수 없게 될 수 있기 때문입니다. 업그레이드 수행 전에 모든 보류된 작업을 처리하여 대기행렬을 비우기 위하여 를 이용합니다.

이전 파일과 데이터 베이스 백업하기

 * 지시사항 일체는 을 참고하시오

비록 업그레이드 스크립트는 잘 관리되고 안정적이지만, 항상 문제는 발생할 수 있습니다. 데이터베이스 스키마를 업데이트를 진행하기 앞서, 데이터 베이스를 포함하여 위키의 전체 파일을 백업하십시오.


 * 데이터 베이스를 포함한 위키의 내용 (문자 세트가 정확히 지정되었는지를 확실히 하기 위해 LocalSettings.php를 확인하십시오.). SQL 데이터베이스 덤프와 더불어 XML 덤프를 만드는 것을 추천합니다.
 * MySQL, SQL 덤프와 XML 덤프 둘 다  명령어를 위한 용도입니다.

mysqldump --user=wikidb_user --password=wikidb_userpassword wikidb > file.sql mysqldump --user=wikidb_user --password=wikidb_userpassword wikidb --xml > file.xml
 * PostgreSQL, 데이터베이스 덤프는 를 위한 용도입니다.

pg_dump --create -Fc wikidb > file.db.dump
 * SQLite, 미디어위키 스크립트를 백업 파일을 만드는데 사용합니다.

php wikifolder/maintenance/sqlite.php --backup-to file
 * 이미지와 다른 미디어 파일들 ( 폴더에 있는 내용물들,과 커스텀 로고 /skins/common/images/wiki.png)
 * 구성 파일들. 예를 들어 와 (만약 있다면)
 * 스킨과 확장 프로그램들을 포함한 미디어위키 프로그램 파일들. (별다른 수정을 하지 않았다면 백업하지 않아도 괜찮음).

tarball 패키지를 사용하기
새 파일은 FTP나 명령어를 입력하여 옮길 수 있습니다. 접근 가능하다면 명령어를 입력하십시오! FTP를 이용하여 수천개의 파일을 업로드하는 것도 명령어를 이용하는 것이 훨씬 빠릅니다.

FTP 또는 graphical
만약 서버단에 명렁어를 보낼 수 없는 경우, 7zip등을 사용하여 업로드 하십시요.

파일을 로컬에서 압축해제 한 후 원하는 FTP 클라이언트 소프트웨어를 사용하여 디렉토리와 파일을 서버에 업로드하십시오.

명령어
You may need to run the command as  if you don't have full write permissions to the wiki install directories under your current user. When untarring a tarball package normally a new directory for the new wiki version will be created and you will have to copy the old configuration files and images directory from your old installation directory:

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

(Open)Solaris users should use gtar, or:

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

기타 파일
tarball 을 풀어낸 후에, 예전 설치 디렉토리에서 몇 개의 파일과 폴더를 새로운 곳으로 복사 및 이동시켜야 합니다 :

커스텀 로고도 이동해주세요.
 * , 이전 설정도 가지고 오십시요.
 * 이미지들도 가지고 오십시요.
 * 몇가지의 확장기능들을 가져오십시요. 그 확장기능중에 일부는 업데이트해야할 수도 있습니다.
 * 디렉토리 안의 커스텀 스킨들
 * Any modifications made to the old installation files or extensions.
 * 몇 가지 .htaccess 파일 (if you're using Apache and you've defined any rules in them).

Once done, make this new folder the published folder on the web server, or rename the old installation directory and then rename the new one to match the old name.

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

If you are upgrading to MediaWiki 1.25 or later, you will also need to install some external PHP libraries using Composer or a provided collection maintained for the Wikimedia wiki farm. 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. 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).
 * 2) Download the patch file and gunzip it.
 * 3) Use   to check what will be changed (e.g.,  )
 * 4) If all is well, run patch again without.
 * 5) Check your Special:Version and you should see the new version number in place.

Files remaining that may cause errors
If you unpacked over the old installation directory, some old files can cause problems with the new version.

If you are not using profiling, but have a  file in the MediaWiki root folder, you may receive errors referring to. Deleting, or renaming, the  file will resolve this error. The  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,  ,   and   directly in the   directory as well as the according subfolders inside the   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 for details.

MediaWiki 1.24 changes the paths of core skin files. After upgrading to this version, you should ensure that the old files,  ,   and   directly in the   directory are no longer present. See for details.

확장기능 업그레이드
Certain extensions have been updated in order to work with the new version of MediaWiki. Be sure to upgrade to the latest versions of such extensions. You might need to perform manual updates to custom extensions.

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.

LocalSettings.php 를 적합하게 하기
만약 이전 버전과 같은  를 사용한다면, 새 버전에 맞춰서 조정해야할 필요가 있습니다:

스킨 등록
미디어위키 1.24 이래로, Vector, Monobook, Modern, CologneBlue 같은 번들 스킨들은 더이상 Mediawiki core 의 일부가 아닙니다. 사용하기 위해서는  에 명시적으로 등록되어질 필요가 있습니다. 그렇지 않으면 미디어위키는 스킨이 설치되지 않았음을 경고할 것입니다.

이것은 이들 스킨들 중 유용한 하나를 원하고 1.24보다 오래된 버전으로부터 업그레이드를 할 때에  에 추가할 필요가 있습니다.

위 코드는 미디어위키 1.25 이상에서 이용됩니다. 미디어위키 1.24 에서는 이하의 코드를 이용합니다:

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.

확장기능 등록
미디어위키 1.25 부터는, 확장기능은 새로운 extension registration 시스템을 이용합니다.

이전의  에서는 다음과 같이 포함합니다:

이것은 이렇게 변환해야 합니다:

확장기능들은 새로운 확장기능 등록 시스템을 이용하게끔 조정되어지는 중입니다. 조정되지 않은 확장기능들은 예전 방법을 이용해야 합니다. Refer to the installation instructions on the extension's page for more information.

Other variables
몇 변수들은 쓸모가 없어지거나 심지어 삭제될 수 있습니다. Having them in  usually won't have any effect. 새 변수들은 새로운 버전에서 추가되어질 수 있습니다, 또는 존재하는 몇 변수들은 타입이 변경되어질 수 있습니다. We usually try to use sane defaults for them, and in case of type change, be backwards compatible. 그 변경사항들을 보려면 릴리즈 노트를 보십시오.

업데이트 스크립트 가동하기
You can upgrade the MediaWiki database in two ways: Either from the command line or from the web browser. If you have shell access to your server, upgrading from the command line is recommended, since this reduces the risk of the upgrade process being interrupted by a timeout or connection reset.

스크립트는 또한 미디어위키에 필요하지만 빠진 것을 다운로드 시도할 것입니다.

명령어
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  directory and execute the update script:

$ php update.php On a Linux server if you get an error try performing the same command as root ( sudo php maintenance/update.php ). Note for simple installations on Windows (e.g. with ): First make sure that your web server (such as Apache) and your database (such as MySQL) are running. Then run update.php: right-click it, select Open With, and browse to PHP.exe. The resulting command prompt window will likely autoclose when the schema upgrade completes.

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; he will surely know.

MediaWiki will inspect the existing schema and update it to work with the new code, adding tables and columns as needed.

What to do in case of "ALTER command denied to user" error (or similar)
In case the scripts abort with a message similar to:

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 and  in your  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
Individuals running update.php from the command line may encounter the following error:

 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) 이 명령어를 'whereis php5'에 입력하세요.
 * 2) once you have discerned the location of the php5 path, list the contents of php5/bin directory
 * 3) once you've determined the name of the php executable (either php or php5), type in the entire path to execute update.php

Below is an example:

 $ whereis 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
You may encounter the 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.
 * 2) Add a line as follows:

 register_argc_argv=true


 * 1) Re-run 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) 데이터베이스 업데이트를 하기 전엔 항상 백업부터 하세요.
 * 2) Navigate your webbrowser to  . For example, if your wiki is at , then navigate to.
 * 3) 당신의 언어를 선택하고 계속을 누르세요.
 * 4) The existing installation should be detected. Follow the instructions on the screen to upgrade it. If asked for the "upgrade key", open your  file and look for the key assigned to.

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 webserver 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.

업데이트 검사하기
업데이트가 완료되면, 위키에 접속하여 다음 작업들이 가능한지 확인하시오.
 * 페이지 보기
 * 페이지 편집하기
 * 파일 올리기
 * Special:Version에 가서 버전 숫자가 제대로 나오고, 확장 파일이 존재하는지 확인하기

자주 묻는 질문


업그레이드는 얼마나 어렵나요?
수정한 파일이 뿐이며, 현재 위키의 버전이 1.5 이상이라면, 업그레이드 과정은 매우 간단합니다. 사람이 해야 할 일은 고작 몇 번에 불과합니다. 데이터베이스 스키마 관련 업데이트는 데이터 베이스 크기에 따라 걸리는 시간이 달라집니다. 수백만 페이지가 되는 위키라면 수시간이 걸릴 수도 있습니다. 하지만 몇 천 페이지 정도의 대부분의 위키는 일 분도 안 되어서 완료됩니다.

메이저 버전 내 사소한 업데이트(예를 들어 1.13.0에서 1.13.1로 업데이트 하기) 는 스키마 변경도 필요가 없습니다. 파일만 새 버전으로 덮어쓰기 하면 됩니다. 데이터베이스가 업데이트 될 필요가 없으므로, 인스톨러 스크립트도 작동할 필요가 없습니다.

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  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.

If you have modified the skin or use a custom skin you very likely will have to adjust it to work again with the new version of MediaWiki.
 * Instead of patching your "global" css and js (javascript) files everytime 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 ( needs to be set to true in your for this to work). Next, run update.php, and then set the 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 relevant settings file (warning: huge page!) 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  field in the  table is , not  , to avoid character encoding issues.

만약 "미디어위키 1.5 이후 업그레이드" 라면, 예전버전에서 최근 안정 버전으로 한번에 할 수 있습니다. The vast majority of reports, as well as automated testing, indicate that doing it in one step works just fine. If you have trouble believing this, read this mailing list post. However, please note that when you update from old versions, chances that you will encounter PHP errors are bigger than when you upgrade from the version directly previous to the new version. You would have received these errors anyway, also if you had not skipped versions, but if you had each time done each single update. Only will you - when you skipped versions - get them all at the same time. This will make the upgrade more difficult, but do not forget that you did not have the trouble updating to the intermediate versions, which you skipped!

업데이트 전에 백업을 꼭 해야 하나요?
네(우문현답).

길게 답변하자면, ㄱ)얼마나 데이터를 소중하게 여기는지, ㄴ)얼마나 백업파일을 만드는 것이 어려운지, ㄷ)얼마나 MySQL 유지 및 관리에 자신이 있는지에 달려있습니다.

An upgrade failure may leave your database in an inconsistent state, in between two versions. A PHP or MySQL error might happen during upgrade leaving your database partly upgraded. In such situations it may be possible to somehow fix this problem with much manual work. However, it will be way easier to just put a database backup from before running update.php in place and to continue with that. Otherwise you might have hours of - needless - work.

Recovery is often complex. Volunteers on the support forums are unlikely to be impressed if you neglect to make a backup and then need help to recover from upgrade-related corruption. A better outcome is if you can revert to your backup, and then report the bug against the corresponding MediaWiki project in the upgrade process which caused the corruption.

LocalSettings.php를 그대로 유지할 수 있습니까?
네, 그래도 어떤 마이너 변경은 해야할 수도 있습니다. The format of is largely backwards compatible. Changes which break LocalSettings.php compatibility will be documented in the "configuration changes" section of the release notes.

업데이트 중에 위키에 접속가능 한가요?
일반적으로 가능합니다. 다만 Git이 (수초간) 임시적으로 연결을 끊을 수 있습니다.

미디어위키의 마이너 버전 상에 업그레이드를 할 경우는, 소스 파일만 새 버전으로 교체하면 됩니다.

Note: the following assumes you have command line access. If you are upgrading between major releases of MediaWiki, the preferred procedure is as follows:
 * 1) Unpack the new version of MediaWiki into a new directory
 * 2) Prepare that new directory: copy your current LocalSettings.php from the old directory, copy any installed extensions and custom skins (if any). Check  setting in LocalSettings.php and if necessary copy logo file from the old directory to the new directory.
 * 3) In the release notes for the new version, see if any changes need to be made to LocalSettings.php.
 * 4) Place the database in read-only mode by inserting the following variable into LocalSettings.php in the old directory - users will see this message if they attempt an edit during the upgrade process:
 * 5) * This no longer works since MediaWiki 1.27, which also prevents running the update script. A workaround for versions since MediaWiki 1.27 can be found in . See also.
 * 6) Run the update script or the web updater in the new directory.
 * 7) Copy the images from the images sub-directory from the old directory to the new directory.
 * 8) Swap the old directory and the new directory.

업그레이드는 왜 할까요?

 * 새 배포 소식을 받아보려면 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:


 * Since 1.5, edits can be previewed before saving also as diff.
 * Since 1.9, an undo button is available.
 * Since 1.12, patrolling on Special:NewPages is much easier.
 * Since 1.13, you can rename (move) files.
 * Since 1.14, you can fix double redirects automatically.
 * Since 1.16, is available.
 * If you have appropriate caching, since 1.17 optimizes pageload speeds a lot.
 * Since 1.17, category sorting makes sense! (especially for non-English letters); extended to 68 languages after.
 * Since and, users of all languages and genders are correctly addressed by the interface and logs (before 1.15, no gender at all).
 * In the skinning system was reworked making it easier to reuse parts of existing skins in your own skins.
 * Since 1.20, diffs are more readable.
 * 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.


 * Since 1.25, enhanced recent changes are available


 * In 1.26, the "ResourceLoader" mechanism was improved


 * In 1.27, the session management was reworked as well as the user authentication management completely modernized.


 * Since 1.29, the Action API was reworked and improved. Also user group assignments may now be done for a selectable period.

See also the list of the most voted fixed issues on up to 2014.

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. 

같이 보기

 * Greg Sabino Mullane's Blog post provides some more detail about point release upgrades.
 * Project:Support desk if you need help or something went wrong
 * (백업이 성공적이지 않은 경우)
 * (백업이 성공적이지 않은 경우)
 * (백업이 성공적이지 않은 경우)
 * (백업이 성공적이지 않은 경우)
 * (백업이 성공적이지 않은 경우)