Mover una Clave Entre Bases de Datos con MOVE
En este paso, aprenderás cómo mover una clave (key) de una base de datos Redis a otra utilizando el comando MOVE
. Redis soporta múltiples bases de datos lógicas dentro de una sola instancia. Por defecto, hay 16 bases de datos, numeradas del 0 al 15. El comando MOVE
te permite transferir una clave (key) desde la base de datos actualmente seleccionada a otra.
Primero, asegúrate de estar conectado al servidor Redis utilizando la interfaz de línea de comandos de Redis (redis-cli
). Abre una terminal en tu directorio ~/project
y escribe el siguiente comando:
redis-cli
Deberías ver el prompt de Redis: 127.0.0.1:6379>
. Por defecto, estás conectado a la base de datos 0.
Ya tenemos una clave (key) llamada mykey
con el valor myvalue
en la base de datos 0 del paso anterior. Vamos a verificar esto:
GET mykey
Deberías ver la salida: "myvalue"
.
Ahora, movamos la clave (key) mykey
desde la base de datos 0 a la base de datos 1 utilizando el comando MOVE
:
MOVE mykey 1
Deberías ver la salida: (integer) 1
, lo que significa que la clave (key) se movió exitosamente.
Para verificar que la clave (key) se ha movido, intenta obtener el valor de la clave (key) mykey
en la base de datos 0:
GET mykey
Deberías ver la salida: (nil)
, lo que significa que la clave (key) ya no existe en la base de datos 0.
Ahora, cambia a la base de datos 1 utilizando el comando SELECT
:
SELECT 1
Deberías ver la salida: OK
.
Ahora, intenta obtener el valor de la clave (key) mykey
en la base de datos 1:
GET mykey
Deberías ver la salida: "myvalue"
, lo que confirma que la clave (key) se ha movido exitosamente a la base de datos 1.
Finalmente, movamos la clave (key) mykey
de vuelta a la base de datos 0 para los siguientes pasos. Primero, regresa a la base de datos 0:
SELECT 0
Deberías ver la salida: OK
.
Ahora, mueve la clave (key) mykey
desde la base de datos 1 a la base de datos 0:
MOVE mykey 0
Deberías ver la salida: (error) ERR source and destination objects are the same
.
Este error ocurre porque ejecutas SELECT 0
y luego MOVE mykey 0
en la misma sesión. El comando MOVE
no está permitido para mover una clave (key) a la misma base de datos en la que se encuentra actualmente.
Para mover una clave (key) a una base de datos diferente, necesitas seleccionar la base de datos de destino primero y luego usar el comando MOVE
.
Por ejemplo, primero selecciona la base de datos 1:
SELECT 1
Deberías ver la salida: OK
.
Ahora, mueve la clave (key) mykey
desde la base de datos 0 a la base de datos 1:
MOVE mykey 1
Deberías ver la salida: (integer) 1
, lo que significa que la clave (key) se movió exitosamente.
Ahora, regresa a la base de datos 0:
SELECT 0
Verifica que la clave (key) esté de vuelta en la base de datos 0:
GET mykey
Deberías ver la salida: "myvalue"
.
Recuerda salir del redis-cli
escribiendo exit
o presionando Ctrl+D
. Esto asegura que tus comandos se registren correctamente.
exit
Ahora has movido exitosamente una clave (key) entre bases de datos Redis utilizando el comando MOVE
.