您的位置:首页 > 科技 > 能源 > 【redis】redis简单入门

【redis】redis简单入门

2024/11/18 23:08:41 来源:https://blog.csdn.net/wosixiaokeai/article/details/139929806  浏览:    关键词:【redis】redis简单入门

1、简介

  • 定义:Redis是一个开源的、内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。
  • 特点
    1. 高性能:读写速度非常快,支持每秒执行数十万次读写操作。
    2. 基于内存:所有数据都存储在内存中,使得数据访问非常迅速。
    3. 数据结构丰富:支持多种数据类型,如字符串(string)、列表(list)、集合(set)、有序集合(sorted set)和哈希(hash)。
    4. 支持持久化:可以将内存中的数据定期写入磁盘,以保证数据的持久性。

2、安装

参考往期文章:【redis】redis安装-CSDN博客

  • Windows系统:虽然Redis官网对Windows版本的支持有限,但仍有第三方提供的Windows版本可供使用。安装时,只需解压并运行相应的可执行文件即可。
  • Linux系统:在Linux上安装Redis通常涉及下载源码包、编译和安装等步骤。也可以通过包管理器(如apt、yum等)直接安装。

3、Redis服务启动与停止

  • 启动:在Windows上,可以通过双击redis-server.exe启动服务;在Linux上,可以通过命令行运行redis-server命令启动服务。
  • 停止:在Windows上,可以通过Ctrl+C停止服务;在Linux上,可以通过发送SIGINT信号或使用redis-cli shutdown命令停止服务。

4、连接Redis

  • 使用redis-cli命令连接Redis服务。在本地连接时,只需输入redis-cli
  • 如果Redis服务运行在其他主机上,需要指定主机名和端口号,如redis-cli -h <hostname> -p <port>

5、Redis常用命令

5.1基础操作

  • 设置键值对
    • SET key value: 设置键的值。
    • SETNX key value: 如果键不存在,则设置键的值。
  • 获取键值
    • GET key: 获取键的值。
    • MGET key1 key2 ...: 获取多个键的值。
  • 删除键值
    • DEL key1 key2 ...: 删除一个或多个键。
  • 键的存在性
    • EXISTS key: 检查键是否存在。
  • 键的过期时间
    • EXPIRE key seconds: 设置键的过期时间(秒)。
    • TTL key: 获取键的剩余生存时间(秒)。

5.2数据类型操作

字符串(String)
  • APPEND key value: 将值追加到键的当前值。
  • INCR key: 将键的值加 1。如果键不存在,则设置键的值为 1。
  • DECR key: 将键的值减 1。如果键不存在,则设置键的值为 -1。
列表(List)
  • LPUSH key value1 value2 ...: 将一个或多个值插入到列表的左侧。
  • RPUSH key value1 value2 ...: 将一个或多个值插入到列表的右侧。
  • LPOP key: 移除并获取列表的左侧第一个元素。
  • RPOP key: 移除并获取列表的右侧第一个元素。
  • LRANGE key start stop: 获取列表指定范围内的元素。
集合(Set)
  • SADD key member1 member2 ...: 将一个或多个成员添加到集合中。
  • SREM key member1 member2 ...: 从集合中移除一个或多个成员。
  • SMEMBERS key: 返回集合中的所有成员。
  • SISMEMBER key member: 检查成员是否存在于集合中。
有序集合(Sorted Set)
  • ZADD key [NX|XX] [CH] [INCR] score1 member1 [score2 member2 ...]: 将一个或多个成员及其分数添加到有序集合中。
  • ZREM key member1 member2 ...: 从有序集合中移除一个或多个成员。
  • ZRANGE key start stop [WITHSCORES]: 返回有序集合中指定范围内的成员及其分数。
  • ZRANK key member: 返回有序集合中成员的排名(从 0 开始)。
哈希(Hash)
  • HSET key field value: 将哈希表 key 中的字段 field 的值设为 value。
  • HGET key field: 获取哈希表 key 中给定字段 field 的值。
  • HDEL key field1 field2 ...: 删除哈希表 key 中的一个或多个字段。
  • HGETALL key: 获取哈希表 key 中所有的字段和值。

5.3服务器命令

  • PING: 测试服务器是否正在运行。
  • INFO: 提供有关服务器的信息和统计。
  • FLUSHALL: 删除所有数据库的所有键。
  • FLUSHDB: 删除当前数据库的所有键。
  • SAVE: 将数据同步保存到磁盘。
  • SHUTDOWN: 停止 Redis 服务器。

5.4脚本和事务

  • EVAL script numkeys key1 key2 ... arg1 arg2 ...: 执行 Lua 脚本。
  • MULTI: 标记一个事务块的开始。
  • EXEC: 执行所有之前通过 MULTI 命令进入事务块的命令。
  • DISCARD: 取消事务,放弃执行事务块内的所有命令

5.5订阅与发布

  • SUBSCRIBE channel [channel ...]: 订阅一个或多个频道。
  • PUBLISH channel message: 将消息发送到指定的频道。
  • UNSUBSCRIBE [channel [channel ...]]: 退订一个或多个频道。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com