En este tutorial mostraré cómo instalar Redis en Ubuntu versión 16, aunque puede funcionar para otras versiones.
Redis es un motor de bases de datos en memoria; se caracteriza porque es extremadamente rápido, en serio, muy rápido.
No es como tal un motor potente como MySQL; de hecho no soporta SQL pero sí soporta algunas estructuras de datos como:
Sirve principalmente para almacenar datos en la forma clave-valor, almacenar datos en caché y otras cosas más.
Soporta igualmente la replicación, está escrito en C (aquí el código fuente) y se puede probar en línea.
Primero actualiza los paquetes de tu sistema:
sudo apt-get update
Y luego:
sudo apt-get upgrade
Selecciona la opción que dice Y
en ambos casos por si pregunta.
Ahora que ya ejecutaste ambas cosas es hora de instalar redis. Para ello ejecuta:
sudo apt-get install redis-server
Cuando te pregunte escribe Y
y presiona enter
, como se ve en la imagen:
Con eso habrás instalado Redis, ahora falta iniciar el servidor en el inicio del sistema operativo.
Para que redis inicie con el sistema, ejecuta:
sudo systemctl enable redis-server.service
Como se ve en la imagen:
De esta manera, Redis va a iniciarse cada vez que el sistema operativo bootee.
Ahora veamos algunos ajustes para Redis. La configuración de redis se ubica en el archivo /etc/redis/redis.conf
y puedes editarla con cualquier editor, yo lo haré con vim
.
sudo vim /etc/redis/redis.conf
Ahora vamos a configurar la cantidad máxima de memoria que Redis puede usar; por defecto es 0 (hasta que el sistema mate al proceso por consumir tanta) pero vamos a cambiarla; dependiendo de tu servidor este valor puede cambiar, yo la dejaré en 100 MB.
Busca la configuración que dice maxmemory
, y quita el comentario removiendo la almohadilla #
. Usa el sufijo MB para Megabytes. En mi caso queda así:
Ahora vamos a ponerle una contraseña; este paso es opcional pero lo recomiendo.
Busca la línea que dice requirepass
, remueve el comentario y pon una contraseña como se ve en la imagen.
Por favor elige una contraseña segura, larga y fácil de recordar, pues Redis dice que es tan rápido en comprobar las contraseñas que si alguien intenta un ataque de fuerza bruta podría probar hasta 150 mil contraseñas por segundo (en un buen servidor)
No deberías preocuparte si nadie tiene acceso a tu servidor por internet; pero avisado estás.
Ahora guarda cambios y reinicia el servicio para que tome en cuenta lo que acabamos de hacer.
sudo systemctl restart redis-server.service
Con eso ya estamos listos.
Ahora vamos a conectarnos a Redis usando la CLI. Para ello ejecuta:
redis-cli -h localhost -p 6379 -a por_favor_una_pass_larga_123_hunter2
Las opciones son:
localhost
o 127.0.0.1
, podrías conectarte a otro servidor si quisieras, siempre y cuando estuviera abiertoEso nos dejará entrar a la CLI. Ahora puedes escribir ping y debe devolver pong:
Con eso nos damos cuenta de que el servidor está funcionando y respondiendo.
Si quieres salir de la CLI escribe exit
.
Para terminar este post veamos cómo almacenar y remover algunas cosas de Redis. No cierres la cli, y si ya la cerraste vuelve a abrirla.
Para poner un dato la sintaxis es:
SET clave valor
Por ejemplo:
SET nombre "Luis"
Nota: para cadenas usa comillas, pero no para los números.
Para obtener el valor necesitamos la clave. La sintaxis es:
GET clave
Así que si queremos obtener el nombre usamos:
GET nombre
Es como SET
pero este no sobrescribe si ya existe. El comando es SETNX
y su sintaxis es:
SETNX clave valor
Por ejemplo:
SETNX edad 21
Hay un comando llamado INCR
que simplemente incrementa un valor en uno. Su sintaxis es:
INCR clave
Por ejemplo:
INCR edad
Después de establecer un valor con SET
podemos usar EXPIRE
para indicar que ese valor se va a eliminar en determinados segundos. La sintaxis es:
EXPIRE clave segundos
Recuerda que debes establecer el valor antes con SET
. Un ejemplo es:
EXPIRE nombre 10
Lo que eliminará el nombre en 10 segundos. Para cancelar su expiración vuelve a establecer la clave:
SET nombre "Luis"
Si quieres saber el tiempo restante para que una clave expira usa TTL:
TTL clave
Eso va a devolver el tiempo de expiración. Será -1 si no expira y -2 si la clave no existe.
Para eliminar un valor usa DEL. La sintaxis es:
DEL clave
Eso eliminará el valor y la clave de Redis.
Por ejemplo:
DEL nombre
Aquí dejo una captura con todo lo explicado:
Por cierto, hay más estructuras de datos que Redis puede almacenar, te invito a probar el tutorial en línea.
Espero que haya servido para algo este tutorial sobre cómo instalar y configurar Redis en Ubuntu.
Recuerda que siempre puedes leer mis otros posts sobre Linux.
Hoy te voy a presentar un creador de credenciales que acabo de programar y que…
Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…
En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…
En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…
Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…
En este artículo te voy a enseñar cómo usar un "top level await" esperando a…
Esta web usa cookies.