01、Redis 简介、安装和配置

Par @Martin dans le
Tags :

简介

Redis 是一款 NoSQL(Not Only Sql 非关系型数据库)

  • Redis, Remote Directory Server [远程服务器字典]
    • 底层 C 语言实现
    • 以字典的结构存储数据
    • 允许通过 TCP 协议读写
    • 内存存储, 但支持持久化
    • 支持排序
    • MQ (队列系统)
    • 发布/订阅模式

安装

下载

Windows:

https://github.com/MSOpenTech/redis/releases

注意下载稳定版.

下载好后, 直接解压即可.

另外, 对于 Windows 下, 有一个__桌面化管理工具__: redis-desktop-manager, 也可下载配合使用.

Redis 命令不区分大小写.

redis 生态

  • redis.conf: 配置文件(windows 下可能是叫 redis.windows.conf/redis.windows-service.conf)
    • linux
      • 设置 redis.conf 的 daemonize 为 yes (默认为 no), 是否以后台 Daemon(守护进程) 方式运行 Redis
        • 如果为 yes, 那么启动 Redis 后, Redis 将做以后台进程的方式一直运行着
        • 如果为 no, 那么 Redis 就是运行在 CMD 上, CMD 一关闭, Redis 就关闭了
    • windows
      • redis.windows.conf
        • 同 linux 中把 daemonize 设为 no, 即为独占一个 cmd 的方式运行 redis
      • redis.windows-service.conf
        • 同 linux 中把 daemonize 设为 yes, 把 redis 做为 windows 的服务启动
  • redis-server: Redis 服务器程序
    • 启动服务: redis-server, 默认的配置文件是使用 redis.conf (linux 下)
    • 指定配置文件启动服务: redis-server redis.windows.conf (windows 下请指定)
    • 这里有可能会报错, 大意是说 maxheap 没定义, 打开 redis.conf 定义下, maxheap 1024000000
  • redis-cli: 客户端程序
    • 启动客户端: redis-cli
    • 清空缓存: redis-cli flushdb
    • 关闭服务器: redis-cli -h 127.0.0.1 -p 6379 shutdown
  • redis-benchmark: 性能测试工具
  • redis-check-aof: AOF 文件修复工具
  • redis-check-dump: RDB 文件修复工具

redis.conf 详解

配置 redis 的方法

Redis 服务器的配置, 可以在 redis.conf 设置, 也可以 redis-server 时指定, 还可以 cli 端中动态获取/配置.

config get xxx, 返回双行字符串

  • key
  • value

config set xxx yyy, 设置 config

配置信息

  • port 端口, 默认 6379
  • bind 绑定主机地址
  • timeout 当客户端多久没有操作后关闭连接, 0 代表没有使用这个功能
  • requirepass 身份验证, 设置这项后, 客户端连接时需要输入 requirepass 设置的密码
  • loglevel 指定日志级别, 有四个级别
    • debug 调试级别, 很详细的信息, 适合开发测试
    • verbos 比 debug 少一些, 但也包含许多无用信息
    • notice 比较适合生产环境
    • warning 只记录警告信息
  • logfile 日志记录方式
  • database 数据库数量, 默认 16 个(从 0 开始编号, 个人理解就是 mysql 中的表), 通过 select x 可以切换到指定序号的数据库
  • 持久化相关
    • save 900 1
    • save 300 10
    • save 60 10000, 这几个选项的意思是 x 秒内有 y 个修改就持久化
    • rdbcompression 持久化时, 是否启用压缩
    • dbfilename 指定执久化的文件名
    • dir 指定执久化文件存放目录
  • Hash 相关
    • hash-max-ziplist-value 存储的最大字段数目
    • hash-max-ziplist-entries 每个数目的最大字节
    • 关于这两个选项的意义在 02、Redis 数据类型 Hash 章节中有说明

命令返回值

  • 状态回复
    • PONG
    • OK
  • 错误回复
    • error 开头
  • 整数回复
    • integer 开头
  • 字符串回复
    • 双引号包括
  • 多行字符串回复
    • 序号 + 单符串