Instalación y uso de Redis (dos)
instalación
Sube el paquete tar.gz y descomprímelo
tar -zxvf redis-5.0.4.tar.gz
Instalar gcc (debe tener red)
yum -y install gcc
Si olvida si lo ha instalado, puede usar el comando gcc -v para verificar la versión de gcc. Si no se ha instalado, se le preguntará que el comando no existe
Ingrese al directorio redis y compile
make
Después de compilar, inicie la instalación.
make install
Operaciones después de la instalación
Modo de funcionamiento en segundo plano
Redis no se ejecuta en segundo plano de forma predeterminada. Si es necesario, modifique el archivo de configuración daemonize = yes. Cuando se inicie su servicio en segundo plano, se escribirá como un archivo de proceso para ejecutarse.
Busque el archivo redis.conf y modifique daemonize yes
Comenzar como un archivo de configuración
Encuentra la ubicación de redis-server
redis-server ../redis.conf
Cerrar la base de datos
Cierre de instancia única
redis-cli shutdown
Apagado de varias instancias
redis-cli -p 6379 shutdown
Operaciones comunes
Compruebe si el puerto 6379 está escuchando
netstat -lntp | grep 6379
¿Por qué es el puerto 6379?
6379 es el número correspondiente a MERZ en el botón del teléfono,
y MERZ se toma del nombre de la cantante italiana Alessia Merz.
MERZ ha sido durante mucho tiempo sinónimo de estupidez por parte de antirez (autor de redis) y sus amigos.
Verifique si existe el proceso en segundo plano
ps -ef|grep redis
Conéctese a redis y pruebe
redis-cli
ping
Hola Mundo
# 保存数据
set k1 china
# 获取数据
get kl
Prueba de rendimiento
Primero ctrl + c, salga del cliente de redis
redis-benchmark
Después de ejecutar el comando, el comando no se detendrá automáticamente, debemos presionar manualmente ctrl + c para detener la prueba
[root@10-23-3-187 src]# redis-benchmark
====== PING_INLINE ======
100000 requests completed in 1.80 seconds # 1.8秒处理了10万个请求,性能要看笔记
本的配置高低
50 parallel clients
3 bytes payload
keep alive: 1
87.69% <= 1 milliseconds
99.15% <= 2 milliseconds
99.65% <= 3 milliseconds
99.86% <= 4 milliseconds
99.92% <= 5 milliseconds
99.94% <= 6 milliseconds
99.97% <= 7 milliseconds
100.00% <= 7 milliseconds
55524.71 requests per second # 每秒处理的请求数量
16 bases de datos por defecto
Número de claves de la base de datos
dbsize
Redis admite la finalización de comandos (pestaña) en linux
Vaciar la base de datos
Borrar la biblioteca actual
flushdb
Borre todas las (16) bibliotecas, úselo con precaución. !
flushall
Consulta difusa (clave)
El comando de claves de consulta difusa tiene tres comodines:
-
*: comodín cualquier número de caracteres
-
Consultar todas las claves
keys *
-
Consulta difusa al principio de k y cualquier número de caracteres después de ella
keys k*
-
La consulta aproximada e es el último dígito y cualquier número de caracteres delante
keys *1
-
Patrón doble *, coincide con cualquier número de caracteres: consulta la clave que contiene k
keys *k*
-
-
?: Carácter comodín único
-
Consulta aproximada para el encabezado de k y coincide con un carácter
keys k?
-
Solo recuerda que la primera letra es k y su longitud es 3.
keys k??
-
-
[]: Cierto carácter entre corchetes comodín
-
Recuerde las otras letras, la segunda letra puede ser a o e
keys r[ae]dis
-
((Llave
Existe una clave: determina si existe una clave.
127.0.0.1:6379> exists k4
(integer) 1 # 存在
127.0.0.1:6379> exists d4
(integer) 0 # 不存在
move key db: Mueve (corta, pega) la clave a la base de datos numérica
127.0.0.1:6379> move k4 3 #将k4移动到3号数据库
(integer) 1 #移动成功
127.0.0.1:6379> exists k4 #判断当前库有没有k4
(integer) 0 #不存在
127.0.0.1:6379> select 3 #切换到3号库
OK
127.0.0.1:6379[3]> exists k4 #判断当前库有没有k4
(integer) 1 #存在
ttl key: vea cuánto tiempo caducará la clave (-1 nunca caduca, -2 caduca)
- tiempo para vivir
127.0.0.1:6379[3]> ttl k4
(integer) -1 #永不过期
expirar segundos clave: establezca el tiempo de expiración de la clave (cuenta atrás para la vida)
127.0.0.1:6379[3]> set k1 v1 #写入k1
OK
127.0.0.1:6379[3]> ttl k1 #查看k1何时过期
(integer) -1 #永不过期
127.0.0.1:6379[3]> expire k1 10 #设置k1的过期时间为10秒,10秒后自动销毁
(integer) 1 #设置成功
127.0.0.1:6379[3]> get k1 #获取k1的值
"v1"
127.0.0.1:6379[3]> ttl k1 #查看k2何时过期
(integer) 2 #还有2秒过期
127.0.0.1:6379[3]> get k1 #获取k1
(nil) #获取不到
127.0.0.1:6379[3]> keys * #查询所有键
(empty list or set)
tipo de clave: Ver el tipo de datos de la clave
127.0.0.1:6379[3]> type k1
string #字符串类型