一、redis基本含义: 是一个 NoSQL数据库 - Not Only SQL
1. Redis是一个开源的高性能键值对数据库
二、redis的特性:
多种数据类型存储:
内存存储与持久化
功能丰富
简单稳定
redis的使用
注册服务:
redis-server --service-install redis.windows.conf --loglevel verbose
卸载服务:
redis-server --service-uninstall
启动Redis:
redis-server --service-start
停止Redis:
redis-server --service-stop
1 状态
redis> PING
PONG
redis> SET test 123
OK
2 错误
redis> TEST
(error) ERR unknown command 'TEST‘
3 整数类型
redis> INCR test_incr
(integer) 1
4 字符串获取内容
redis> get test
"123"
5 多行字符串回复
redis> KEYS *
2.3. Redis的多数据库
Redis默认支持16个数据库,对外都是以一个从0开始的递增数字命名,可以通过参数databases来修改默认数据库个数。
Redis> SELECT test1
OK
Redis [test1]> GET test (这里因为没有输入内容)
(nil)
2.4 Redis的基本命令之EXISTS
判断一个键是否存在。
如果键存在则返回整数类型1,否则返回0。
语法:EXISTS key
示例:
127.0.0.1:6379> exists test
(integer) 1
127.0.0.1:6379> exists test1
(integer) 0
2.5 Redis的基本命令之DEL
删除键。
可以删除一个或多个键,返回值是删除的键的个数。
语法:DEL key [key …]
示例:
127.0.0.1:6379> del test
(integer) 1
127.0.0.1:6379> del test
(integer) 0
2.6 Redis的基本命令之TYPE
获得键值的数据类型。
返回值可能是string(字符串)、hash(散列类型)、list(列表类型)、set(集合类型)、zset(有序集合类型)。
语法:TYPE key [key …]
示例:
127.0.0.1:6379> set test 123
OK
127.0.0.1:6379> type test
string
2.7 Redis的基本命令之HELP
HELP命令是为重要的一个命令,因为我们不可能把每个命令都记住,在需要使用其他命令时可以先help一下。
Redis数据类型之字符串
字符串类型是Redis中最基本的数据类型,它能存储任何形式的字符串,包括二进制数据。可以存储JSON化的对象、字节数组等。一个字符串类型键允许存储的数据最大容量是512MB。
赋值与取值:
SET key value
GET key
127.0.0.1:6379> set test 123
OK
127.0.0.1:6379> get test
"123“
当键不存在时返回空结果。
3.1 递增数字
INCR key
当存储的字符串是整数时,Redis提供了一个实用的命令INCR,其作用是让当前键值递增,并返回递增后的值。
127.0.0.1:6379> incr num
(integer) 1
127.0.0.1:6379> incr num
(integer) 2
127.0.0.1:6379> incr num
(integer) 3
3.2 增加制定的整数
INCRBY key increment
示例:
127.0.0.1:6379> incrby num 2
(integer) 5
127.0.0.1:6379> incrby num 2
(integer) 7
127.0.0.1:6379> incrby num 2
(integer) 9
3.3 减少指定的整数
DECR key
DECRBY key decrement
示例:
127.0.0.1:6379> decr num
(integer) 6
127.0.0.1:6379> decr num
(integer) 5
127.0.0.1:6379> decrby num 3
(integer) 2
127.0.0.1:6379> decrby num 3
(integer) -1
3.4 获取字符串长度
STRLEN key
STRLEN命令返回键值的长度,如果键不存在则返回0。
127.0.0.1:6379> strlen str
(integer) 0
127.0.0.1:6379> set str hello
OK
127.0.0.1:6379> strlen str
(integer) 5
3.5 同时设置/获取多个键值
MSET key value [key value …]
MGET key [key …]
示例:
127.0.0.1:6379> mset k1 v1 k2 v2 k3 v3
OK
127.0.0.1:6379> get k1
"v1"
127.0.0.1:6379> mget k1 k3
1) "v1"
2) "v3"
清除生存时间
PERSIST key
示例:
127.0.0.1:6379> set test 123
OK
127.0.0.1:6379> EXPIRE test 60
(integer) 1
127.0.0.1:6379> TTL test
(integer) 56
127.0.0.1:6379> PERSIST test
(integer) 1
127.0.0.1:6379> TTL test
(integer) -1
注意:重新设置值也会清除生存时间。
生存时间设置单位为:毫秒
EXPIRE key milliseconds
示例:
127.0.0.1:6379> set test 123
OK
127.0.0.1:6379> PEXPIRE test 10000
(integer) 1
127.0.0.1:6379> TTL test
(integer) 7
127.0.0.1:6379> TTL test
(integer) 6
127.0.0.1:6379> TTL test
(integer) 5