Redis是一个开源的内存中键值数据存储。Redis有几个命令,可让您即时更改Redis服务器的配置设置。本教程将介绍其中一些命令,并说明如何使这些配置更改生效。
本指南以备有完整示例的备忘单形式编写。我们鼓励您跳至与您要完成的任务相关的任何部分。
本指南中显示的命令已在运行Redis版本4.0.9的Ubuntu 18.04服务器上进行了测试。要设置类似的环境,您可以按照我们的指南
如何在Ubuntu 18.04上安装和保护Redis的
步骤1进行操作。我们将通过使用Redis命令行界面运行它们来演示这些命令的行为。请注意,如果您使用其他Redis界面(例如
Redli),则某些命令的确切输出可能会有所不同。
redis-cli
请注意,托管Redis数据库通常不允许用户更改配置文件。如果您正在使用DigitalOcean的托管数据库,则本指南中概述的命令将导致错误。
本节中概述的命令将仅在当前会话期间或直到您运行之前更改Redis服务器的行为,
config rewrite这将使它们持久化。您可以通过使用首选文本编辑器打开和编辑Redis配置文件来直接更改它。例如,您可以
nano这样做:
sudo nano /etc/redis/redis.conf
警告:该
config set命令
被认为是危险的。通过更改Redis配置文件,有可能导致Redis服务器以意外或不良方式运行。我们建议仅在
config set测试命令的行为或绝对确定要对Redis配置进行更改时才运行该命令。
config set允许您在运行时重新配置Redis,而无需重新启动服务。它使用以下语法:
config set parameter value
例如,如果要更改运行
save命令后Redis将产生的数据库转储文件的名称,则可以运行如下命令:
config set "dbfilename" "new_file.rdb"
如果配置更改有效,则命令将返回
OK。否则将返回错误。
注意:并非
redis.conf文件中的每个参数都可以通过
config set操作来更改。例如,您不能更改
requirepass参数定义的身份验证密码。
config set不会更改Redis实例的配置文件;它仅在运行时更改Redis的行为。要
redis.conf在运行
config-set命令后进行编辑并使当前会话的配置持久化,请运行
config rewrite:
config rewrite
此命令将尽最大努力保留原始
redis.conf文件的注释和整体结构,而只需进行最小的更改即可匹配服务器当前使用的设置。
就像
config set,如果重写成功
config rewrite将返回
OK。
要读取Redis服务器的当前配置参数,请运行
config get命令。
config get只有一个参数,其可以是在使用的参数中的任一个完全匹配
redis.conf或
水珠图案)。例如:
config get repl*
根据您的Redis配置,此命令可能返回:
Output 1) "repl-ping-slave-period" 2) "10" 3) "repl-timeout" 4) "60" 5) "repl-backlog-size" 6) "1048576" 7) "repl-backlog-ttl" 8) "3600" 9) "repl-diskless-sync-delay" 10) "5" 11) "repl-disable-tcp-nodelay" 12) "no" 13) "repl-diskless-sync" 14) "no"
您还可以
config set通过运行返回所有支持的配置参数
config get *。
本指南详细介绍了
redis-cli用于动态更改Redis服务器的配置文件的命令。如果您想在本指南中概述其他相关的命令,参数或过程,请在下面的评论中提出疑问或提出建议。
有关Redis命令的更多信息,请参阅关于 如何管理Redis数据库的系列教程。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70048690/viewspace-3176330/ ,如需转载,请注明出处,否则将追究法律责任。