Redis的配置与常见命令介绍及故障排除

对于Redis原理和产生背景就不具体介绍了,本次使用的是window版本的redis,虽然是基于window的但是常见配置命令与linux是一致的。

一、Redis的启动与配置文件配置

  1. Redis支持本地命令行启动及windows服务启动

    如果使用命令行启动,进入CMD,进入redis的目录,执行如下命令:

    redis-server.exe redis.windows.conf,出现下图显示表示启动成功了。

    步骤:cmd>e: 回车,cd 目录名 回车,赋值上面命令启动

    有些高版本系统可能需要 .\ 在redis-server.exe redis.windows.conf 才能启动。

    有些系统直接双击文件夹中的redis.exe就可以直接启动。

  2. 两个重要的配置文件redis.windows.conf和redis.windows-service.conf说明

    redis根目录下的两个配置文件:redis.windows.conf和redis.windows-service.conf,两个配置文件一个是针对命令行启动进行配置,一个是针对window服务的启动方式进行配置。建议连个配置中配置信息要一致且同步去配置否则切换启动方式时就会对原来的应用连接造成报错。

    A、配置Redis 允许远程连接
    在配置文件的bind命令设置多个ip用空格隔开,只有用bind命令设置的ip才能远程访问,否则默认只能127.0.0.1访问,书写方式为:

	bind 192.168.0.3  192.168.1.123  ...
使用bind命令设置多个ip可访问redis。
设置bind命令后,还需要关闭默认保护,在conf配置文件中将
protected-mode yes 
改成
protected-mode no
如果以上两步都设置了,当远程客户端连接redis时报错:

Error: 磁盘在使用中,或被另一个进程锁定 时,说明配置没有成功启用,需要在本地打开redis-cli.exe,打开连接后界面显示127.0.0.1:6379>后使用下面命令进行配置,配置显示ok就代表成功

	config set protected-mode no

B、设置密码

配置文件中使用如下命令设置密码
	requirepass  abc23
如果设置密码重启redis后密码没有生效则,说明配置没有成功启用,需要在本地打开redis-cli.exe,打开连接后界面显示127.0.0.1:6379>后使用下面命令进行配置,配置显示ok就代表成功。
	config set requirepass  abc123

C、使用客户端连接本机或远程redis的方法
客户端连接方法:

	redis-cli -h localhost -p 6379
	提供host为localhost ip,端口为6379

	带密码的客户端连接方法一(localhost是要连接主机的ip):
	redis-cli -h localhost -p 6379 monitor -a 123456
	监控host为localhost,端口为 6379  -a 为连接密码

	密码验证方法二:
	先使用命令行输入(localhost是要连接主机的ip):
	redis-cli -h localhost -p 6379
再输入密码验证
	auth 123456   
123456是密码

具体命令输入参见: 

事例

也可以使用windows下的客户端软件:Redis Desktop Manager

D、重新载入配置

	重新载入配置时若一直是在redis界面,修改如下参数后重新载入即可
	daemonize yes

二、Redis的常用命令

常用命令可以直接在客户端使用

  • keys
 KEYS pattern

查找所有符合给定模式 pattern 的 key 。

KEYS * 匹配数据库中所有 key 。
KEYS h?llo 匹配 hello , hallo 和 hxllo 等。
KEYS h*llo 匹配 hllo 和 heeeeello 等。
KEYS h[ae]llo 匹配 hello 和 hallo ,但不匹配 hillo 。
keys命令事例

  • set
	SET key value [EX seconds] [PX milliseconds] [NX|XX]

将字符串值 value 关联到 key 。

如果 key 已经持有其他值, SET 就覆写旧值,无视类型。

对于某个原本带有生存时间(TTL)的键来说, 当 SET 命令成功在这个键上执行时, 这个键原有的 TTL 将被清除。

可选参数

从 Redis 2.6.12 版本开始, SET 命令的行为可以通过一系列参数来修改:

EX second :设置键的过期时间为 second 秒。 SET key value EX second 效果等同于 SETEX key second value 。
PX millisecond :设置键的过期时间为 millisecond 毫秒。 SET key value PX millisecond 效果等同于 PSETEX key millisecond value 。
NX :只在键不存在时,才对键进行设置操作。 SET key value NX 效果等同于 SETNX key value 。
XX :只在键已经存在时,才对键进行设置操作。
set命令事例

  • get
	GET key

返回 key 所关联的字符串值。

如果 key 不存在那么返回特殊值 nil 。

假如 key 储存的值不是字符串类型,返回一个错误,因为 GET 只能用于处理字符串值。
get命令事例

更多Redis命令请参考具体命令

三、将Redis配置成windows服务

可以参见redis文件夹中的Windows Service Documentation.docx文件。
1、使用命令行进入redis的目录后,使用如下命令安装windows服务
	redis-server --service-install redis.windows-service.conf --loglevel verbose
注意必须安装redis.windows-service.conf这个配置文件,因为这个配置文件中比redis.windows.conf多了一个指定日志输出的命令:
	logfile "server_log.txt"
代表日志输出到server_log.txt文件中。
有些版本logfile命令指定输出到

在这里插入图片描述
解决方案: 在 redis.windows-service.conf 所在目录 新建一个目录 Logs 然后在启动 Redis 服务就可以了,否则启动服务是报错1067.
另外使用windows服务,bind命令后只能使用127.0.0.1 及本地ip地址。绑定局域网其他地址时可能会提示1067错误。
2、卸载【redis】服务
redis-server --service-uninstall --service-name redistest
注意卸载的服务名称为 redistest
3、启动及停止服务
启动命令:

	redis-server --service-start
停止命令:
	redis-server --service-stop
4、安装多个实例
	redis-server --service-install –service-name redisService1 –port 10001
	redis-server --service-start –service-name redisService1
	redis-server --service-install –service-name redisService2 –port 10002
	redis-server --service-start –service-name redisService2
	redis-server --service-install –service-name redisService3 –port 10003
	redis-server --service-start –service-name redisService3

针对redis的使用及安装最好参见文件夹中自带的两个docx文件。

猜你喜欢

转载自blog.csdn.net/u011930054/article/details/108994823