Статьи

WordPress в Azure: оптимизация базы данных

Мой WordPress  блог размещен на Windows Azure, где я делюсь информацией о технологиях, которые я люблю и над которыми работаю. Мне нравится делать вещи простыми, и я не хочу наполнять свой WordPress блог плагинами. Вот почему я установил очень мало таких, как Akismet для спама, Yoast SEO для поисковой оптимизации, контактную форму 7 (хотя она никогда не работала) и Social Login. На моих предыдущих сайтах Akismet работал как шарм, и я редко получал спам-сообщения, но с моим личным блогом это не сработало вообще. Я получал огромное количество спама. Изначально я не беспокоился о них и решил оставить его в папке со спамом, так как у меня хорошая подписка Azure, а мой веб-сайт работает на стандартном ценовом уровне, поэтому мне не нужно было о чем-то беспокоиться.Но однажды все пошло не так, когда я попытался войти в свой WordPress, но я не смог этого сделать, хотя мой веб-сайт работал нормально, а затем я получил письмо от ClearDB о превышении лимита квоты на размер базы данных, в котором упоминалось, что моя база данных Превышен предел размера квоты для уровня бесплатного пользования, который составлял 20 МБ, и теперь моя база данных была настроена только для чтения.

Фактически, когда вы настраиваете сайт WordPress в Azure, бесплатный экземпляр MySQL, предоставляемый ClearDB, который является бесплатной базой данных MySQL, ограничивает 20 МБ и 4 соединения. Когда мы превышаем этот лимит, они уведомляют нас по электронной почте, а затем он отключает разрешения INSERT и UPDATE для вашей таблицы базы данных, что означает, что теперь вы даже не можете войти в свой wordpress.

Есть два способа решить эту проблему:

1) Вы можете обновить базу данных clearDB до платного тарифного плана

2) Вы можете установить удаленное соединение с базой данных и можете сделать очистку

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

Затем я обновляю ClearDB до платного плана обслуживания. Вы можете легко обновить, нажав на логотип ClearDB в верхнем левом углу этой страницы, а затем нажав ссылку Upgrade справа от базы данных, чтобы запустить мастер обновления. Он покажет вам много уровней цен. План обслуживания Titan предоставляет вам до 250 МБ хранилища (более чем в 10 раз больше, чем у вас есть сейчас) и до 10 одновременных подключений за 3,50 доллара США в месяц. Теперь вы можете оплатить с помощью кредитной карты. После обновления вы получите полный доступ к вашему сайту.


Я перешел на свой блог, но он все еще не работал и отображал « Ошибка при подключении к базе данных », проблема была в строке подключения, так как при попытке установить удаленное подключение к базе данных ClearDB MySQL я сбрасывал учетные данные, но он не обновлялся в Лазурь. Для этого вам необходимо обновить строку подключения в Azure, это можно сделать следующим образом:

1) Получить доступ к домашнему каталогу вашего сайта. Я настроил FTP-доступ к своему сайту с помощью FileZilla. Определенно, вы также можете использовать любое другое клиентское приложение FTP. Вы можете получить FileZilla  здесь . Загрузите и установите его на свой компьютер.

2) Войдите в свой портал Azure.

3) Перейти на панель инструментов вашего сайта

4) Скачать профиль публикации

5) В FileZilla перейдите в «Файл -> Менеджер сайта».
6) Наконец, подключитесь к своему сайту с именем пользователя и паролем, как показано в вашем профиле публикации, и вы увидите следующие три папки:

  • Сайт:  это папка, в которой находятся файлы вашего сайта.
  • Logfiles:  это папка, в которой находятся файлы журнала диагностики вашего сайта.
  • Данные:  данные сайта хранятся здесь

7) В папке сайта в корневом каталоге отредактируйте файл «wp-config.php», теперь обновите учетные данные 

Вы сделали. Перезапустите ваш сайт с панели инструментов и перейдите на ваш сайт, теперь он будет работать нормально.

Если вы не хотите переходить на платный уровень цен, вы можете сделать это, оптимизировав базу данных ClearDB MySQL. Я сделал это, установив удаленное соединение с Navicat. Давайте посмотрим шаги и запросы, которые я выполнил для этого:

 

  • Выберите Связанные ресурсы на верхних вкладках навигации. Он покажет вам вашу базу данных ClearDB MySql, выберите управление, и вы перейдете на панель инструментов ClearDB.
  • В верхнем меню навигации выберите «Информация о конечной точке» и запишите имя вашего  хоста, пользователя и пароль.

 

  • Откройте Navicat и нажмите « Подключения », а затем выберите « MySQL », откроется новое окно, теперь введите учетные данные, которые вы получили от ClearDB

Теперь мы готовы сделать запросы к базе данных ClearDB. Сначала мы очистим Спам. Вставьте это в редактор запросов. 

Удаление спама

SELECT * FROM wp_comments
 WHERE wp_comments.comment_approved = 'spam';
DELETE FROM wp_comments
 WHERE wp_comments.comment_approved = 'spam';

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

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

SELECT * FROM wp_posts
 WHERE post_type = "revision";
DELETE FROM wp_posts
 WHERE post_type = "revision";

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

DELETE FROM wp_comments WHERE comment_approved = '0'

Удаление переходных процессов

DELETE FROM wp_options WHERE option_name LIKE ('%\_transient\_%')

Проверка текущего размера БД

SELECT 
                table_schema "Data Base Name", 
                sum( data_length + index_length ) / 1024 / 1024 "Data Base Size in MB" 
 FROM 
                information_schema.TABLES 
 GROUP BY 
                table_schema;

 

После того, как вы получите полный доступ к своей базе данных, вы можете принять определенные меры для оптимизации базы данных, например:

1) В wp-config.php ограничьте количество публикаций до двух, добавив определение («WP_POST_REVISIONS», 2)

2) Установив хороший плагин Anti Spam

3) « Оптимизация базы данных после удаления ревизий»  — хороший плагин для оптимизации базы данных, вы можете установить его