10:19, 25 сентября 2019

Запросы к базе данных MySQL


Управление базой данных MySQL -дело непростое и требует осторожности. Сегодня — о запросах к БД, задаваемых вручную.

Внимание! Перед любыми изменениями сделайте резервную копию!

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

Если по каким-то причинам приложение phpMyAdmin недоступно — применяем альтернативный метод↵

В панели управления хостингом найдите вкладку под таким названием — phpMyAdmin, либо так:

  • База данных
  • Database
  • MySQL

Для того, чтобы получить доступ к базе данных необходимо ввести логин и пароль. Он отличается от того логина и пароля, с помощью которого вы попадете на панель управления хостингом или в админку сайта.

Если вы забыли логин или пароль к своей базе данных, то их можно узнать в файле wp-config.php, который находится в корневой папке сайта. Подробнее ЗДЕСЬ.

 

Запросы к базе данных mysql

  • Удаление данных от удаленных плагинов и постов
  • Удаление спам комментариев
  • Удаление комментариев, ожидающих проверки
  • Удаление неиспользуемых тегов
  • Удаление Trackback и Pingback
  • Удаление ревизий постов
  • Удаление шорткодов плагинов и тем
  • Удаление постов старше Х дней
  • Удаление других комментариев

Как делать SQL запросы к базе данных?

Запрос создается на вкладке SQL.

Когда запрос готов, жмем Вперед.

Если вы получили ответ, что 0 таблиц было изменено, значит, текущее состояние параметра соответствует запросу.

Удаление данных от удаленных плагинов и данные постов

После удаления ненужных плагинов в таблице wp_postmeta могут остаться записи от них. В этой же таблице находятся мета данные постов.

Создайте запрос для удаления неиспользуемых записей плагинов и постов, которые остались после удаления плагинов или постов.

DELETE FROM wp_postmeta WHERE meta_key = ‘ваш-мета-ключ‘;

Замените ваш-мета-ключ на нужное значение.

Например:

DELETE FROM `wp_postmeta` WHERE `meta_key` IN(‘_edit_lock’, ‘_edit_last’,‘_wp_old_slug’)

  • _edit_lock  данный параметр отвечает за время в течение которого автор может изменять свое сообщение в течение указанного срока. В базе данных значение может выглядеть так: edit_lock = 60
    Число 60 говорит о том, что у пользователя есть 60 минут на редактирование своего сообщения с момента публикации. Данный параметр считается абсолютно бесполезным в том случае, если владелец сайта является единственным автором статей.
  • _edit_last Данный параметр содержит информацию о времени последнего редактирования записи.
  • _wp_old_slug Параметр содержит информацию о предыдущем адресе поста, если были изменения.

 

Удаление спам комментариев

Удалить весь спам из бд можно этим запросом:

DELETE FROM wp_comments WHERE comment_approved = ‘spam‘;

.

Удаление комментариев, ожидающих проверки

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

DELETE FROM wp_comments WHERE comment_approved = ‘0‘;

 

Удаление неиспользуемых тегов

Если у вас есть тег, который не связаны ни с одной статьей, удалите его этим запросом:

DELETE FROM wp_terms wt
INNER JOIN wp_term_taxonomy wtt ON wt.term_id = wtt.term_id WHERE wtt.taxonomy = ‘post_tag’ AND wtt.count = 0;

 

Удаление Trackback и Pingback

Если вы выключили эти функции и хотите удалить их записи из базы данных, используйте эти запросы:

Trackback

DELETE FROM wp_comments WHERE comment_type = ‘trackback‘;

 

Pingback

DELETE FROM wp_comments WHERE comment_type = ‘pingback‘;

 

Выключить эти функции в WordPress можно в Настройках — Обсуждения.

Удаление ревизий постов

Сохраненные версии постов хранятся в базе данных. Если у вас большой сайт, большое количество ревизий сильно увеличивает ее размер. Чтобы удалить их все, используйте этот запрос:

DELETE a,b,c FROM wp_posts a
LEFT JOIN wp_term_relationships b ON ( a.ID = b.object_id)
LEFT JOIN wp_postmeta с ON ( a.ID = c.post_id)
LEFT JOIN wp_term_taxonomy d ON ( b.term_taxonomy_id = d.term_taxonomy_id)
WHERE a.post_type = ‘revision’
AND d.taxonomy != ‘link_category’

 

Удаление шорткодов плагинов и тем

Если вы пользовались каким-то плагином, который вставляет шорткоды, или вы сменили тему, в которой были встроены шорткоды, то теперь шорткоды появятся на сайте в виде текста. Чтобы удалить все записи о шорткодах из базы данных, сделайте этот запрос:

UPDATE wp_post SET post_content = replace(post_content, ‘[ваш-шорткод]‘, »);

 

Удаление постов старше Х дней

Если вы хотите удалить посты старше Х дней, используйте этот запрос:

DELETE FROM ‘wp_posts’
WHERE ‘post_type’ = ‘post’
AND DATEDIFF(NOW(),’post_date’) > X-дней

Замените X-дней на нужное число дней.

 

Удаление других комментариев

Иногда некоторые плагины добавляют комментарии в таблицу wp_commentsmeta вместо wp_comments. Если вы хотите очистить эту таблицу, используйте этот запрос:

SELECT FROM wp_commentsmeta WHERE comment_id
NOT IN (
SELECT comment_id
FROM wp_comments
);

Удачи!

(Visited 174 times, 1 visits today)

Об авторе: INET


Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

© 2024 ИНЕТ РУНЕТА
Дизайн и поддержка: GoodwinPress.ru