5 октября 2023 г.
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