一、设置密码验证:
使用文本编辑器,这里使用Notepad++,打开Redis服务配置文件。
注意:不要找错了,通常为redis.windows-service.conf,而不是redis.windows.conf。后者是以非系统服务方式启动程序使用的配置文件。
找到含有requirepass字样的地方,追加一行,输入requirepass 12345。
这是访问Redis时所需的密码,一般测试情况下可以不用设定密码。
不过,即使是作为本地访问,也建议设定一个密码。此处以简单的12345来演示。
点击“开始”>右击“计算机”>选择“管理”。在左侧栏中依次找到并点击“计算机管理(本地)”>服务和应用程序>服务。再在右侧找到Redis名称的服务,查看启动情况。如未启动,则手动启动之。
正常情况下,服务应该正常启动并运行了。
二、验证服务是否启动命令:
三、Redis哈希(Hash)
1、Redis Hincrby命令:
(1)说明:
Redis Hincrby 命令用于为哈希表中的字段值加上指定增量值。
增量也可以为负数,相当于对指定字段进行减法操作。
如果哈希表的 key 不存在,一个新的哈希表被创建并执行 HINCRBY 命令。
如果指定的字段不存在,那么在执行命令前,字段的值被初始化为 0 。
对一个储存字符串值的字段执行 HINCRBY 命令将造成一个错误。
本操作的值被限制在 64 位(bit)有符号数字表示之内。
(2)语法:
redis 127.0.0.1:6379> HINCRBY KEY_NAME FIELD_NAME INCR_BY_NUMBER ;
命令执行后,返回哈希表中字段的值;
(3)实例:
2、Redis Hincrbyfloat命令:
(1)说明:
Redis Hincrbyfloat 命令用于为哈希表中的字段值加上指定浮点数增量值。
如果指定的字段不存在,那么在执行命令前,字段的值被初始化为 0 。
(2)语法:
redis 127.0.0.1:6379> HINCRBYFLOAT KEY_NAME FIELD_NAME INCR_BY_NUMBER ;
命令执行后,返回哈希表中字段的值
(3)实例:
实际执行的结果:
3、Redis Hkeys命令:
(1)说明:Redis Hkeys 命令用于获取哈希表中的所有域(field)
(2)语法:redis 127.0.0.1:6379> HKEYS key ;返回哈希表中所有域(field)列表;当key不存在时,返回一个空列表
(3)实例:
4、Redis Hlen命令
(1)说明:Redis Hlen 命令用于获取哈希表中字段的数量。
(2)语法:redis 127.0.0.1:6379> HLEN KEY_NAME;返回哈希表中字段的数量;当key不存在时,返回0;
(3)实例:
5、Redis Hmget命令:
(1)说明:Redis Hmget 命令用于返回哈希表中,一个或多个给定字段的值。如果指定的字段不存在于哈希表,那么返回一个 nil 值。
(2)语法:redis 127.0.0.1:6379> HMGET KEY_NAME FIELD1...FIELDN ;返回一个包含多个给定字段关联值的表,表值的排列顺序和指定字段的请求顺序一样
(3)实例:
redis 127.0.0.1:6379> HSET myhash field1 "foo"(integer) 1
redis 127.0.0.1:6379> HSET myhash field2 "bar"(integer) 1
redis 127.0.0.1:6379> HMGET myhash field1 field2 nofield1) "foo"2) "bar"3) (nil)
6、Redis Hmset命令
(1)说明:Redis Hmset 命令用于同时将多个 field-value (字段-值)对设置到哈希表中;此命令会覆盖哈希表中已存在的字段;如果哈希表不存在,会创建一个空哈希表,并执行 HMSET 操作。
(2)语法:redis 127.0.0.1:6379> HMSET KEY_NAME FIELD1 VALUE1 ...FIELDN VALUEN ;命令执行成功,返回OK
(3)实例:
redis 127.0.0.1:6379> HMSET myhash field1 "Hello" field2 "World"
OK
redis 127.0.0.1:6379> HGET myhash field1"Hello"
redis 127.0.0.1:6379> HGET myhash field2"World"
7、Redis Hset命令:
(1)说明:Redis Hset 命令用于为哈希表中的字段赋值 。如果哈希表不存在,一个新的哈希表被创建并进行 HSET 操作。如果字段已经存在于哈希表中,旧值将被覆盖。
(2)语法:redis 127.0.0.1:6379> HSET KEY_NAME FIELD VALUE ;如果字段是哈希表中的一个新建字段,并且值设置成功,返回1;如果哈希表域字段已经存在且旧值已经被新值覆盖,返回0
(3)实例:
redis 127.0.0.1:6379> HSET myhash field1 "foo"
OK
redis 127.0.0.1:6379> HGET myhash field1"foo"
redis 127.0.0.1:6379> HSET website google "www.g.cn" # 设置一个新域(integer) 1
redis 127.0.0.1:6379>HSET website google "www.google.com" # 覆盖一个旧域(integer) 0
8、Redis Hsetnx命令
(1)说明:Redis Hsetnx 命令用于为哈希表中不存在的的字段赋值 。如果哈希表不存在,一个新的哈希表被创建并进行 HSET 操作。如果字段已经存在于哈希表中,操作无效。如果 key 不存在,一个新哈希表被创建并执行 HSETNX 命令。
(2)语法:redis 127.0.0.1:6379> HSETNX KEY_NAME FIELD VALUE;设置成功,返回1;如果给定字段已经存在且没有操作被执行,返回0
(3)实例:
redis 127.0.0.1:6379> HSETNX myhash field1 "foo"(integer) 1
redis 127.0.0.1:6379> HSETNX myhash field1 "bar"(integer) 0
redis 127.0.0.1:6379> HGET myhash field1"foo"
redis 127.0.0.1:6379> HSETNX nosql key-value-store redis(integer) 1
redis 127.0.0.1:6379> HSETNX nosql key-value-store redis # 操作无效, key-value-store 已存在(integer) 0
9、Redis Hvals命令:
(1)说明:Redis Hvals 命令返回哈希表所有域(field)的值。
(2)语法:redis 127.0.0.1:6379> HVALS KEY_NAME FIELD VALUE ;一个包含哈希表所有域(field)值的列表;当key不存在时,返回一个空表;
(3)实例:
redis 127.0.0.1:6379> HSET myhash field1 "foo"(integer) 1
redis 127.0.0.1:6379> HSET myhash field2 "bar"(integer) 1
redis 127.0.0.1:6379> HVALS myhash1) "foo"2) "bar"# 空哈希表/不存在的key
redis 127.0.0.1:6379> EXISTS not_exists(integer) 0
redis 127.0.0.1:6379> HVALS not_exists(empty list or set)
10、HSCAN key cursor [MATCH pattern] [COUNT count] :迭代哈希表中的键值对。