Redis 一个内存数据库,通过 Key-Value 键值对的的方式存储数据。由于 Redis 的数据都存储在内存中,所以访问速度非常快,因此 Redis 大量用于缓存系统,存储热点数据,可以极大的提高网站的响应速度。
Redis通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Hash), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。
String 子串类型 常用基本操作
1.set 键 值 # ------------------------------------设置一个键和对应的值
127.0.0.1:6379> select 1 OK 127.0.0.1:6379[1]> set name 'www' OK 127.0.0.1:6379[1]> set name1 'eee' OK 127.0.0.1:6379[1]> set name2 'rrr' OK 127.0.0.1:6379[1]> keys * 1) "name2" 2) "name1" 3) "name"
2.get 键 #-------------------------------------获取一个键对应的值
127.0.0.1:6379[1]> get name "www" 127.0.0.1:6379[1]> get name1 "eee" 127.0.0.1:6379[1]> get name2 "rrr"
3.setnx 键 值 #---------------------------------设置一个不存在的键,若存在则返回0,设置失败
127.0.0.1:6379[1]> setnx name sss (integer) 0 127.0.0.1:6379[1]> setnx name3 sss (integer) 1 127.0.0.1:6379[1]> get name3 "sss"
4.setex 键 时间 值 #---------------------------设置一个键值得有效时间
127.0.0.1:6379[1]> setex name6 15 wwwwwwww OK 127.0.0.1:6379[1]> ttl name6 (integer) 10 127.0.0.1:6379[1]> ttl name6 (integer) 8 127.0.0.1:6379[1]> ttl name6 (integer) 5 127.0.0.1:6379[1]> ttl name6 (integer) -2
5.setrange 键 位置 值 #----------------------在键的指定位置插入值
127.0.0.1:6379[1]> setrange name6 0 zzzzzzzz (integer) 10 127.0.0.1:6379[1]> get name6 "zzzzzzzzww"
6.msetnx 键1 值1 键2 值2.... #--------------批量设置不存在的键值
127.0.0.1:6379[2]> msetnx we 'we' er 'er' rt 'rt' (integer) 1 127.0.0.1:6379[2]> get we "we" 127.0.0.1:6379[2]> get er "er" 127.0.0.1:6379[2]> get rt "rt"
7.getset 键 新值 #---------------------获取键值,并设置为新值
127.0.0.1:6379[2]> getset we ew "we" 127.0.0.1:6379[2]> get we "ew"
8.getrange 键 0 4 #---------------------获取指定范围位置上的值
127.0.0.1:6379[2]> set name '12345678' OK 127.0.0.1:6379[2]> getrange name 1 3 "234"
9.mget 键1 键2 .... #---------------------批量获取键对应的值
127.0.0.1:6379[2]> mget we er rt 1) "ew" 2) "er" 3) "rt"
10.incr 键 #---------------------为指定的键值做自加1操作
127.0.0.1:6379[2]> set id 12 OK 127.0.0.1:6379[2]> incr id (integer) 13 127.0.0.1:6379[2]> incr id (integer) 14 127.0.0.1:6379[2]> get id "14"
11.incrby 键 值 #----------------------设置指定键加上指定的值
127.0.0.1:6379[2]> incrby id 14 (integer) 28 127.0.0.1:6379[2]> get id "28"
12.decr 键 #----------------------指定键的值做自减1操作
127.0.0.1:6379[2]> decr id (integer) 27 127.0.0.1:6379[2]> decr id (integer) 26 127.0.0.1:6379[2]> get id "26"
13.decrby 键 值 #-----------------------设置指定的键值减去指定的值
127.0.0.1:6379[2]> decrby id 12 (integer) 14 127.0.0.1:6379[2]> get id "14"
14.append 键 值 #-----------------------给指定的键值追加
127.0.0.1:6379[2]> set name 'yuliang' OK 127.0.0.1:6379[2]> append name good (integer) 11 127.0.0.1:6379[2]> get name "yulianggood"
15.strlen 键 #-----------------------求键值的长度
127.0.0.1:6379[2]> strlen name (integer) 11