摘要:Redis是一种支持Key-Value等多种数据结构的存储系统。
Redis是一种支持Key-Value等多种数据结构的存储系统。可用于缓存,事件发布或订阅,高速队列等场景。该数据库使用ANSI C语言编写,支持网络,提供字符串,哈希,列表,队列,集合结构直接存取,基于内存,可持久化。
Redis有三个主要特点,使它优越于其它键值数据存储系统:Redis将其数据库完全保存在内存中,仅使用磁盘进行持久化;与其它键值数据存储相比,Redis有一组相对丰富的数据类型;Redis可以将数据复制到任意数量的从机中。
Redis一共支持五种数据类:string(字符串),hash(哈希),list(列表),set(集合)和zset(sorted set有序集合)。这些数据类型支持push/pop,add/remove及取交集,并集和差集及更丰富的操作,而且这些操作都是原子性的。
Redis是一个开源的使用C语言编写(3万多行代码),支持网络,可基于内存亦可持久化的日志型,Key-Value数据库,并提供多种语言的API。Redis软件的出现,再一定程度上弥补了memcached这类key-value内存缓存服务的不足,在部分场合可以对关系数据库起到很好的补充作用。Redis提供了Python,Ruby,Erlang,PHP客户端。接下来,为大家带来关于Redis相关的操作指南。
一.启动关闭
- 加载配置文件启动
Redis-server Redis.conf - 关闭Redis,Redis服务器将断开与客户端链接,产生持久化文件,平滑关闭,kill pid号方式等同
不要使用kill -9强制杀死。这样不会做持久化,还会造成缓冲区等资源不能被优雅关闭,极端情况会造成AOF和复制丢失数据
Redis-cli shutdown - 链接Redis服务器 -h地址 -p端口 -c表示去链接一个集群
Redis-cli -h 127.0.0.1 -p 7000 - 链接Redis服务器,非交互操作。在最后面添加命令即可get name
Redis-cli get name - 显示大个的键值
Redis-cli --bigkeys - 查看统计信息
Redis-cli --stat
二.基本操作
- 查询显示所有key。只有效的数据,过期的不算。如果数据量非常大,不要用这个命令,会导致内存卡死。
keys * - 查询所有key的数量,未销毁的。(过期的也算)
dbsize - 查看链接的客户端有哪些
client list - 杀掉客户端链接
client kill 127.0.0.1:52343 - 查看
1.当前客户端连接数
2.当前所有输出缓冲区中队列对象个数的最大值
3.当前所有输入缓冲区中占用的最大容量
4.正在执行阻塞命令(例如blpop、 brpop、brpoplpush) 的客户端个数。
info clients - 查看各种详细信息
info - 查询存储文件目录
CONFIG GET dir - 检查键是否存在。存在1,不存在0
exists key - 删除键,可以同时删除多个键
del key - 对键值设置过期时间。单位秒,1成功,0不成功
expire key 10 - 查看key剩余过期时间。返回-2键不存在,-1没设置,大于0是剩余时间
ttl key - 查看键数据结构类型。返回none是键不存在
type key - 检查内部编码格式
object encoding key - 重命名key,如果newkey已经存在,那值会被覆盖
rename key newkey - 重命名key,如果newkey已经存在,那会操作失败,返回0,不做任何操作
renamenx key newkey - 如果有1000个 key:value ,将会随机返回一个键
randomkey
日前,华为云数据库发布GaussDB(for Redis)正式商用,GaussDB(for Redis) 是一款基于华为自研的计算存储分离架构,兼容Redis生态的云原生NoSQL数据库,基于共享存储池的多副本强一致机制,保证数据的安全可靠。GaussDB(for Redis)可广泛适用于游戏、互联网、电商等场景。
#DevRun开发者沙龙# 10月27日20:00-21:00,特邀华为云数据库技术专家文龙&生态总监张一一,为您打造专场直播“当Redis遇上计算存储分离”!华为云GaussDB(for Redis)利用了存算分离、多模架构、强一致等先进技术理念,提供了一套业界领先的超前解决方案。
社区互动有好礼,不要错过!