redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的 *** 作,而且这些 *** 作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改 *** 作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。
MULTI
说明:
标记一个事务块的开始。
事务块内的多条命令会按照先后顺序被放进一个队列当中,最后由 EXEC 命令原子性(atomic)地执行。
返回值:
总是返回 OK 。
示例:
DISCARD
说明:
取消事务,放弃执行事务块内的所有命令。
如果正在使用 WATCH 命令监视某个(或某些) key,那么取消所有监视,等同于执行命令 UNWATCH 。
返回值:
总是返回 OK 。
示例:
WATCH
说明:
监视一个(或多个) key ,如果在事务执行之前这个(或这些) key 被其他命令所改动,那么事务将被打断。
返回值:
总是返回 OK 。
UNWATCH
说明:
取消 WATCH 命令对所有 key 的监视。
如果在执行 WATCH 命令之后, EXEC 命令或 DISCARD 命令先被执行了的话,那么就不需要再执行 UNWATCH 了。
因为 EXEC 命令会执行事务,因此 WATCH 命令的效果已经产生了;而 DISCARD 命令在取消事务的同时也会取消所有对 key 的监视,因此这两个命令执行之后,就没有必要执行 UNWATCH 了。
返回值:
总是返回 OK 。
EXEC
说明:
执行所有事务块内的命令。
假如某个(或某些) key 正处于 WATCH 命令的监视之下,且事务块中有和这个(或这些) key 相关的命令,那么 EXEC 命令只在这个(或这些) key 没有被其他命令所改动的情况下执行并生效,否则该事务被打断(abort)。
返回值:
事务块内所有命令的返回值,按命令执行的先后顺序排列。
当 *** 作被打断时,返回空值 nil 。
示例:
Redis 提供了简单的事务,之所以说它简单,主要是因为它不支持事务中的回滚特性,同时无法实现命令之间的逻辑关系计算,当然也体现了 Redis 的 “keep it simple” 的特性。
1、config get requirepass 获取当前Redis的连接密码
2、CONFIG GET dir 启动的redis路径
3、config set requirepass "123123" 设置当前Redis的连接密码
4、auth 123123 密码验证
5、save 立刻持久化数据到dump.rdb文闭野件中 只管保存,其它不管,全部阻塞
6、bgsave Redis会在后台异步进行快轿答喊照 *** 作 可以通过lastsave 命令获取最后一次成功执行快照的时间
7、flushall 也会产生dump.rdb文件,但是里面是空的,无意义。
8、AOF 是以日志的形式记录每个 写 *** 作,AOF和RDB同时存在时,先使用举察AOF
9、redid-check-aof --fix append only.aof 修复AOF文件
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)