View source for Обновление

Имеется также ((/Doc/Deutsch/Upgrade Deutsch)), ((/Doc/English/Upgrade English)), ((/Doc/Français/MiseAJour Français))

Обновите WackoWiki с **!!(green)5.5.x!!** до **!!(green)6.0.x!!**.

{{toc numerate=1}}

См. также руководство по миграции ((/Doc/Русский/НаследиеОбновление WackoWiki версии 5.0.x)).
file:/unicode.svg?right&100
===Подготовка===
  1. Проверьте ((/Dev/Release/R6.0/ReleaseNotes информацию о релизе)) на предмет соответствия сервера системным требованиям.
  1. **Выполните резервное копирование данных:**.
    1. сохраните **базу данных wiki** (например, через phpMyAdmin или модуль резервного копирования) в ((/Doc/Русский/АдминПанель Панели администратора))),
    2. сохраните **папку wiki**.

%%(info type="important")
**ВАЖНО**
Выполните резервное копирование данных! Прежде чем что-либо делать, создайте резервную копию существующей базы данных и файлов. Также убедитесь, что во время миграции никто не использует базу данных, так как это может привести к потере данных.
  2. Очень важно, чтобы вы сделали резервную копию своей базы данных WackoWiki перед обновлением.
  3. Процедура обновления переносит данные экземпляра установки со старой версии на новую. Миграция с новой версии на старую не поддерживается.
%%

===Процедуры перед обновлением до R6.0==
Пропустите этот раздел, если вы не обновляете с R5.5.
%%(info type="warning")
Убедитесь, что вы запустили последнюю версию **((/Dev/Release/R5.5/ReleaseNotes R5.5.17))** ветки R5.5, обновление с более ранних версий не поддерживается. **!!Перед!!** обновлением до **!!(green)R6.0.x!!** выполните следующие действия в WackoWiki **!!(green)R5.5.17!!**.
%%

====Преобразование таблиц базы данных из MyISAM в InnoDB====
Если у вса используются таблицы MyISAM, вам нужно преобразовать их в InnoDB следующим способом: 
  * Admin Panel -> Database -> Convert

====Преобразование базы данных в UTF-8===
file:/utf8_conversion_script_1.png?right&400&caption
Первая часть процедур должна быть выполнена **до** перехода на R6.0.x.
  * **((/Dev/Release/R6.0/Upgrade/DatabaseConversion/ru Преобразование базы данных в UTF-8))**

===Обновление файлов===
  1. ((/Download Скачайте wacko.6.0.x.zip))
  2. Распакуйте архив
  3. Удалите на серере **все** папки и файлы, относящиеся к вашей текущей установке WackoWiki, **за исключением ** 
    * ##config/config.php##
    * ##file/## (переименуйте существующую папку ##files## в ##file##)
  4. Скопируйте новые файлы wacko.6.0.x в папку вашей установки WackoWiki на сервере
  5. Удалите файл кэша в разделе ##cache/config/config.php##.
  6. ((/Doc/English/FilePermissions Проверьте разрешения))

Если в старой версии WackoWiki вы создавали новые темы, действия (экшены), обработчики (хендлеры) или форматтеры, то вам придется восстановить их из созданной на начальном этапе резервной копии. Проверить их совместимость и исправить при необходимости.

===Инсталляция===
file:/wackowiki_r6_ru_upgrade_1.png?right&400&caption

Откройте URL-адрес вашей WackoWiki в веб-браузере. Программа установки запустит и сообщит вам (ВАЖНО), что вы **обновляетесь** с **!!(green)5.5.x!!** до **!!(green)6.0.x!!**
  * пройдите все этапы
  * **Конфигурация базы данных**: Если программа установки запросит у вас кодовую страницу, выберите соответствующий набор символов.
    * utf8mb4 Unicode
  * ((/Doc/Русский/Обновление/Скриншоты Снимки экрана из процедуры обновления))

===После обновления===

====Конфигурация====
Если вы установили пользовательские значения в ##constant.php##, ##router.conf##, ##csp_custom.conf## или где-то еще, вы должны установить эти значения снова. Для этого можно сравнить новые файлы со старыми.

====Ресинхронизация данных====
После успешного обновления вы можете выполнить ресинхронизацию всех внутренних ссылок для обновления записей таблицы ##page_link## и ##file_link##.
  * Admin Panel -> Synchronizing data -> Wiki-links

file:/ap_rerender_links_en.png?right&400&caption
Вы можете изменить настройки ресинхронизации, чтобы избежать таймаутов или исчерпания доступного объема памяти. Это особенно интересно для виртуального хостинга или серверов, которыми вы не управляете. Без этого сервер завершает работу скрипта без предварительного уведомления. 

Если ресинхронизация не удается, просто уменьшите количество страниц, которые обрабатываются за один шаг. Лимит перенаправлений установлен на 10. Если вы достигнете лимита перенаправлений, скрипт выдаст вам ссылку **Next »**, по которой вы должны кликнуть, чтобы обработать следующие партии страниц. Кроме того, избегайте возможных таймаутов сессии во время работы скрипта.

====Особенности преобразования Юникод====
Пропустите этот раздел, если вы не обновляете с R5.5.

Переход на **Юникод** - это процесс. Он может потребовать ручной настройки в течение более длительного периода времени. Ниже мы поделимся нашим опытом, результатами и возможными решениями.

=====Замена старых транслитерированных ссылок и ссылок с надписями=====
Перед выполнением любой команды SQL UPDATE создайте резервную копию заранее. Одна ошибка - и вы можете потерять все данные.
%%(sql)UPDATE prefix_page SET body = REPLACE(body, '/Doc/Русский/Obnovlenie', '/Doc/Русский/Обновление');%%

Возможные случаи
  1. %% ((!/el ÅëëçíéêÜ @@el)) -> ((!/el Ελληνικά))%%
  2. %% ((/Doc/Русский/Obnovlenie ru)) -> ((/Doc/Русский/Обновление ru))%%
  3. %%file:/forum/discussion/ifmodifiedsinceheaderdoesnotworks/403_network_analysis.png
 -> 
file:/Forum/Discussion/If-Modified-SinceHeaderDoesNotWorks/403_network_analysis.png %% 

%%(info type="note"  title="Примечание")
Кроме того, обратите внимание на разорванные внутренние или входящие ссылки. ##tag## страницы теперь имеет **((/Dev/Release/R6.0/BinaryTag акцент и регистр))**, то, что раньше работало с супертегом, теперь может привести к 404er.
%%
Возвращает назад ##body_r##, поэтому парсер переотправляет страницы с измененным содержимым.
%%(sql)UPDATE prefix_page SET body_r = '';%%

===Notes===
  1. {{comment text="Оставьте комментарий здесь"}}, если что-то неясно или у вас есть дополнительные вопросы.
  2. Не стесняйтесь улучшать эту инструкцию и формулировку.