Redis 基础教程

Redis 命令

Redis 高级教程

Redis 笔记

original icon
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.knowledgedict.com/tutorial/redis-command-script-debug.html

Redis SCRIPT DEBUG 命令

Redis 脚本 Redis 脚本


Redis SCRIPT DEBUG 命令使用 EVAL 可以开启对脚本的调试。Redis 包含完整 Lua Debugger 和 codename LDB,这大大降低了复杂脚本编写的难度。在调试模式下,Redis 既做调试服务器又做客户端,像 redis-cli 可以单步执行,设置断点,观察变量等等。

命令格式

SCRIPT DEBUG YES|SYNC|NO

可用版本:>=3.2.0

时间复杂度:O(1)

注意:使用开发环境 Redis 服务器调试 Lua 脚本,避免在生产环境 Redis 服务器调试。

LDB 可以设置成两种模式:同步和异步。异步模式下,服务器会创建新的调试连接,不阻塞其他连接,同时在调试连接结束后会回滚所有的数据修改,这可以保证再次调试时初始状态不变。同步模式下,调试过程中,服务器其他连接会被阻塞,当调试结束后,所有的数据修改会被保存。

  • YES:打开非阻塞异步调试模式,调试 Lua 脚本(回退数据修改)
  • SYNC:打开阻塞同步调试模式,调试 Lua 脚本(保留数据修改稿)
  • NO:关闭脚本调试模式

返回值

返回 OK

Redis DEBUG OBJECT 命令是一个调试命令,它不应被客户端所使用,应该用 OBJECT 命令代替。 ...
Redis DEBUG SEGFAULT 命令执行一个非法的内存访问从而让 Redis 崩溃,仅在开发时用于 BUG 调试。 ...
Redis SCRIPT EXISTS 命令检查脚本是否存在脚本缓存里面。 ...
Redis SCRIPT KILL 命令杀死当前正在运行的 Lua 脚本,当且仅当这个脚本没有执行过任何写操作时,这个命令才生效。这个命令主 ...
Redis SCRIPT LOAD 命令将脚本 script 添加到脚本缓存中,但并不立即执行该脚本。在脚本被加入到缓存之后,通过 EVAL ...