Russian TYPO3 community

Russian TYPO3 community (http://forum.typo3.ru/index.php)
-   Общие вопросы (http://forum.typo3.ru/forumdisplay.php?f=12)
-   -   Ошибка TemplaVoila после переноса базы данных (http://forum.typo3.ru/showthread.php?t=8527)

dodger 25.04.2010 12:05

Ошибка TemplaVoila после переноса базы данных
 
Здравстуйте!

C TYPO3 никогда не сталкивался. Но пришлось, и пришлось именно с проблемы. Посему обращаюсь к Вам, уважаемые! Помогите пожалуйста разобраться.

Стоял сайт на TYPO3, с базой данных на этом же FreeBSD-сервере (в джаиле 127.0.0.3), работал нормально. Но мне пришлось как администратору вынести базу данных на отдельный сервер (чтобы разгрузить хостинг от СУБД). Сам сайт я не админю, только сервер.

Сделал дамп:
Код:

mysqldump --add-drop-table --extended-insert --no-create-db --add-locks -r ~dodger/dbname_mysql_dump.sql -u root -h 127.0.0.3 -p dbname
Перенес дамп на отдельный сервер, сделал базу:
Код:

create database `dbname` character set 'cp1251' collate 'cp1251_general_ci';
grant all privileges on `dbname`.* to 'dbuser'@'hosting_ip' identified by 'password';
flush privileges;
use dbname;
source ~dodger/dbname_mysql_dump.sql

Дамп загрузился без ошибок и warning-ов. Меняю в typo3conf/localconf.php переменную $typo_db_host на доменный адрес нового СУБД-сервера (остальные параметры не менялись - имя базы, имя юзера, пароль). И сайт теперь отказывается работать с ошибкой:
Код:

TemplaVoila ERROR:
Couldn't find a Data Structure set for table/row "pages:1".
Please select a Data Structure and Template Object first.

Почему?

void 25.04.2010 14:39

Бекенд работает? Вообще подозрительно, что у вас кодировка 1251. Раньше была такая же?

dodger 25.04.2010 14:51

Не совсем понял, бэкэнд - это что?
СУБД работает, если выключить - ругается по другому.
А базы у нас на хостинге все cp1251, но владелец сайта может выставить самостоятельно. Как это проверить по содержимому dump-файла?

Вот куски дамп файла:
Код:

/*!40101 SET NAMES utf8 */;
....
DROP TABLE IF EXISTS `be_groups`;
SET @saved_cs_client    = @@character_set_client;
SET character_set_client = utf8;
CREATE TABLE `be_groups` (
  `uid` int(11) unsigned NOT NULL AUTO_INCREMENT,
....
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=cp1251;
SET character_set_client = @saved_cs_client;

--
-- Dumping data for table `be_groups`
--

LOCK TABLES `be_groups` WRITE;
/*!40000 ALTER TABLE `be_groups` DISABLE KEYS */;
INSERT INTO `be_groups` VALUES (1,0,1238150599,'п| б| п| б╣п| р~Qп| б╟п| я~Tп║Б~@~Zп| я~Uп║п~Bп║Б~@╧','pages:doktype,pages:TSconfig,pages: ..............

Вот это вот поле после timestamp с кириллицей я ничем интерпретировать не могу - зюки всегда получаются. Неужели такая ошибка может быть из-за кодировки?

-=UncleByte=- 25.04.2010 15:22

Ну так в начале дампа явно указано
Цитата:

SET character_set_client = utf8;
Вообще говоря сайты на TYPO3 сделанные в 1251 редкость.

dodger 25.04.2010 15:48

Удалил базу, пересоздал заново с кодировкой utf8. Залил в нее бэкап mysqlhotcopy. Некоторые таблицы были в InnoDB, поэтому mysqlcheck -u root -p -B dbname сругался на отсутствующие таблицы. Убрал DROP TABLES из дампа базы, и залил его поверх. Ругани было валом, не успевал читать.

Вот с такими ошибкам, но каким-то чудом работает:
Код:

Error    : Table 'dbname.cache_hash' doesn't exist
Error    : Table 'dbname.cache_imagesizes' doesn't exist
Error    : Table 'dbname.cache_md5params' doesn't exist
Error    : Table 'dbname.cache_pages' doesn't exist
Error    : Table 'dbname.cache_pagesection' doesn't exist
Error    : Table 'dbname.cache_typo3temp_log' doesn't exist
Error    : Table 'dbname.fe_session_data' doesn't exist
Error    : Table 'dbname.fe_sessions' doesn't exist
Error    : Table 'dbname.index_fulltext' doesn't exist
Error    : Table 'dbname.index_grlist' doesn't exist
Error    : Table 'dbname.index_phash' doesn't exist
Error    : Table 'dbname.index_rel' doesn't exist
Error    : Table 'dbname.index_section' doesn't exist
Error    : Table 'dbname.index_stat_search' doesn't exist
Error    : Table 'dbname.index_stat_word' doesn't exist
Error    : Table 'dbname.index_words' doesn't exist
Error    : Table 'dbname.sys_log' doesn't exist
Error    : Table 'dbname.tx_realurl_chashcache' doesn't exist
Error    : Table 'dbname.tx_realurl_pathcache' doesn't exist
Error    : Table 'dbname.tx_realurl_urldecodecache' doesn't exist
Error    : Table 'dbname.tx_realurl_urlencodecache' doesn't exist

ЗЫ: Спасибо участнику void - по его подписи зашел в FAQ и прочитал, что не надо ставить TYPO3 на базу в кодировке отличной от UTF8.


Часовой пояс GMT +4, время: 03:05.

Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot