Redis介绍
Redis是非关系型的kv型数据库
-
特点
1、 开源的,使用C编写, 基于内存且支持持久化
2、 支持数据类型丰富, 字符串string, 散列hashes, 列表lists, 集合sets, 有序集合sorted sets等等
3、 支持多种编程语言(C C++ Python Java PHP …)4、 单进程单线程
Redis亮点功能
1、持久化
将内存中数据保存到磁盘中, 保证数据安全, 方便进行数据备份和恢复
2、过期键功能
为键设置一个过期时间, 让它在指定时间内自动删除
<节省内存空间>
3、事务功能
弱事务型的数据库, 只是具备简单的事务功能
4、主从复制
如何让redis保持高可用状态, 官方提供主从搭建方案
5、Sentinel哨兵
在搭配了基础的主从结构后, 哨兵可做到自动故障转移
Redis 配置相关及打开操作
redis 配置的相关信息在 /usr/local/redis 中
启动redis服务
cd /usr/local/redis/src
./redis-server ../redis.conf
打开redis 运行窗口
cd /usr/local/redis/src
普通打开
redis-cli
指定ip打开(代密码)
redis-cli -h 127.0.0.1 -a xxxxx
命令介绍
-
select number
说明: 切换数据库(默认redis有16个数据库, 0-15为具体数据库的编号, 默认进入为reids为db0)
-
info
说明: 查看redis服务的整体情况 -
keys *
说明: 查看当前库中所有的键值 -
type key
说明: 返回当前键的数据类型 -
exists key
说明: 返回当前健是否存在
返回值: 1代表当前key存在; 0 代表不存在 -
del key
说明: 删除key -
rename key newkey
说明: 重命名当前 key的名字 -
flushdb
说明: 清除当前所在数据库数据 -
flushall
说明: 清除所以数据库数据
常用指令(字符串)
-
set key value nx ex
说明: 设置一个字符串的key
特殊参数:
nx -> not exist 代表当key不存在的时候, 才存储这个key(意思就是当这个key存在的时候 将会set失败)不然会覆盖
ex -> expire 过期时间, 单位s -
get key
说明: 获取key的值
返回值: key的值 或者 ‘nil’ -
strlen key
说明: 获取key存储值的长度 -
getrange key start stop
说明: 获取指定范围切片内容 (包含start 和 stop位置的) -
setrange key index alue
说明: 从索引值开始, 用alue替换原内容; 返回最新长度 -
mset key1 value1 key2 value2 key3 value3
说明: 批量添加key和alue -
mget key1 key2 key3
说明: 批量获取key的值