Найти тему
Merion Academy

Как очистить кеш Redis

Оглавление

Привет! С вами снова Merion Academy - платформа доступного IT образования.

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

В этом руководстве мы рассмотрим различные способы удаления этих пар "ключ-значение" (ключей) и очистки кеша Redis.

Как очистить кеш Redis
Как очистить кеш Redis

Очистить кеш Redis с помощью команды redis-cli

Самый простой способ очистить кеш Redis - использовать команду redis-cli.

Базы данных в Redis хранятся индивидуально. Использование команды redis-cli позволяет удалить ключи либо из всех баз данных, либо только из одной указанной базы данных.

Синтаксис команды redis-cli

Команда redis-cli использует следующий синтаксис:

redis-cli [номер базы данных] [опция]

Где:

  • [опция] - позволяет выбрать между очисткой всех баз данных или одной конкретной базы данных по вашему выбору.
  • [номер базы данных] - позволяет указать, какую базу данных вы хотите очистить.
Примечание. После удаления ключей из базы данных их невозможно будет восстановить.

Удаление всех ключей

Чтобы удалить ключи из всех баз данных Redis, используйте следующую команду:

Redis-Cli Flushall

Начиная с версии 4.0.0, Redis может очищать ключи в фоновом режиме, не блокируя ваш сервер. Для этого используйте команду flushall с параметром async:

Redis-cli flushall async

Удаление ключей из определенной базы данных

Используйте следующую команду, чтобы очистить только определенную базу данных:

Redis-cli flushdb

Использование команды flushdb без каких-либо параметров очищает текущую выбранную базу данных. Используйте параметр -n с номером базы данных, чтобы выбрать конкретную базу данных, которую вы хотите очистить:

redis-cli -n [номер базы данных] flushdb

Вы также можете использовать параметр async при очистке ключей из отдельных баз данных:

redis-cli -n [номер базы данных] flushdb async

Автоматическая очистка кеша с помощью Ansible

Если у вас работает большое количество серверов Redis, очистка кеша для каждого из них вручную требует времени.

Чтобы ускорить этот процесс, используйте такой инструмент, как Ansible, чтобы очистить кеш на всех ваших серверах Redis одновременно:

ansible all -m command -a '/usr/bin/redis-cli flushall '

Выполнение этой команды применяет команду flushall к каждому серверу в вашем файле инвентаризации Ansible:

  • all - позволяет выбрать все удаленные хосты в файле инвентаризации Ansible.
  • -m - позволяет выбрать модуль для выполнения.
  • -a - Предоставляет аргумент для модуля. В этом случае командный модуль запускает команду flushall с помощью redis-cli.

--
До встречи на нашей образовательной платформе.
Merion Academy - платформа доступного IT образования.