Перейти к публикации

Статические страницы и новости.


Рекомендованные сообщения

Всем привет. Версия движка 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')

 

 

 

Как пофиксить данную проблему?

Ссылка на сообщение
Поделиться на других сайтах

Поиск привел к тому, что в таблицах нет auto_increment

 

Вопрос как добавить, чтобы ID и дальше шли 1238 1239 1240 и т.д.? И самое главное почему так произошло? 

 

Сворачивал базу sypex dumper и разворачивал ей же. Все свернулось и развернулось без ошибок. Странно.

Ссылка на сообщение
Поделиться на других сайтах

Сам же и отвечу. ГУГЛ прям чудеса творит.

 

Заходим в phpmyadmin, далее в нашу таблицу. Далее выбираем например в мое случае dle_post_extras заходим.

 

Вверху жмем СТРУКТУРА. Далее видим eid и в колонке дополнительно мы не видим ничего))А должно быть auto_increment

 

Жмем напротив eid изменить.

 

Почти в самом конце мы увидим A_I (именно в сокращении, если подвести мышку то он напишет auto_increment. Кто так сократил, прям по рукам надавать, еле нашел:lol:) Ставим галочку и сохраняемс.

 

Все, теперь IDшники будут нормально присваиваться.  Надеюсь моя инструкция когда нибудь поможет.

Изменено пользователем mokys
Ссылка на сообщение
Поделиться на других сайтах
34 минуты назад, mokys сказал:

Надеюсь моя инструкция когда нибудь поможет.

нужно было поставить на поддомен версию 13.0, на основном домене в админке сделать бекап бд, далее резервную копию с основного домена кидаешь в backup, но уже на поддомене. В админке на поддомене восстанавливаешь бд из резервной копии и потом уже обновляешь dle на поддомене на 13.1

ни разу проблем не было...

Ссылка на сообщение
Поделиться на других сайтах

И последний вопрос. Ничего страшного если ранее было в dle_post_extras eid соответствовал id новости, а теперь они немного разошлись например eid 19101 а id новости 19123?

Ссылка на сообщение
Поделиться на других сайтах
9 минут назад, mokys сказал:

И последний вопрос. Ничего страшного если ранее было в dle_post_extras eid соответствовал id новости, а теперь они немного разошлись например eid 19101 а id новости 19123?

Конечно страшно. Теперь инфа для одной новости будут выводиться в другой. Надо было обновляться строго по инструкции, а не абы как - слил/перелил/скопировал/намутил непонятно что

Ссылка на сообщение
Поделиться на других сайтах
37 минут назад, mokys сказал:

Проверил, вроде выводит то что нужно.

ну-ну

Ссылка на сообщение
Поделиться на других сайтах

Вытянул эти таблицы из бэкапа. Последний вопрос Создали мы новость и она получила ID 19101 и в dle_post_extras тоже 19101. Удаляем и создаем снова новость получаем и там и там 19102, то есть не 19101 снова, а следующее число. Я правильно понимаю что это норма, т.к. смотря начало в таблице вижу ID  первой новости 4, т.к. первые 3 были стандартные от dle которые идут при инсталяции.

 

Верно я понимаю что при удалении новости и создании новой,  она не занимает предыдущий ID, а берет просто следующий?

 

Буду рад помощи\ответам.

Изменено пользователем mokys
Ссылка на сообщение
Поделиться на других сайтах

открой яндекс и почитай, что такое AUTO_INCREMENT Твои вопросы не имеют к ДЛЕ никакого отношения. Нехрен выдумывать собственные способы обновления. Как правильно обновляться, написано в инструкции, а если ты решил, что самый умный, то трахайся сам.

Ссылка на сообщение
Поделиться на других сайтах

Alex32, Вас прям зациклило на этом обновлении.

Давай обсудим этот момент))

Есть домен 123.ру там 13.0

Создаем тестовый поддомен  тест.123.ру копируем туда все файды с 123.ру и базу сворачиваем разворачиваем во вновь созданную пусть будет название 123_тест.

Идем в тест.123.ру и делаем обновление до 13.1 КОТОРОЕ ПРОХОДИТ В ОБЫЧНОМ РЕЖИМЕ, БЕЗ СБОЕВ, ГЛЮКОВ.

Так можно? Надеюсь не страшно?))))

 

Там наливаем всякие модули, тестируем, все ли работает на 13.1. Убедившись в этом, мы удаляем все под корень в 123.ру и заливаем туда файлы. Сворачиваем базу с 123_тест и разворачиваем в базу 123 (которую мы предварительно удалили, т.к. на ней стояла 13.0). 

Все работает, но при разворачивании не включился автоинскремент и не более, а не ваш бред:

Цитата

Надо было обновляться строго по инструкции, а не абы как - слил/перелил/скопировал/намутил непонятно что

 

И

 

Цитата

Нехрен выдумывать собственные способы обновления. Как правильно обновляться, написано в инструкции, а если ты решил, что самый умный, то трахайся сам.

 

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

 

Подытожу, тут явно туговато с помощью от простых таких же клиентов как я. Или заедает пластинку (про обновление) как и сарказм, или отправления в гуглы и яндексы.

 

Хотя я просто спросил следующее число займет экскремент или же удаленное число займет еще раз. Надеюсь вы не попадесь на форуме по химии, с удовольствием отправил БСЭ почитать))

Это я так, что каждый разбирается в каких то вопросах глубоко и профессионально, а где то то поверхностно как я с mysql.

 

Всем добра.

 

P.s. и да, автоинскремент займет следующее число, а не удаленое вновь. Надеюсь это кому то поможет найти информацию именно на этом ресурсе, а не в гугле и яндексах.

Ссылка на сообщение
Поделиться на других сайтах
13 часов назад, mokys сказал:

Верно я понимаю что при удалении новости и создании новой,  она не занимает предыдущий ID, а берет просто следующий?

Да верно понимаете. Это поле имеет свойство AUTO_INCREMENT, что делает это число всегда уникальным и никогда не повторяющимся, даже если что то удаляется из БД. MySQL сервер назначает его автоматически, всегда прибавляя значения.

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...