Redis学习1之快速入门
微信公众号:IT程序猿进化史
Redis简介
redis是一个高性能的key-value数据库(可以理解成一个hashmap)
Redis安装
下载地址:https://github.com/MSOpenTech/redis/releases
将下载好的压缩包(Redis-x64-3.2.100.zip)解压到某目录下(D:\ redis)
打开cmd窗口,进入该目录
运行 redis-server.exe redis.windows.conf
为了方便起见,也可以将其路径加入到环境变量当中
出现如上图所示,则服务器启动成功。
当前窗口不要关闭,打开另一个新的窗口,进入该目录
运行 redis-cli.exe -h 127.0.0.1 -p 6379
出现如上图所示,则客户端启动成功。
下面可以先跑一个例子测试一下
存入一个新的键值对,set key test (key 是键,test是值)
然后再取出, get key
Redis 配置
可以通过输入命令config get * 获得当前所有配置
如果希望能够对某一项配置进行设置的话,可以输入命令 config set key(key 为配置项的名称)
例如可以通过config get bink获取绑定的ip地址
Redis 数据类型
redis 支持五种数据类型
- string 字符串
- hash 哈希
- list 列表
- set 集合
- sorted set 有序集合
string
sring 数据类型是最基本的数据类型
1
2
3
4
|
redis 127.0.0.1:6379> SET name "root"
OK
redis 127.0.0.1:6379> GET name
"root"
|
一般使用set 和get 命令对其进行操作
hash
hash 数据类型一般用于存储对象,它的Key 可能是一个人的姓名, 而value则是一个人的基本信息,包括性别,年龄,电话号码等等
1
2
3
4
5
6
7
8
9
|
127.0.0.1:6379> HMSET student sex "male" age 10 phone 123456
OK
127.0.0.1:6379> HGETALL student
1) "sex"
2) "male"
3) "age"
4) "10"
5) "phone"
6) "123456"
|
我们可以通过使用HMSET 一次性把所有的属性添加至key所对应的哈希表中
然后通过HGETALL一次性把所有的属性从哈希表中取出
也可以单独使用
HGET KEY FIELD 单独获取某个哈希表的某一项
HSET KEY FIELD VALUE 单独设置某个哈希表的某一项
list
list 数据类型是一个简单的列表,按照用户插入的顺序进行排序
1
2
3
4
5
6
7
8
9
10
11
|
redis 127.0.0.1:6379> LPUSH students “bob”
(integer) 1
redis 127.0.0.1:6379> LPUSH students “alice”
(integer) 2
redis 127.0.0.1:6379> LPUSH students “jack”
(integer) 3
redis 127.0.0.1:6379> LRANGE students 0 10
1) "jack"
2) "alice"
3) "bob"
|
在上述例子中,我们使用LPUSH KEY VALUE 将新值插入到列表头部,然后使用LRANG KEY START STOP 来输出一定下标范围内的所有值
我们还可以使用
LPOP key 移出并获取列表的第一个元素
RPUSHX key value 在列表的末尾添加一个新的元素
RPOP key 移除并获取列表最后一个元素
set
set是string类型的无序集合,既然是集合,那么其中的元素则必然是唯一的,不能出现重合的元素,如果添加了重复的元素进去,不会报错
1
2
3
4
5
6
7
8
|
redis 127.0.0.1:6379> SADD student 1
(integer) 1
redis 127.0.0.1:6379> SADD student “new”
(integer) 1
redis 127.0.0.1:6379> SMEMBERS student
1) "new"
2) "1"
|
我们使用SADD key member 添加一个元素
并使用SMEMBERS key 来获取所有集合中的元素
sorted set
sorted set 有序集合和普通的集合一样,都是不允许有重复的元素存在,但是不一样的是,有序集合中的元素都会关联一个数值,redis通过该值为集合中的元素进行排序
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
redis 127.0.0.1:6379> ZADD student 5 bob
(integer) 1
redis 127.0.0.1:6379> ZADD student 2 alice
(integer) 1
redis 127.0.0.1:6379> ZADD student 7 jack
(integer) 1
redis 127.0.0.1:6379> ZRANGE runoobkey 0 10 WITHSCORES
1) "alice"
2) "2"
3) "bob"
4) "5"
5) "jack"
6) "7"
|
以上例子中,我们通过ZADD key score member 来为一个有序集合添加一个元素并绑定一个分数,并通过ZRANGE key start stop WITHSCORES 来通过下边范围获取相应的元素
微信公众号:IT程序猿进化史
详情请查看本人博客:点击打开链接