-
下载安装
- 点击下载Redis 6.2.4 稳定版
- 因为Redis使用C语言编写的,所以需要先安装C语言的编译环境并查看是否安装成功,命令
上传redis到opt文件夹内,并解压yum install -y gcc gcc --version
cd /opt/ # 上传redis rz
- 解压压缩包
tar -zxvf redis-6.2.4.tar.gz
- 进入redis文件夹内编译并安装
# 编译 make # 安装 make install
- 切到redis目录
cd /opt/redis-6.2.4
- 开启后台启动
-
将redis.conf复制到 /etc 下并编辑,将支持后台启动改为 daemonize yes
cp redis.conf /etc/ vim /etc/redis.conf/
-
切换到lib目录,启动redis
cd /usr/local/lib redis-server /etc/redis.conf
-
进入redis并测试是否连接成功
# 进入redis 后台 redis-cli # 测试是否连接成功 ping pong
-
退出redis方法
1.直接在后台输入 exit 只是退出cli,redis依然在后台运行 2.后台输入 shutdown 再输入 exit 为关闭redis并退出 3.redis-cli shuadown 4.通过查看进程号后,kill -9 退出
-
-
五大数据类型
-
String
常见操作命令
-
List
可存储有序、可重复的元素
list的元素最多有 2^32-1(42亿)
常见操作命令
-
Set
存储无序、唯一的元素
集合中最大的成员数为 2^32 -1 个
常见操作命令
-
Zset
有序不能重复
常见操作命令
-
Hash(散列类型)
hash 是一个 string 类型的 key 和 value 的映射表,其中value 可以存储 key:value 也就是 -> key : (key:value)
每个 hash 可以存储 2^32 - 1 键值对(42亿)
-
-
事务
所谓事务(Transaction) , 是指作为单个逻辑工作单位执行的一系列操作-
redis事务和ACID对比
-
Atomicity (原子性) : 构成事务的所有操作必须是一个逻辑单元,要么全部执行,要么全部不执行.
Redis : 一个队伍中的命令,执行或不执行或部分执行(具体看图)
-
Consistency(一致性) : 数据库在事务执行前后状态都必须是稳定的或一致的.
Redis : 集群中不能保证时时的一致性,只能保证最终的一致性. -
Isolation(隔离性) : 事务之间不会相互影响.
Redis : 命令是顺序执行的,在一个事务中,执行期间会被其他客户端的命令所干扰 -
Durability(持久性) : 事务执行成功后将会写入磁盘并保证数据的完整性.
Redis支持持久化,但不保证数据的完整性
-
-
事务命令
- multi: 开启事务,用于标记事务块的开始,Redis会将后续的命令逐个放入队列中, 然后使用exec原子化地执行这个命令队列.
- exec: 执行命令队列
- discard: 清除队列中的命令
- watch: 监视key,如果这个期间发生了变化, 即使exec,也不会成功执行
当两个客户端操作一个key时,client 1 watch name:1 时,再开启事务,期间事务中执行了 set name:1 zhangsan ,set name:2 wangwu; 此时client 2执行命令 set name:1 lisi ;client 1 执行命令队列 exec , 会执行失败,因为 client 2 率先使用了 name:1 这个key,并且 client 1 中的 name:2 wangwu 会丢失. - unwatch: 清除监视key
- 慢查询日志
在redis.conf中配置
可以在redis后台进行临时设置,redis重启后失效,命令# 执行时间超过多少微秒的命令请求会被记录到日志上 0 :全记录 <0 不记录 # 默认10000毫秒(10s) slowlog-log-slower-than 10000 # 存储慢查询日志条数 slowlog-max-len # 默认存储 128 条,使用队列存储,先进先出(FIFO) slowlog-max-len 128
# 查看当前慢查询时间设置 config get slowlog-log-slower-than # 查看队列存储条数 config get slowlog-max-len # 设置慢查询时间 config set slowlog-log-slower-than 毫秒 # 设置队列存储条数 config set slowlog-max-len 条数
其他章节 -> 跳转
end...