Redis的其他操作

其他shell

        keys pattern查询匹配的key

        exists key查询是否存在key
        del key删除一个key

        expire key time 设置已存在的键的过期时间

        select 0 选择数据库0一共是0-15这些数据库,默认是0数据库

        move key 1 将key移动到数据库1中

        persist key 移除已经设置了的过期时间

        rename key1 key2 将key1重命名为key2

        type key 查看key的数据类型

        dbsize 显示本数据库下的键的个数

        flushdb 清空当前数据库

        常用的针对于所有数据类型的shell操作,如检查key是否存在,移除key,清空整个数据库等
        

安全性

        设置密码:配置文件中找到requirepass 取消注释然后添加密码到这个地方,重新启动.

        登录的时候用auth xxxx然后就可以操作了
        

分布式

        主从模式:
            主机不需要配置,从机调整配置文件slaveof部分来指定主服务器的ip和端口,masterauth xxx指定主机密码,没有则忽略
        

事务

            multi开始事务 exec顺序执行全部 discard取消事务,事务回滚

            但是事务的执行有缺陷,就是出错的时候不会回滚,只执行正确的地方,错误的就不管了。

            只能通过discard进行回滚,未能捕捉执行过程中的错误,这是一个缺陷。因而只能执行简单的事务。

            watch key监视key,监视过程中有其他终端进行了修改这个key,那么本终端是无法对key进行修改操作,watch只能通过unwatchdiscard进行撤销

            redis的事务是鸡肋般的存在,少用!
        

持久化

            快照方式(默认):有个900s超过一次修改会保存一次,300s超过10次,60s超过10000次都会保存。
            但是问题在于在这个间隔内宕机了就会丢掉数据。

            aof方式,则是每次修改进行一次保存,修改配置文件appendonly 改为yes,然后修改appendfsync的参数有三种选择,立即,1s和no,aof文件存储的是操作不是数据本身。