Redis基础

概述&安装

Redis是一个基于内存的Key-Value高性能数据库。其只要特点:

  • Redis是基于内存的,所以性能极高,它能读的速度是110000次/s,写的的速度是81000次/s
  • 丰富的数据类型,支持Strings, Lists, Hashes, Sets, Ordered Sets数据结构
  • 支持持久化,RDB和AOF
  • 支持master-slave数据备份
  • Redis所有操作都是原子性的
  • 还支持很多特性,如publish/subsribe,通知,key过期等

安装

1
2
3
4
5
6
7
# ubuntu安装
$ sudo apt-get install redis-server
$ redis-server # 启动
$ redis-cli # 命令行客户端
$ redis 127.0.0.1:6379> ping # 查看是否启动
$ PONG
$ > shutdown

配置

配置文件详解

基本命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
# string
$ SET name 'wcg' # OK
$ GET name # 'wcg'
$ set name '1' # OK
$ incr name # (integer) 3 自动将字符串转为数值

# list 底层是链表
$ lpush mylist '1' # (integer) 1 返回元素个数
$ rpush mylist '2'
$ lrange mylist 0 1 # 1, 2
$ lrange mylist 0 -1

# set
$ sadd myset 'one' # (integer) 1
$ sadd myset 'two'
$ smembers myset # 'one' 'two' 列出所有元素
$ sismember myset 'one' # 判断是否存在,1, 0
$ sumion myset yourset # 对两个集合求并集

# zset
$ zadd myzset 1 apple # (integer) 1
$ zadd myzset 2 banana # (integer) 1
$ zrange myzset 0 -1 # 'apple', 'banana'
$ zrange myzset 0 -1 withscores # 'apple' '1' 'banana' '2'

# hash
$ HMSET user:001 username username wcg password 123 age 24 # OK
$ HGETALL user:001
$ HSET user:001 password 12345

# 发布订阅
$ SUBSCRIBE redisChat
# 另一个终端,发布信息
$ PUBLISH redisChat "wcg is a good man."

# 事务 MULTI, EXEC, DISCARD, WATCH
$ MULTI #标记事务开始
$ ... #一系列命令
$ EXEC #执行

# 数据备份
$ SAVE # dump.rdb

参考

https://code.ziqiangxuetang.com/redis/redis-intro.html
https://my.oschina.net/javagg/blog/471433

----------本文完,感谢您的阅读----------