03 мочь, 2008
Mysql трюк, чтобы удалить дубликаты Wordpress должностей
Разместил: Admin в: Wordpress
Недавно я натолкнулся на проблемы с Wordpress установки разминирования, где домашние сценария пошли совершенно за бортом, и не прекратили показ, добавив должности в базу данных. За несколько дней она добавила почти 93,000 должностей, из которых все были дубликаты.
После немного поиске я нашел проблему, но и попасть в базу данных по очистке было немного проблема, поскольку сценарий по-прежнему работает. Мне пришлось удалить из Скрипт полностью мою установку, чтобы остановить его!
Я теперь осталось 96,000 нибудь должности, из которых я знал, 93,000 или так было дублей! Как для очистки этих мер? Я мог бы использовать ручной подход, который я начал, но я вскоре понял я буду старой и серого до этого фиксированного проблемы.
Немного Google поиск (где еще до начала ваших исследований?) Я нашел отличный сценарий, чтобы помочь именно с этой проблемой:
DELETE bad_rows.*
from wp_posts as bad_rows
inner join (
select post_title, MIN(id) as min_id
from wp_posts
group by post_title
having count(*) > 1
) as good_rows on good_rows.post_title = bad_rows.post_title
and good_rows.min_id <> bad_rows.id
Это решение было найдено на Wordpress.org поддержки форума
Эта проблема решена, и мой блог в настоящее время действующая, как правило, еще раз.
Ps не забудьте создать резервную копию базы данных, прежде чем делать это!














