Redis学习笔记(一)--redis安装和字符串命令详解

1.Redis是什么?

是一个高级的key-value存储系统,用来存储哈希结构,字符串,集合,有序集合,链表,因此通常用来提供数据结构服务。

2.redis和memcached相比的特别之处:

1.redis可以用来做存储(storge),而memcached用来做缓存(cache),这主要得益于redis的“持久化”功能;

2.存储的数据有“结构”,memcached只能存储一种数据类型--“字符串”,而redis可以用来存储哈希结构,字符串,集合,有序集合,链表

3.redis安装(make install)以后的目录下(各文件的含义):

redis-benchmark  :redis的性能测试工具

redis-check-aof  :检查aof的日志

redis-check-dump  :检查rdb日志

redis-cli  :连接用的客户端

redis-server:redis服务进程

4.想让redis后台运行:

编辑conf配置文件,修改daemonize为yes

5.通用键值操作:

1.set,get,keys pattern(查看相关key, 可以模糊查找比如只找s开头的, keys s*, 也可以通配(keys  sit[ey], keys s?ty))

2.randomkey 返回随机key(相当于抽奖)

3.type key查看数据类型

4.exists key 判断某个key是否存在

5.del key 删除key

6.rename key newkey 改名

7.renamex key newkey如果newkey存在失败,反之成功

8.move key db(redis 默认提供16服务器)

9.select num (选择服务器)

10.设置生命周期expire key time(秒)   expire key time(毫秒)不存在key返回-2 过期-1

11.查询生命周期:ttl key                         pttl key    

12.persist key 把key设置为永久有效

6.具体数据类型的操作:

-----------1.字符串类型的操作

1.set key value [ex 秒数] / [px 毫秒数]   [nx]/[xx] 

nx:检测key是否存在,存在失败,不存在创建

xx:检测key是否存在,存在修改,没有不能创建

同时用ex,px则以后面的时间为止。

2.mset 同时设置多个key, mget一次获取多个key

3.setrange key offset(整数)str 设置从key的offset处修改为str,会覆盖,如果offset>strlen(key)补'\0'

4.append key value 把value追加到key的原值上

5.getrange key start stop获取key的value中[start, stop]的字符串。

6.getset key newvalue获取旧值,设置新值

7.incr key key的value+1

8.decr key key的value-1(这里就会想到双十一的秒杀,并不是直接在数据库中下单,这就可以用redis内存数据库让用户抢一个资格,等用户资格抢到以后再可以排队进数据库下单)

9.incrby key num  ;decrby key num;  incrbyfloat key floatnum ;decrbyfloat key floatnum

10.setbit key offset value可以用于大小写转换(位操作,在2^5位置设置为1或者0因为大小写差32)这里要注意offset的范围2^32 -1. 这里key最大2^32/8字节 也就是512M(32位机)

11.bitop operation(and \or\not\xor) destkey key






你可能感兴趣的:(Redis学习笔记(一)--redis安装和字符串命令详解)