mokys 0 Опубликовано: 24 октября 2018 Рассказать Опубликовано: 24 октября 2018 Всем привет. Версия движка 13.1 Недавно решил обновляться и тестировать все на поддомене, чтобы не косячить на основном домене и потом просто переносить все. 1. В данный момент обновился до версии 13.1 с 13.0 Создал новую базу данных и и влил туда с тестого. Далее скопировал все файлы в основной домен с тестового. В dbconfig.php сменил имя базы данных. Добавил статическую страничку и все ок. Далее начал добавлять еще одну и MySQL error in file: /engine/inc/static.php at line 800 Error Number: 1062 The Error returned was: Duplicate entry '0' for key 'PRIMARY' Скорее всего не пресваеватся новый id в базе данных для этой страницы, т.к. статическая страница которую я добавил имеет id0, а последняя id 1237 Решил сделать перестроение публикаций. Процесс висит уже так пол часа Общее количество статических страниц: 1237, обработано: 500 идет обработка, ждите... 2. Решил попробовать давить новости. Одна добавилась, а вот вторая уже вот так. MySQL error in file: /engine/cache/system/plugins/38cd1596b9038f1dd85b21348d9c827e.php at line 906 Error Number: 1062 The Error returned was: Duplicate entry '0' for key 'PRIMARY' SQL query: INSERT INTO dle_post_extras (news_id, allow_rate, votes, disable_index, access, user_id, disable_search, need_pass) VALUES('19104', '1', '0', '0', '', '1', '0', '0') Как пофиксить данную проблему? Цитата Ссылка на сообщение Поделиться на других сайтах
mokys 0 Опубликовано: 24 октября 2018 Рассказать Опубликовано: 24 октября 2018 Автор Поиск привел к тому, что в таблицах нет auto_increment Вопрос как добавить, чтобы ID и дальше шли 1238 1239 1240 и т.д.? И самое главное почему так произошло? Сворачивал базу sypex dumper и разворачивал ей же. Все свернулось и развернулось без ошибок. Странно. Цитата Ссылка на сообщение Поделиться на других сайтах
mokys 0 Опубликовано: 24 октября 2018 Рассказать Опубликовано: 24 октября 2018 (изменено) Автор Сам же и отвечу. ГУГЛ прям чудеса творит. Заходим в phpmyadmin, далее в нашу таблицу. Далее выбираем например в мое случае dle_post_extras заходим. Вверху жмем СТРУКТУРА. Далее видим eid и в колонке дополнительно мы не видим ничего))А должно быть auto_increment Жмем напротив eid изменить. Почти в самом конце мы увидим A_I (именно в сокращении, если подвести мышку то он напишет auto_increment. Кто так сократил, прям по рукам надавать, еле нашел) Ставим галочку и сохраняемс. Все, теперь IDшники будут нормально присваиваться. Надеюсь моя инструкция когда нибудь поможет. Изменено 24 октября 2018 пользователем mokys Цитата Ссылка на сообщение Поделиться на других сайтах
odys 384 Опубликовано: 24 октября 2018 Рассказать Опубликовано: 24 октября 2018 34 минуты назад, mokys сказал: Надеюсь моя инструкция когда нибудь поможет. нужно было поставить на поддомен версию 13.0, на основном домене в админке сделать бекап бд, далее резервную копию с основного домена кидаешь в backup, но уже на поддомене. В админке на поддомене восстанавливаешь бд из резервной копии и потом уже обновляешь dle на поддомене на 13.1 ни разу проблем не было... Цитата Ссылка на сообщение Поделиться на других сайтах
mokys 0 Опубликовано: 24 октября 2018 Рассказать Опубликовано: 24 октября 2018 Автор И последний вопрос. Ничего страшного если ранее было в dle_post_extras eid соответствовал id новости, а теперь они немного разошлись например eid 19101 а id новости 19123? Цитата Ссылка на сообщение Поделиться на других сайтах
alex32 941 Опубликовано: 24 октября 2018 Рассказать Опубликовано: 24 октября 2018 9 минут назад, mokys сказал: И последний вопрос. Ничего страшного если ранее было в dle_post_extras eid соответствовал id новости, а теперь они немного разошлись например eid 19101 а id новости 19123? Конечно страшно. Теперь инфа для одной новости будут выводиться в другой. Надо было обновляться строго по инструкции, а не абы как - слил/перелил/скопировал/намутил непонятно что Цитата Ссылка на сообщение Поделиться на других сайтах
mokys 0 Опубликовано: 24 октября 2018 Рассказать Опубликовано: 24 октября 2018 Автор Проверил, вроде выводит то что нужно. Я так понимаю шутки в 3 ч ночи) Цитата Ссылка на сообщение Поделиться на других сайтах
alex32 941 Опубликовано: 25 октября 2018 Рассказать Опубликовано: 25 октября 2018 37 минут назад, mokys сказал: Проверил, вроде выводит то что нужно. ну-ну Цитата Ссылка на сообщение Поделиться на других сайтах
mokys 0 Опубликовано: 25 октября 2018 Рассказать Опубликовано: 25 октября 2018 (изменено) Автор Вытянул эти таблицы из бэкапа. Последний вопрос Создали мы новость и она получила ID 19101 и в dle_post_extras тоже 19101. Удаляем и создаем снова новость получаем и там и там 19102, то есть не 19101 снова, а следующее число. Я правильно понимаю что это норма, т.к. смотря начало в таблице вижу ID первой новости 4, т.к. первые 3 были стандартные от dle которые идут при инсталяции. Верно я понимаю что при удалении новости и создании новой, она не занимает предыдущий ID, а берет просто следующий? Буду рад помощи\ответам. Изменено 25 октября 2018 пользователем mokys Цитата Ссылка на сообщение Поделиться на других сайтах
alex32 941 Опубликовано: 26 октября 2018 Рассказать Опубликовано: 26 октября 2018 открой яндекс и почитай, что такое AUTO_INCREMENT Твои вопросы не имеют к ДЛЕ никакого отношения. Нехрен выдумывать собственные способы обновления. Как правильно обновляться, написано в инструкции, а если ты решил, что самый умный, то трахайся сам. Цитата Ссылка на сообщение Поделиться на других сайтах
mokys 0 Опубликовано: 26 октября 2018 Рассказать Опубликовано: 26 октября 2018 Автор Alex32, Вас прям зациклило на этом обновлении. Давай обсудим этот момент)) Есть домен 123.ру там 13.0 Создаем тестовый поддомен тест.123.ру копируем туда все файды с 123.ру и базу сворачиваем разворачиваем во вновь созданную пусть будет название 123_тест. Идем в тест.123.ру и делаем обновление до 13.1 КОТОРОЕ ПРОХОДИТ В ОБЫЧНОМ РЕЖИМЕ, БЕЗ СБОЕВ, ГЛЮКОВ. Так можно? Надеюсь не страшно?)))) Там наливаем всякие модули, тестируем, все ли работает на 13.1. Убедившись в этом, мы удаляем все под корень в 123.ру и заливаем туда файлы. Сворачиваем базу с 123_тест и разворачиваем в базу 123 (которую мы предварительно удалили, т.к. на ней стояла 13.0). Все работает, но при разворачивании не включился автоинскремент и не более, а не ваш бред: Цитата Надо было обновляться строго по инструкции, а не абы как - слил/перелил/скопировал/намутил непонятно что И Цитата Нехрен выдумывать собственные способы обновления. Как правильно обновляться, написано в инструкции, а если ты решил, что самый умный, то трахайся сам. Выше я спросил лишь про автоинскремент, а не про правильность обновления. В тест.123.ру нет проблем, проблема началась после сдвига из поддомена в основной домен, а точнее проблема именно при разворачивании базы. Подытожу, тут явно туговато с помощью от простых таких же клиентов как я. Или заедает пластинку (про обновление) как и сарказм, или отправления в гуглы и яндексы. Хотя я просто спросил следующее число займет экскремент или же удаленное число займет еще раз. Надеюсь вы не попадесь на форуме по химии, с удовольствием отправил БСЭ почитать)) Это я так, что каждый разбирается в каких то вопросах глубоко и профессионально, а где то то поверхностно как я с mysql. Всем добра. P.s. и да, автоинскремент займет следующее число, а не удаленое вновь. Надеюсь это кому то поможет найти информацию именно на этом ресурсе, а не в гугле и яндексах. Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 035 Опубликовано: 26 октября 2018 Рассказать Опубликовано: 26 октября 2018 13 часов назад, mokys сказал: Верно я понимаю что при удалении новости и создании новой, она не занимает предыдущий ID, а берет просто следующий? Да верно понимаете. Это поле имеет свойство AUTO_INCREMENT, что делает это число всегда уникальным и никогда не повторяющимся, даже если что то удаляется из БД. MySQL сервер назначает его автоматически, всегда прибавляя значения. 1 Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.