Предлагаю написать статью по оптимизации мускула) А то когда я еще доберусь, а у тебя уже опыт есть) Вообще бы хотелось серию статей по всесторонней оптимизации, чтобы по куче сайтов не лазить, а все в одном месте было.
Больше полугода назад делал плагин поиска по пользователям, стукнись в личку, может договоримся.
А по теме… По теме ничего. Сравнение обсолютно разных категорий. Для школьного сайта у меня больше года стоит допилиный InstantCMS, он более удобен в плане использования для людей, требующих от сайта аля одноклассники обмен фотками и статусами. Для делового портала, где требуется обмен информацией, все же выбрал эту CMS. Просто потому что для клиентов удобнее не нашлось. Следующий проект буду делать на oxwell.
Такая ошибка может возникнуть, когда удаляешь топик с комментариями. Причем при удалении топика комментарии не удаляются и нарушаются связи в базе данных (БД).
В phpmyadmin (или в другом менеджере БД сайта) сделайте запрос:
select * from prefix_comment where target_id not in (select topic_id from prefix_topic) AND target_type = "topic"
Если появится список таких непривязанных комментариев — можете их удалить вручную (по одному) или попытаться удалить командой:
delete from prefix_comment where target_id = XXX
, где ХХХ — это ID-шник удаленного топика, от которого остались висеть комментарии (его номер Вы можете увидеть в таблице вывода предыдущего запроса — у «висящих» комментариев target_id обычно один и тот же, вот его и надо указывать в ХХХ).
Если было удалено несколько топиков, то у «висящих» комментариев будут несколько разных target_id. Следовательно нужно сделать несколько запросов delete…
Если среди «висящих» комментариев есть вложенные, то удалить сразу все такие комментарии одной командой не получится. В таком случае можно вывести список:
select * from prefix_comment where target_id = XXX
и удалять вручную по несколько штук, начиная с последнего комментария (обратная сортировка по comment_id).
Внимание: delete выполняйте на СВОЙ страх и риск. Если Вы хорошо не разбираетесь в MySQL, то нечаянно этой командой Вы можете грохнуть БД сайта.
Сам вначале разбирался около часа, потом (если возникает) делаю за пару минут.
у меня так, например:
А по теме… По теме ничего. Сравнение обсолютно разных категорий. Для школьного сайта у меня больше года стоит допилиный InstantCMS, он более удобен в плане использования для людей, требующих от сайта аля одноклассники обмен фотками и статусами. Для делового портала, где требуется обмен информацией, все же выбрал эту CMS. Просто потому что для клиентов удобнее не нашлось. Следующий проект буду делать на oxwell.
В phpmyadmin (или в другом менеджере БД сайта) сделайте запрос:
Если появится список таких непривязанных комментариев — можете их удалить вручную (по одному) или попытаться удалить командой:
, где ХХХ — это ID-шник удаленного топика, от которого остались висеть комментарии (его номер Вы можете увидеть в таблице вывода предыдущего запроса — у «висящих» комментариев target_id обычно один и тот же, вот его и надо указывать в ХХХ).
Если было удалено несколько топиков, то у «висящих» комментариев будут несколько разных target_id. Следовательно нужно сделать несколько запросов delete…
Если среди «висящих» комментариев есть вложенные, то удалить сразу все такие комментарии одной командой не получится. В таком случае можно вывести список:
и удалять вручную по несколько штук, начиная с последнего комментария (обратная сортировка по comment_id).
Внимание: delete выполняйте на СВОЙ страх и риск. Если Вы хорошо не разбираетесь в MySQL, то нечаянно этой командой Вы можете грохнуть БД сайта.
Сам вначале разбирался около часа, потом (если возникает) делаю за пару минут.