注意 Laravel 清除缓存 PHP artisan cache:clear 的使用

Laravel 的命令 php artisan cache:clear 用来清除各种缓存,如页面,Redis,配置文件等缓存,它会清空 Redis 数据库的全部数据,比如默认使用的 Redis 的数据库是 db0,那么执行这个命令后,会清空 db0 中所有数据。

如果你的 Laravel 应用和其他的应用或服务都在同一个 Redis 的相同 db 中,就要注意这种情况避免清除 Redis 缓存把其他要用的数据也清空了,可以分开使用不同的 db,或者不同的 Redis 实例。

'redis' => [

    'cluster' => false,

    'default' => [
        'host' => env('REDIS_HOST', '127.0.0.1'),
        'password' => env('REDIS_PASSWORD', null),
        'port' => env('REDIS_PORT', 6379),
        'database' => 4,
    ],

    'session' => [
        'host' => env('REDIS_HOST', '127.0.0.1'),
        'password' => env('REDIS_PASSWORD', null),
        'port' => env('REDIS_PORT', 6379),
        'database' => 4,
    ],

],

这样就指定 Laravel 使用哪个具体的 Redis 数据库,如 db1,db2 等。

(原文链接:https://blog.tanteng.me/2017/05/laravel-ca...)

本作品采用《CC 协议》,转载必须注明作者和本文链接
本帖由 Summer 于 6年前 加精
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 10

@JokerLinly 对,都介绍了怎么指定Redis数据库的用法,不过这篇强调的是这种情形下要注意cache:clear会清空的是整个数据库,如果跟其他应用一起要分开。

6年前 评论

配置文件缓存cache:clear不会清除吧

6年前 评论

@kylesean
/bootstrap/cache这下面的缓存都会清理

6年前 评论

清楚配置文件也有专门命令 config:clear
bootstrap/cache下还可以有路由缓存文件,也有专门命令 route:clear

PS: 抓鸡党,原谅我没有高亮 : )

6年前 评论

@JimChen 这篇说的是清除Redis缓存,不是配置缓存

6年前 评论

cache:clear包含了config:clear,xxx:clear等等吗?还是有单独的命令的这些clear,与cache:clear是分开清理的?

6年前 评论

好危险,连 redis 都清空了

6年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!