Tr1gger 0 Опубликовано: 11 января 2013 Рассказать Опубликовано: 11 января 2013 При обновлении с версии 7.5. до последней произошел какой-то глюк с dle_post_extras, она не создалась. Что теперь делать? http://www.esoul.ru/Films/1149574750-solovej-razbojnik-2012-bluray-bd-remux-bdrip.html Цитата Ссылка на сообщение Поделиться на других сайтах
Sahro 12 Опубликовано: 11 января 2013 Рассказать Опубликовано: 11 января 2013 (изменено) Создайте вручную запросом в базе MySQL через PhpMyAdmin CREATE TABLE IF NOT EXISTS `dle_post_extras` ( `eid` int(11) NOT NULL AUTO_INCREMENT, `news_id` int(11) NOT NULL DEFAULT '0', `news_read` mediumint(8) NOT NULL DEFAULT '0', `allow_rate` tinyint(1) NOT NULL DEFAULT '1', `rating` mediumint(8) NOT NULL DEFAULT '0', `vote_num` mediumint(8) NOT NULL DEFAULT '0', `votes` tinyint(1) NOT NULL DEFAULT '0', `view_edit` tinyint(1) NOT NULL DEFAULT '0', `disable_index` tinyint(1) NOT NULL DEFAULT '0', `related_ids` varchar(255) NOT NULL DEFAULT '', `access` varchar(150) NOT NULL DEFAULT '', `editdate` int(11) NOT NULL DEFAULT '0', `editor` varchar(40) NOT NULL DEFAULT '', `reason` varchar(255) NOT NULL DEFAULT '', `user_id` int(11) NOT NULL DEFAULT '0', PRIMARY KEY (`eid`), KEY `news_id` (`news_id`), KEY `user_id` (`user_id`) ) Изменено 11 января 2013 пользователем Sahro Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 072 Опубликовано: 12 января 2013 Рассказать Опубликовано: 12 января 2013 Создайте вручную запросом в базе MySQL через PhpMyAdmin Неправильный совет. Что теперь делать? Полностью удалить БД, восстановить БД от версии 7.5 и начинать процедуру обновления повторно http://dle-news.ru/faq.html необходимо поставить в файле engine/data/config.php версию скрипта, к которой принадлежит ваша восстановленная база данных и запустить скрипт обновления upgrade/index.php Цитата Ссылка на сообщение Поделиться на других сайтах
Tr1gger 0 Опубликовано: 12 января 2013 Рассказать Опубликовано: 12 января 2013 Автор Запустил все заново. Не выполняется запрос: INSERT INTO `dle_post_extras` (`news_id`, `news_read`, `allow_rate`, `rating`, `vote_num`, `votes`, `view_edit`, `access`, `editdate`, `editor`, `reason`, `user_id`) SELECT `id`, `news_read`, `allow_rate`, `rating`, `vote_num`, `votes`, `view_edit`, `access`, `editdate`, `editor`, `reason`, `user_id` FROM `dle_post` LEFT JOIN dle_users ON (dle_post.autor=dle_users.name) Причина: #1054 - Unknown column 'news_read' in 'field list' Что делать, подскажите пожалуста? Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 072 Опубликовано: 12 января 2013 Рассказать Опубликовано: 12 января 2013 Tr1gger, Нужно не просто запустить повторно, а именно все удалить с БД, восстановить БД от 7.5 где поле 'news_read' есть в БД и только потом запустить обновление повторно. А ваша ошибка говорит о том что нет поля 'news_read' что в свою очередь говорить о том что повторное обновление вы запускали не на БД от версии 7.5 Цитата Ссылка на сообщение Поделиться на других сайтах
Tr1gger 0 Опубликовано: 12 января 2013 Рассказать Опубликовано: 12 января 2013 Автор Да, я все именно так и делаю. Проблема начинает возникать так этом шаге: Обновление базы данных с версии 9.0 до версии 9.2 успешно завершено. Всего запланировано запросов: 4 Неудалось выполнить запросов: 1. Возможно они уже выполнены ранее. Нажмите далее для продолжения процессa обновления скрипта Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 072 Опубликовано: 12 января 2013 Рассказать Опубликовано: 12 января 2013 В вашем бекапе БД от версии 7.5 в таблице dle_post есть поле news_read ? Цитата Ссылка на сообщение Поделиться на других сайтах
Tr1gger 0 Опубликовано: 12 января 2013 Рассказать Опубликовано: 12 января 2013 Автор Да, вот даже на этом шаге скриншот: Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 072 Опубликовано: 12 января 2013 Рассказать Опубликовано: 12 января 2013 Проблема начинает возникать так этом шаге: Обновление базы данных с версии 9.0 до версии 9.2 успешно завершено. Всего запланировано запросов: 4 Неудалось выполнить запросов: 1. Возможно они уже выполнены ранее. на этом шаге не создается таблица dle_post_extras и нет запроса INSERT INTO `dle_post_extras` в котором вы написали ошибку. На этом шаге ошибка связано с другим, и не выполняется другой запрос. Если приведете ошибку и запрос, то я вам смогу сказать причины. Цитата Ссылка на сообщение Поделиться на других сайтах
Tr1gger 0 Опубликовано: 12 января 2013 Рассказать Опубликовано: 12 января 2013 Автор Проблема начинает возникать так этом шаге: Обновление базы данных с версии 9.0 до версии 9.2 успешно завершено. Всего запланировано запросов: 4 Неудалось выполнить запросов: 1. Возможно они уже выполнены ранее. на этом шаге не создается таблица dle_post_extras и нет запроса INSERT INTO `dle_post_extras` в котором вы написали ошибку. На этом шаге ошибка связано с другим, и не выполняется другой запрос. Если приведете ошибку и запрос, то я вам смогу сказать причины. Ув. celsoft, dle_post_extras в итоге создается если довести обновление до конца, но она пуста. А по ходу обновления возникают ошибки. Очень хочется разобраться почему они возникают и их исправить. Все осложняется тем, что база 600 мб. 1). На шаге, о котором писал выше с версии 9.0 до версии 9.2, как узнать какой запрос не выполняется? 2). Если нажимать далее, то все приходит вот к этому: /upgrade/index.php?next=step1 Всего запланировано запросов: 3 Неудалось выполнить запросов: 1. Возможно они уже выполнены ранее. Список не выполненных запросов: INSERT INTO `dle_post_extras` (`news_id`, `news_read`, `allow_rate`, `rating`, `vote_num`, `votes`, `view_edit`, `access`, `editdate`, `editor`, `reason`, `user_id`) SELECT `id`, `news_read`, `allow_rate`, `rating`, `vote_num`, `votes`, `view_edit`, `access`, `editdate`, `editor`, `reason`, `user_id` FROM `dle_post` LEFT JOIN dle_users ON (dle_post.autor=dle_users.name) Ошибка: #1366 - Incorrect integer value: '' for column 'editdate' at row 1 Изза чего это может возникать? Я так понимаю из-за того что у меня в таблице dle_post editdate varchar(15), а в таблице dle_post_extras int(11) ? А как так могло получиться? Сразу хочу внести ремарку. Я с Вами с самого начала, когда еще движок был бесплатным, и возможно что какие-то глюки тоже могут тянуться с самого начала. Долгое время сайт просто висел. Сейчас же очень хочется все привести в порядок. Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 072 Опубликовано: 12 января 2013 Рассказать Опубликовано: 12 января 2013 dle_post_extras в итоге создается если довести обновление до конца, но она пуста. А по ходу обновления возникают ошибки. Очень хочется разобраться почему они возникают и их исправить. Все осложняется тем, что база 600 мб. Перед выполнением сложных и долгих запросов, система обновления вам пишет эти запросы, вы можете их выполнить предварительно вручную через SSH доступ, если лимиты сервера на выполнение PHP скриптов не позволяют выполнить данные запросы. Т.е. доходите до шага, где скрипт вам обновления напишет что нужно выполнить сложный запрос, вы этот запрос копируете, выполняете вручную через SSH доступ, и только потом нажимаете на "продолжить" в скрипте обновления. #1366 - Incorrect integer value: '' for column 'editdate' at row 1 Изза чего это может возникать? Я так понимаю из-за того что у меня в таблице dle_post editdate varchar(15), а в таблице dle_post_extras int(11) ? А как так могло получиться? Нет это не из за этого, какие то некорректные значения в этом поле в БД. Установите вручную в БД, 0 для всех значений в данном поле. И повторите выполнение данного запроса. Цитата Ссылка на сообщение Поделиться на других сайтах
Tr1gger 0 Опубликовано: 12 января 2013 Рассказать Опубликовано: 12 января 2013 Автор dle_post_extras в итоге создается если довести обновление до конца, но она пуста. А по ходу обновления возникают ошибки. Очень хочется разобраться почему они возникают и их исправить. Все осложняется тем, что база 600 мб. Перед выполнением сложных и долгих запросов, система обновления вам пишет эти запросы, вы можете их выполнить предварительно вручную через SSH доступ, если лимиты сервера на выполнение PHP скриптов не позволяют выполнить данные запросы. Т.е. доходите до шага, где скрипт вам обновления напишет что нужно выполнить сложный запрос, вы этот запрос копируете, выполняете вручную через SSH доступ, и только потом нажимаете на "продолжить" в скрипте обновления. #1366 - Incorrect integer value: '' for column 'editdate' at row 1 Изза чего это может возникать? Я так понимаю из-за того что у меня в таблице dle_post editdate varchar(15), а в таблице dle_post_extras int(11) ? А как так могло получиться? Нет это не из за этого, какие то некорректные значения в этом поле в БД. Установите вручную в БД, 0 для всех значений в данном поле. И повторите выполнение данного запроса. Все обновления делаю на локальном компьютере. Все сложные запросы контролирую. Однако на шаге с версии 9.0 до версии 9.2 скрипт не показывает какой запрос не выполнился. Говорит только, что он был. Закрыть на это глаза? Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 072 Опубликовано: 13 января 2013 Рассказать Опубликовано: 13 января 2013 Однако на шаге с версии 9.0 до версии 9.2 скрипт не показывает какой запрос не выполнился. Говорит только, что он был. Закрыть на это глаза? Запросы показываются только с недавних пор. Раньше этого просто не было. Если у вас на сайте нет проблем, вы не видите никаких ошибок, то в принципе можете ничего не делать. Цитата Ссылка на сообщение Поделиться на других сайтах
Tr1gger 0 Опубликовано: 14 января 2013 Рассказать Опубликовано: 14 января 2013 Автор Однако на шаге с версии 9.0 до версии 9.2 скрипт не показывает какой запрос не выполнился. Говорит только, что он был. Закрыть на это глаза? Запросы показываются только с недавних пор. Раньше этого просто не было. Если у вас на сайте нет проблем, вы не видите никаких ошибок, то в принципе можете ничего не делать. Ув. celsoft, Вы же понимаете, что найти проблему, если там не создался какой-нибудь индекс невозможно, а это в свою очередь в будущем может дать лаги и другие проблемы в будущем. Я может конечно не имею права это спрашивать, но все же, в файле 9.0.php я вижу только 3 запроса: $tableSchema[] = "ALTER TABLE `" . PREFIX . "_usergroups` ADD `admin_tagscloud` TINYINT( 1 ) NOT NULL DEFAULT '0'"; $tableSchema[] = "UPDATE " . PREFIX . "_usergroups SET `admin_tagscloud` = '1' WHERE id = '1'"; $tableSchema[] = "ALTER TABLE `" . PREFIX . "_comments` ADD INDEX `post_id` ( `post_id` ), ADD INDEX `approve` ( `approve` )"; а скрипт выдает: Обновление базы данных с версии 9.0 до версии 9.2 успешно завершено. Всего запланировано запросов: 4 Неудалось выполнить запросов: 1. Возможно они уже выполнены ранее. Можете ли Вы подсказать, откуда берется этот 4й запрос? Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 072 Опубликовано: 14 января 2013 Рассказать Опубликовано: 14 января 2013 Можете ли Вы подсказать, откуда берется этот 4й запрос? 4 запрос это запрос авторизации, он выполняется всегда корректно. Проверяйте последний запрос из этих трех, чтобы все два индекса были в БД. Цитата Ссылка на сообщение Поделиться на других сайтах
Tr1gger 0 Опубликовано: 14 января 2013 Рассказать Опубликовано: 14 января 2013 Автор Спасибо, проблема решена. Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.