Redis是由意大利人Salvatore Sanfilippo(网名:antirez)开发的一款内存高速缓存数据库。Redis全称为:Remote Dictionary Server,该软件使用C语言编写,Redis是一个key-value存储系统,它支持丰富的数据类型,如:string、list、set、zset(sorted set)、hash。
- Redis特点:
Redis以内存作为数据存储介质,所以读写数据的效率极高,远远超过数据库。 - Redis应用场景:
因为Redis交换数据快,所以在服务器中常用来存储一些需要频繁调取的数据,这样可以大大节省系统直接读取磁盘来获得数据的I/O开销,更重要的是可以极大提升速度。
将这种热点数据存到Redis(内存)中,要用的时候,直接从内存取,极大的提高了速度和节约了服务器的开销。
安装redis: sudo apt-get install redis-server 修改配置文件: /etc/redis/redis.conf 找到 requirepass,去掉行前的注释,把foobared改成自己的密码 重启redis服务: sudo service redis-server restart 启动redis客户端: redis-cli 认证: 如果输入命令时出现“NOAUTH Authentication required.”,则说明需要认证,输入指令完成认证 auth "yourpassword" 提示OK说明认证成功 数据类型: key 有五种数据类型:string、list、set、zset(sorted set)、hash。 value:都是string类型的 string类型: 设置,set KEY VALUE 例: ( set name 'jack' ) 获取,get KEY 例: ( get name ) 查看过期时间: ttl KEY 例: ( ttl name ) -1 表示永久 -2 表示 不存在 设置过期时间: 给已经存在 key,设置过期时间 expire KEY SECONDS 例: ( expire name 20 ) 设置 key的同时,设置过期时间 set KEY VALUE ex SECONDS 例: ( set age 18 ex 20 ) 或 setex KEY SECONDS VALUE 例: ( setex sex 20 '男' ) 设置过期时间之后,通过ttl查看,可以看到过期时间逐渐减小,当减到0之后,变为-2,此时去查看KEY的值,得到的是nil 追加: 给已有的KEY,再添加新的值 append KEY VALUE 例: (append name love) redis 里面所有的 value。 都是字符串类型的,追加的部分会在原字符串尾部添加进去。 批量设置string: mset KEY VALUE KEY VALUE .. 例: (mset username 'john' password '123') 批量获取string: mget KEY KEY KEY ... 例: (mset username password name) key 操作: 查看所有的key keys * *是通配符,也可以使用n*来获取n开头的key 删除key del KEY 例: (del name) 查看key是否存在 ,存在返回 1, 不存在返回 0 exists KEY 查看key类型 type key 运算: set num 5 # 自动识别字符串里面的 整数 整数加一 incr KEY 例 (incr num) 整数减一 decr KEY 例 (decr num) 整数加值 incrby KEY INCREMENT 例 (incrby num 50) 整数减值 decrby KEY INCREMENT 例 (decrby num 50)