Основные команды при работе с Redis

5 октября 2023 г.
172

SET

Команда используется для установки ключа и его значения, с дополнительными необязательными параметрами для указания срока действия записи значения ключа. Давайте установим ключ foo со значением “hello world”. Параметр EX указывает время жизни объекта в секундах, PX в милисекундах:
127.0.0.1:6379> SET foo "hello world"
OK
127.0.0.1:6379> SET foo1 "hello world" ex 5
OK

GET

Команда используется для получения значения, связанного с ключом. Если запись значения ключа превысила срок действия, будет возвращено nil:
127.0.0.1:6379> GET foo
"hello world"
# если истечет время жизни записи
127.0.0.1:6379> GET foo
(nil)
По умолчанию все значение в Redis сохраняются как строки.

EXISTS

Эта команда проверяет, существует ли что то с данным ключом. Она возвращает 1 если объект существует или 0 если нет. Boolean типа в Redis нет.
127.0.0.1:6379> EXISTS foo
(integer) 1

FLUSHALL

Эта команда полностью удаляет все данные в текущем сеансе.

GETSET

Команда возвращает текущее значение и устанавливает новое. Используется для атомарного управления данными.
127.0.0.1:6379> SET foo "hello"
OK
127.0.0.1:6379> GETSET foo "world"
"hello"
127.0.0.1:6379> GET foo
"world"
 

DEL

Команда удаляет ключ и соответствующее значение:
127.0.0.1:6379> DEL foo
(integer) 1

APPEND

Команда добавляем в соотвествующий ключ дополнительное значение. Возвращает количество символов итогового значения.
127.0.0.1:6379> SET foo "hello"
OK
127.0.0.1:6379> APPEND foo " world"
(integer) 11
127.0.0.1:6379> GET foo
"hello world"

KEYS

Возвращает все ключи из базы по указанному шаблону. Есть предостережение что в реальных приложения эту команду лучше не использовать из-за того что она очень медленная.
127.0.0.1:6379> KEYS *
1) "boo"
2) "foo"

INCR / DECR

Инкремент / декримент. Если значение ключа integer (хотя в базе храниться все равно строка) можно увеличить или уменьшить значение на 1. Если использовать команду INCR с несуществующем значением то создаться новый ключ со значением 1.
127.0.0.1:6379> SET foo 1
OK
127.0.0.1:6379> INCR foo
(integer) 2
127.0.0.1:6379> INCR foo
(integer) 3
127.0.0.1:6379> DECR foo
(integer) 2

TTL

Когда ключ установлен с истечением срока действия (например SET foo EX 10), эту команду можно использовать для просмотра оставшегося времени:
127.0.0.1:6379> SET foo 10 EX 10
OK
127.0.0.1:6379> TTL foo
(integer) 6
127.0.0.1:6379> TTL foo
(integer) 5
127.0.0.1:6379> TTL foo
(integer) 2
127.0.0.1:6379> TTL foo
(integer) -2

PERSIST

Если мы передумаем об истечении срока действия ключа, мы можем использовать эту команду, чтобы удалить период истечения срока действия:
127.0.0.1:6379> PERSIST foo
(integer) 1
127.0.0.1:6379> TTL foo
(integer) -1
127.0.0.1:6379> GET foo
"bar"

RENAME

Эта команда используется для переименования ключей на нашем сервере Redis:
127.0.0.1:6379> RENAME foo foo2
OK
127.0.0.1:6379> GET foo
(nil)
127.0.0.1:6379> GET foo2
"bar"

EXPIRE

Эта команда используется для установки срока действия для ключей (имеет следующие опции [NX | ХХ | ГТ | LT]) на нашем сервере Redis:
127.0.0.1:6379> EXPIRE foo 10
1
Поделиться: