Решение проблем при миграции с Joomla 2.5.28 на Joomla 3.4 и выше

в 11:59, , рубрики: Joomla, joomla 2.5, joomla 3.0, joomla cms, manual update, Migration, update

Очень часто на 80-х процентах обновления возникает ошибка:


1091 Can't DROP 'usertype'; check that column/key exists SQL=ALTER TABLE xxx_users DROP KEY usertype;

После данной ошибки при переходах по административной части CMS возникает ошибка:


Notice: Undefined property: InstallerController::$input in ...administratorcomponentscom_installercontroller.php on line 37 Fatal error: Call to a member function get() on a non-object in ...administratorcomponentscom_installercontroller.php on line 37

Даже при таких ошибках обновить ядро можно.

1. Обновить систему до версии 2.5.28 и выполнить все действия согласно инструкции по миграции до непосредственного обновления на версию 3

2. Удалить папку «updates» из .../administrator/components/com_admin/sql/

3. Обновить Joomla до версии 3 стандартным средством (Components — Update Joomla). В конце обновления вы получите пустую белую страницу или страницу с ошибками выполнения SQL запросов.

4. Создать в базе данных таблицу следующим запросом (#_ — необходимо заменить на префикс ваших таблиц):

CREATE TABLE IF NOT EXISTS #__content_types (
  type_id int(10) unsigned NOT NULL AUTO_INCREMENT,
  type_title varchar(255) NOT NULL DEFAULT '',
  type_alias varchar(255) NOT NULL DEFAULT '',
  `table` varchar(255) NOT NULL DEFAULT '',
  rules text NOT NULL,
  field_mappings text NOT NULL,
  router varchar(255) NOT NULL DEFAULT '',
  content_history_options varchar(5120) COMMENT 'JSON string for com_contenthistory options',
  PRIMARY KEY (type_id),
  KEY idx_alias (type_alias)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=10000;

5. Зайдите на страницу: имя_сайта/administrator/index.php?option=com_installer&task=database.fix и решите все проблемы с базой данных (нажать кнопку Fix).

6. Зайдите на страницу: имя_сайта/administrator/index.php?option=com_installer&view=discover&task=discover.refresh и обновите все расширения, которіе будут в списке.

Система должна работать. Сделайте резервную копию, после чего обновите все сторонние расширения.

Таким образом были обновлены уже 2 сайта. Все прошло успешно.

Автор: YegorKaliberda

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js