意义 | 命令 |
---|---|
连接redis | redis-cli -h 127.0.0.1 -p 6379 |
查看key的数量 | DBSIZE |
获取值 | ds_get key1;get key1 |
设置key | set key1 value1 |
获取所有key | keys * |
删除key | del key1 |
判断是否存在 | exists key |
设置过期时间(秒) | expire key 1 |
设置过期时间(毫秒) | pexpire key 1000 |
删除过期时间 | persist key1 |
选择第一个库 | select 0 |
将当前数据库key移动到某个库,目标库有则不能移动 | move myString l |
清除指定库 | flush db |
随机key | randomkey |
类型 | type key |
排序 | sort mylist |
按字母排序 | sort mylist alpha desc limit 0 2 |
持久化方式
目前Redis持久化的方式有两种: RDB 和 AOF
默认的RDB开启,AOF关闭,所有自定义在conf中修改
conf配置文件
//RDB 快照存储,按照一定的策略周期性的将数据保存到磁盘
//当有一条Keys数据被改变时,900秒刷新到Disk一次
save 900 1
//当有10条Keys数据被改变时,300秒刷新到Disk一次
save 300 10
//当有10000条Keys数据被改变时,60秒刷新到Disk一次
save 60 10000
//AOF 相当于操作日志,恢复时执行所有操作
//启用AOF持久化方式
appendonly yes
//AOF文件的名称
appendfilename "appendonly.aof"
//每次收到写命令就立即强制写入磁盘,是最有保证的完全的持久化,但速度也是最慢的,一般不推荐使用。
appendfsync always
//每秒钟强制写入磁盘一次,在性能和持久化方面做了很好的折中
appendfsync everysec
//完全依赖OS的写入,一般为30秒左右一次,性能最好但是持久化最没有保证
appendfsync no
//为了避免AOF文件过大,配置周期重写AOF文件
//在日志重写时,不进行命令追加操作,而只是将其放在缓冲区里,避免与命令的追加造成DISK IO上的冲突
no-appendfsync-on-rewrite yes
//当前AOF文件大小是上次日志重写得到AOF文件大小的二倍时,自动启动新的日志重写过程
auto-aof-rewrite-percentage 100
//当前AOF文件启动新的日志重写过程的最小值,避免刚刚启动Reids时由于文件尺寸较小导致频繁的重写
auto-aof-rewrite-min-size 64mb