连接:redis-cli -h *** -p port -a passwd -n db
set key value 设定key值;set name value EX time,可以通过help set 查看,设置数据存储时间 get key 获取指定key值 keys * 获取所有的key,如果key过多会消耗大量内存,给服务器造成压力scan num num位0,表示开始第一次迭代,返回数组,第一个为下次的num值,一直到数组的第一个值为0时,迭代结束,key过多是避免用上面的keys *type key 通过上述keys or scan遍历找到需要key,然后通过type来判断是何种类型的key来取值,如果是string直接get key即可,如果是list,那就用下面的lrange key start end lpush name value [value ...] 创建一个列表数据,默认先进后出 rpush name value [value ...] 同上,只是数据是先进先出 lrange name start stop 取列表数据,索引同Pythonsadd key value1 value2 ... 创建一个集合,数据类型是set,跟Python一下也是唯一性
SMEMBERS key 获取集合里面的所有成员,SCARD key 统计成员数
AUTH "password" 认证SELECT index 切换数据库
PING 测试是否正在运行 INFO 列出redis的相关数据,比如版本,启动文件主从 DBSIZE 列出当前库有多少数据 FLUSHDB 删除当前库的所有数据 FLUSHALL 删除所有库的所有数据 LASTSAVE 返回最近一次 Redis 成功将数据保存到磁盘上的时间,以 UNIX 时间戳格式表示 MONITOR 实时打印出 Redis 服务器接收到的命令,调试用del 删除里面的键,del key
SAVE 异步保存数据到硬盘,若干配置没有开启持久化存储方式的话,重启服务数据丢失
SLAVEOF host port 将当前服务器转变为指定服务器的从属服务器(slave server) SYNC 用于复制功能(replication)的内部命令根据key值删除数据
/usr/local/bin/redis-cli -p port -a passwd KEYS "cm:newmonitor:*" | xargs /usr/local/bin/redis-cli -p port -a passwd DEL ###如果不是默认的0库的话得加上数据库的参数 -n dbKEYS 查出键值,列出清单,然后根据列出的清单循环键值
hgetall 查找每个键值下面的内容,根据内容做判断是否需要删除 优化: 1:更细redis系统内存占用机制 vim /etc/sysctl.conf vm.overcommit_memory = 1#最好不要设置为0,Linux的OOM机制在内存不足的情况下,会自动选择性Kill进程点数过高的进程,0会中招。
sysctl vm.overcommit_memory=1 >0: 表示内核将检查是否有足够的可用内存供应用进程使用;如果有足够的可用内存,内存申请允许;否则,内存申请失败,并把错误返回给应用进程。 >1: 表示内核允许分配所有的物理内存,而不管当前的内存状态如何。 >2: 表示内核允许分配超过所有物理内存和交换空间总和的内存2:单线程模式,尽量使用耗时短的命令
3:可以组合的命令用pipelining连续执行 4 :操作系统的Transparent huge pages功能必须关闭: echo never >>/sys/kernel/mm/transparent_hugepage/enabled 5: 根据业务需求选择数据持久化策略,rdb-设置多种快照方式,但是保存的时候fork子进程会造成延迟,并且在保存的过程中crash会导致这部分为保存的数据丢失 rdb更高效,aof更安全,但是对性能有一定的影响(rdb在fork造成最新一次延迟可以通过INFO命令返回的latest_fork_usec查看) 6:引入读写分离机制(主从复制) 7:redis.conf 配置文件的一些基本参数:最大连接数等使用SLOWLOG GET [number]命令,可以输出最近进入Slow Log的number条命令。
使用SLOWLOG RESET命令,可以重置Slow Log内存不足时,非常缓慢是否是大量占用swap引起
当Linux将Redis所用的内存分页移至swap空间时,将会阻塞Redis进程,导致Redis出现不正常的延迟。Swap通常在物理内存不足或一些进程在进行大量I/O操作时发生,应尽可能避免上述两种情况的出现。/proc/<pid>/smaps文件中会保存进程的swap记录,通过查看这个文件,能够判断Redis的延迟是否由Swap产生。如果这个文件中记录了较大的Swap size,则说明延迟很有可能是Swap造成的
windows 工具 redis desktop manager 地址:https://redisdesktop.com/download