TP6操作redis
代码
//连接不同redis
$redis = Cache::store('redis')->handler();
// $redis = Cache::store('redis2')->handler();
//选择库 默认0
// $redis->select(1);
//字符串
//$redis->set('key1','hello');
//$val = $redis->get('key1');
//哈希
// $redis->hmset('hash_key',['name'=>'hello','sex'=>'girl']);
// $val = $redis->hget('hash_key','name');
// $val = $redis->hgetall('hash_key');
//列表list
// $redis->lpush('list_key','redis');
// $redis->lpush('list_key','mamache');
// $redis->lpush('list_key','mysql');
// $val = $redis->lrange('list_key',0,-1);
//集合
// $redis->del('set_key');
// $redis->sadd('set_key','redis');
// $redis->sadd('set_key','mongodb');
// $redis->sadd('set_key','mysql');
// $redis->sadd('set_key','mysql');
// $val = $redis->smembers('set_key');
//有序集合
// $redis->zadd('sorted_key',10,'redis');
// $redis->zadd('sorted_key',11,'mysql');
// $redis->zadd('sorted_key',101,'xxxx');
$val = $redis->zrevrange('sorted_key',0,-1,true);
dump($val);die;
RDB持久化(快照持久化):
RDB持久化是Redis默认的持久化机制。它会根据一定的时间间隔生成快照文件,将数据以二进制格式保存到磁盘上。在Redis重新启动时,可以从快照文件中还原数据。
a) 配置RDB持久化:
打开redis.conf文件并找到以下配置:
save 900 1
save 300 10
save 60 1000
这些配置表示:在900秒之后,如果至少有1个key发生了变化,则生成一个RDB文件;在300秒之后,如果至少有10个key发生了变化,则生成一个RDB文件;在60秒之后,如果至少有10000个key发生了变化,则生成一个RDB文件。
b) 启用RDB持久化:
将以下配置项的注释符号去掉,即可启用RDB持久化:
save 900 1
save 300 10
save 60 1000
c) 保存并关闭配置文件。
d) 重启Redis服务器。
RDB持久化可以将Redis的内存数据保存到磁盘上,但是在Redis重启后,只能恢复到最后一次生成的RDB文件时的状态。
AOF持久化(追加文件持久化):
AOF持久化会将Redis服务器收到的每个写命令追加到AOF文件的末尾。当Redis服务器重新启动时,它会重新执行AOF文件中的所有写命令,从而还原数据。
a) 配置AOF持久化:
打开redis.conf文件并找到以下配置:
appendonly yes
appendfilename "appendonly.aof"
将appendonly配置项的值修改为yes,即可启用AOF持久化。
b) 保存并关闭配置文件。
c) 重启Redis服务器。