0%

redis数据库

原文链接:redis数据库

介绍

Redis 是一种开源(BSD 许可)内存数据结构存储,用作数据库、缓存和消息代理。 它支持数据结构,例如字符串、散列、列表、集合、带范围查询的排序集合、位图、hyperloglogs 和带半径查询的地理空间索引。

优点

Redis 的一些主要特性是:
• 内存存储:Redis 将所有数据存储在内存中,而不是磁盘上。 这使得它非常快,因为不涉及磁盘 I/O。
• 磁盘持久化:Redis 可以将数据持久化到磁盘,以在崩溃或重启时重建内存中的数据。 这使其快速耐用。
• 复制:Redis 允许主从复制以扩展读取并确保可靠性。
• LRU 逐出:Redis 支持在达到最大内存时自动逐出键。 这是以 LRU(最近最少使用)方式完成的。
• 事务:Redis 支持事务将一组命令作为一个独立的操作来执行。
• 发布/订阅:Redis 通常用作消息代理,并通过其发布/订阅功能支持简单形式的消息传递。
• 具有多种数据类型的键:Redis 键可以保存字符串、列表、集合、排序集合、散列和位图。 这允许您将 Redis 用作数据库和缓存。
• 快速性能:Redis 是用C 语言编写的,速度极快,通常以超过100k 次操作/秒的速度运行。

应用场景

Redis 的一些常见用途是:
• 缓存——Redis 是一种理想的缓存存储,具有内存中性能和磁盘持久性。
• 会话存储——Redis 是存储用户会话数据的绝佳选择。
• 消息代理——Redis Pub/Sub 功能适用于简单的消息队列和应用程序通信。
• 分析——Redis 位图和hyperloglogs 提供了一种快速进行分析和计数的方法。

安装

  1. 依赖库安装

    1
    2
    3
    sudo apt-get update
    sudo apt-get install tcl
    sudo apt-get install libssl-dev
  2. 官网找到指定版本文件下载安装到指定的目录
    http://download.redis.io/releases/
    http://download.redis.io/releases/redis-7.0.0.tar.gz

  3. apt安装

curl -fsSL https://packages.redis.io/gpg | sudo gpg –dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg
echo “deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main” | sudo tee /etc/apt/sources.list.d/redis.list
sudo apt-get update
sudo apt-get install redis
redis-cli -h 127.0.0.1 -p 6379 shutdown

配置

  1. 权限修改
    给redis所在目录指定权限,apt下载的找到对应的目录chmod,否则会无法关闭

4.配置redis
redis目录/redis.conf 配置信息,如logfile等

运行

  1. 启动
    执行 redis目录/src/redis-server 启动
    redis-cli 为客户端通信命令
    redis-cli shutdown 关闭redis
    sudo /etc/init.d/redis-server stop 强制关闭

  2. redis基础命令https://redis.com.cn/commands.html
    redis-cli 回车与redis-server通信
    ping 回复pong 表示redis正常运行
    set key value
    get key

开发库hredis安装

hiredis 是一个用于与 Redis 服务器交互的 C 库。 它只是一个客户端库,它与 Redis 服务器通信但本身不存储任何数据。

  • hiredis 是一个与 redis 服务器接口的 C 库
  • hiredis 无法在不连接到 redis 服务器的情况下工作
  • 许多 redis 客户端库/包装器(如 redis-py)在后台使用 hiredis 与 redis 通信。
  • 安装hreids如下,会自动在/usr/local/lib/ /usr/local/include/hiredis中配置hiredis的依赖库
    1
    2
    3
    4
    5
    6
    7
    mkdir /app/
    cd /app/
    git clone https://github.com/redis/hiredis.git
    cd hiredis
    make
    make install