博客
关于我
redis使用
阅读量:794 次
发布时间:2023-02-28

本文共 1637 字,大约阅读时间需要 5 分钟。

Redis 使用指南

Redis 基本命令

Redis 实例可以支持多个数据库,客户端可以指定连接特定数据库。Redis 实例最多支持 16 个数据库,数据库索引从 0 到 15。默认连接 0 号数据库。可以使用 select 命令切换数据库。

# 示例命令
$ ./bin/redis-cli
127.0.0.1:6379> select 0
OK
127.0.0.1:6379> select 15
OK
127.0.0.1:6379[15]> select 16
(error) ERR DB index is out of range

常用命令

  • set [key]:设置键值对
    $ set name mzy
  • get [key]:获取键值
    $ get name
  • del [key]:删除键值对
    $ del name
  • keys *:查看当前数据库中的键值对
    # 查看所有键
    $ keys *
  • clear:清空当前数据库
    $ clear
  • select [0-15]:切换数据库
    $ select 1
  • move [key]:将某个键从当前数据库移动到指定数据库
    # 示例
    $ select 0
    $ move name 1
    $ keys *
    $ get name
  • flushdb:删除当前数据库中的所有键
    $ flushdb
  • flushall:删除所有数据库中的所有键
    $ flushall

存储中文

在 Redis 中存储中文数据没有任何问题。以下是示例:

$ set name 哈哈哈
OK
$ get name
"\xe5\x93\x88\xe5\x93\x88\xe5\x93\x88"

退出命令

退出 Redis 连接可以使用 quitexit 命令:

$ quit
$ exit

Redis 消息订阅与发布

Redis 提供了消息订阅与发布功能,适用于实时消息系统。

消息发布订阅

  • 启用三个 Redis 客户端窗口:
    • 窗口 1:订阅 mychat 频道
      $ subscribe mychat
      Reading messages... (press Ctrl-C to quit)
    • 窗口 2:发布消息到 mychat 频道
      $ publish mychat '111'
    • 窗口 3:订阅多个频道
      $ psubscribe my*
      Reading messages... (press Ctrl-C to quit)

    多个发布例子

    在窗口 2 发布消息:

    $ publish mychat '111'
    $ publish mychat2 '222'
    $ publish mychat3 '333'

    观察结果:

    • 窗口 1 会收到所有 mychat 频道的消息。
    • 窗口 3 会收到所有以 my* 开头的频道消息。

    Redis 事务

    Redis 提供了事务机制,使用 MULTIEXECDISCARD 命令实现。

    事务特点

  • Redis 事务会串行执行所有命令,确保所有命令原子性执行。
  • 如果某一命令执行失败,后续命令仍会继续执行。
  • 与关系型数据库不同,Redis 事务不会自动回滚。
  • 事务流程

  • 使用 MULTI 开启事务:
    $ multi
  • 执行事务内的命令:
    $ incr num
  • 提交或回滚事务:
    • 提交EXEC
      $ exec
    • 回滚DISCARD
      $ discard
  • Redis 持久化

    Redis 提供两种持久化方式:RDB 和 AOF。

    RDB(快照)

    • 特点:存储当前内存状态,文件体积较小,恢复快。
    • 配置:在 redis.conf 中设置 save 参数,默认每 900 秒或 15 分钟快照一次。

    AOF(日志)

    • 特点:记录所有操作日志,恢复时根据日志重新执行命令。
    • 优点:数据高可用性,缺点是文件体积较大。

    Redis 无持久化

    如果不需要持久化,Redis 只作为缓存层即可。


    以上内容可以根据实际需求进行调整和扩展,适用于技术文档或技术博客使用。

    转载地址:http://gktfk.baihongyu.com/

    你可能感兴趣的文章
    PHP 构造函数的重载
    查看>>
    php 标准规范
    查看>>
    PHP 浮点型精度运算相关问题
    查看>>
    php 浮点型计算精度问题
    查看>>
    php 特定时间段统计,jpgraph某个时间段的数据统计
    查看>>
    php 生成csv mac下乱码
    查看>>
    php 生成证书 签名及验签
    查看>>
    php 的rsa加密与解密
    查看>>
    PHP 的标准输入与输出
    查看>>
    php 笔记 (早前的,很乱)
    查看>>
    PHP 第一天
    查看>>
    Redis使用量暴增,快速定位有哪些大key在作怪
    查看>>
    php 结课作业答案,北语201803考试批次《PHP》(结课作业)1.pdf
    查看>>
    PHP 统计数据功能 有感
    查看>>
    SpringBoot处理JSON数据
    查看>>
    Redis使用基本套路
    查看>>
    php 解决项目中多个自动加载冲突问题
    查看>>
    PHP 设置调试工具XDebug PHPStorm IDE
    查看>>
    php 身份证号检测
    查看>>
    PHP 输入输出流合集
    查看>>