正如你所知道的,redis可能有几个数据库,在我的laravel设置中,我定义了其中的3个,并且至少使用了2个
'0' (default) '1' (cache) '2' (queue)
这是我在config/database.php中设置的此外,由于某些需要,我清除所有缓存使用 flushall() 方法:
flushall()
@Cache::flush(); @Redis::flushall();
但是,它也清除了队列作业,这不是我想要的。有没有办法只刷新数据库0和数据库1,而不刷新 db2 ?
omhiaaxx1#
您可以同时使用select和flushdb命令来只刷新选定的数据库。选择具有指定的基于零的数字索引的redis逻辑数据库。新连接始终使用数据库0。删除当前选定数据库的所有键。下面将选择数据库 1 先冲后冲 1 .
1
Redis::select(1); Redis::flushdb();
它将在redis中执行以下命令:;
1596794331.068032 [0 127.0.0.1:55088] "SELECT" "1" 1596794331.071332 [1 127.0.0.1:55088] "FLUSHDB"
1条答案
按热度按时间omhiaaxx1#
您可以同时使用select和flushdb命令来只刷新选定的数据库。
选择具有指定的基于零的数字索引的redis逻辑数据库。新连接始终使用数据库0。
删除当前选定数据库的所有键。
下面将选择数据库
1
先冲后冲1
.它将在redis中执行以下命令:;