Обновление Drupal 5.10 до Drupal 6.4

Главные вкладки

Аватар пользователя wiw wiw 11 сентября 2008 в 5:34

Решил в качестве теста обновить свой сайт до 6,4 версии с 5,10.
Разумеется выполнял все эксперименты на localhost, сделал бэкап БД и всего сайта.
Обновление начал как рекомендовано в файле Upgrade.txt
-Отключил все модули кроме тех которые относятся к ядру.
-Переставил тему оформления на Garland
-старый сайт полностью удалил, и скопировал файлы Drupal 6.4
-каталог files скопировал в sites/all
-в sites/all/themes скопировал тему оформления Garland под Drupal6
-в sites/all/modules скопировал все модули под шестую версию
-в sites/default в файле settings.php прописал доступ к базе данных

$db_url = 'mysql://root@localhost/drupal_cell';
$db_prefix = '';

-файлы .htaccess и robots.txt не менял

запускаю /update.php - и вижу белое поле...

Танцы с бубном не помогли. Может вы мне поможете?!

Комментарии

Аватар пользователя wiw wiw 11 сентября 2008 в 17:35

Все было тривиально, сначала в файле settings.php не разрешил доступ к update.php
а после этого восстановил случайно БД с включёнными модулями
Поэтому обновление и не проходило

Аватар пользователя wiw wiw 11 сентября 2008 в 17:53

Но всё равно обновление проходит с ошибками так что это приводит позже к тому что рушится БД при включении некоторых модулей.
На "Обзоре" выдаёт такую ошибку

user warning: Table 'cache_block' already exists query: CREATE TABLE cache_block ( `cid` VARCHAR(255) NOT NULL DEFAULT '', `data` LONGBLOB DEFAULT NULL, `expire` INT NOT NULL DEFAULT 0, `created` INT NOT NULL DEFAULT 0, `headers` TEXT DEFAULT NULL, `serialized` SMALLINT NOT NULL DEFAULT 0, PRIMARY KEY (cid), INDEX expire (expire) ) /*!40100 DEFAULT CHARACTER SET UTF8 */ in z:\home\cellbiol.ru\www\includes\database.inc on line 514.

Во время обновление вылазит следующее:

user warning: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ORDER BY fit DESC LIMIT 0, 1' at line 1 query: SELECT * FROM menu_router WHERE path IN () ORDER BY fit DESC LIMIT 0, 1 in z:\home\cellbiol.ru\www\includes\menu.inc on line 315.
user warning: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ORDER BY fit DESC LIMIT 0, 1' at line 1 query: SELECT * FROM menu_router WHERE path IN () ORDER BY fit DESC LIMIT 0, 1 in z:\home\cellbiol.ru\www\includes\menu.inc on line 315.
user warning: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ORDER BY fit DESC LIMIT 0, 1' at line 1 query: SELECT * FROM menu_router WHERE path IN () ORDER BY fit DESC LIMIT 0, 1 in z:\home\cellbiol.ru\www\includes\menu.inc on line 315.

В частности при включении модуля Google CSE - сайт уходит в белый экран.

Аватар пользователя xseed xseed 25 сентября 2008 в 21:39
user warning: Table 'cache_block' already exists query: CREATE TABLE cache_block ( `cid` VARCHAR(255) NOT NULL DEFAULT '', `data` LONGBLOB DEFAULT NULL, `expire` INT NOT NULL DEFAULT 0, `created` INT NOT NULL DEFAULT 0, `headers` TEXT DEFAULT NULL, `serialized` SMALLINT NOT NULL DEFAULT 0, PRIMARY KEY (cid), INDEX expire (expire) ) /*!40100 DEFAULT CHARACTER SET UTF8 */ in z:\home\cellbiol.ru\www\includes\database.inc on line 514.

У меня кстати такая же фигня. Может давайте у Axel'я спросим, как он с 5-ки обновлялся - пусть пожалуйста он подробно раскажет нам, как происходило обновление, какие косяки и подводные камни ждут неискушенного user'а на каждом из этапов? Ведь переехал же как то drupal.ru на 6-ю версию и это нам не хухры-мухры...

Аватар пользователя DCat DCat 8 января 2009 в 15:16

Проблема в использовании в 5 модуля block_cache. Исправляется командами MySQL

DROP TABLE IF EXISTS `cache_block`;
CREATE TABLE `cache_block` (
  `cid` varchar(255) NOT NULL default '',
  `data` longblob,
  `expire` int(11) NOT NULL default '0',
  `created` int(11) NOT NULL default '0',
  `headers` text,
  `serialized` smallint(6) NOT NULL default '0',
  PRIMARY KEY  (`cid`),
  KEY `expire` (`expire`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
Аватар пользователя Shevskay Shevskay 10 июля 2009 в 17:33

Спасибо, большое ) , DCat помогло и для cache_block
и для cache с соответствующей поправкой:

DROP TABLE IF EXISTS `cache`;
CREATE TABLE `cache` (
`cid` varchar(255) NOT NULL default '',
`data` longblob,
`expire` int(11) NOT NULL default '0',
`created` int(11) NOT NULL default '0',
`headers` text,
`serialized` smallint(6) NOT NULL default '0',
PRIMARY KEY (`cid`),
KEY `expire` (`expire`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;