Перемещение ключа между базами данных с помощью команды MOVE
В этом шаге вы узнаете, как переместить ключ из одной базы данных Redis в другую с помощью команды MOVE. Redis поддерживает несколько логических баз данных в пределах одного экземпляра (instance). По умолчанию существует 16 баз данных, пронумерованных от 0 до 15. Команда MOVE позволяет переносить ключ из текущей выбранной базы данных в другую.
Сначала убедитесь, что вы подключены к серверу Redis с помощью интерфейса командной строки Redis (redis-cli). Откройте терминал в вашем каталоге ~/project и введите следующую команду:
redis-cli
Вы должны увидеть приглашение Redis: 127.0.0.1:6379>. По умолчанию вы подключены к базе данных 0.
У нас уже есть ключ с именем mykey со значением myvalue в базе данных 0 из предыдущего шага. Давайте проверим это:
GET mykey
Вы должны увидеть вывод: "myvalue".
Теперь давайте переместим ключ mykey из базы данных 0 в базу данных 1 с помощью команды MOVE:
MOVE mykey 1
Вы должны увидеть вывод: (integer) 1, что означает, что ключ был успешно перемещен.
Чтобы убедиться, что ключ был перемещен, попробуйте получить значение ключа mykey в базе данных 0:
GET mykey
Вы должны увидеть вывод: (nil), что означает, что ключ больше не существует в базе данных 0.
Теперь переключитесь на базу данных 1 с помощью команды SELECT:
SELECT 1
Вы должны увидеть вывод: OK.
Теперь попробуйте получить значение ключа mykey в базе данных 1:
GET mykey
Вы должны увидеть вывод: "myvalue", что подтверждает, что ключ был успешно перемещен в базу данных 1.
Наконец, давайте переместим ключ mykey обратно в базу данных 0 для следующих шагов. Сначала вернитесь в базу данных 0:
SELECT 0
Вы должны увидеть вывод: OK.
Теперь переместите ключ mykey из базы данных 1 в базу данных 0:
MOVE mykey 0
Вы должны увидеть вывод: (error) ERR source and destination objects are the same.
Эта ошибка возникает потому, что вы выполнили SELECT 0, а затем MOVE mykey 0 в той же сессии. Команда MOVE не позволяет перемещать ключ в ту же базу данных, в которой он находится в данный момент.
Чтобы переместить ключ в другую базу данных, вам нужно сначала выбрать целевую базу данных, а затем использовать команду MOVE.
Например, сначала выберите базу данных 1:
SELECT 1
Вы должны увидеть вывод: OK.
Теперь переместите ключ mykey из базы данных 1 в базу данных 0:
MOVE mykey 0
Вы должны увидеть вывод: (integer) 1, что означает, что ключ был успешно перемещен.
Теперь вернитесь в базу данных 0:
SELECT 0
Убедитесь, что ключ вернулся в базу данных 0:
GET mykey
Вы должны увидеть вывод: "myvalue".
Не забудьте выйти из redis-cli, набрав exit или нажав Ctrl+D. Это гарантирует, что ваши команды будут правильно зарегистрированы.
exit
Теперь вы успешно переместили ключ между базами данных Redis с помощью команды MOVE.