第二章、Redis入门介绍


一、入门概述

1.1、什么是 Redis ?
  • REmote DIctionary Server(远程字典服务器)。
  • 开源、C语言编写、遵守 BSD 协议、高性能的分布式内存数据库。也被称为数据结构服务器。
  • 与其他 key-value 数据库相比:
    • 支持持久化。
    • 提供 key-value 之外的数据类型存储。
    • 支持数据备份(master-slave 主从复制模式)。
1.2、学习重点

学习内容
1、数据类型、基本操作和配置。
2、持久化和复制、RDB/AODF
3、事务的控制、管道、分布式锁和Lua脚本
4、主从复制
5、。。。

二、Redis 安装

2.1、Docker 安装 Redis 并以配置文件方式启动

参考文章

  • 1、配置 redis.config 文件
  • 2、启动并创建 docker redis 容器。
  • 3、dockerfile 挂载数据卷创建单机 Redis 实例详情见 docker 学习笔记
docker run -d --privileged=true -p 6379:6379 -v /usr/local/docker/redis/redis.conf:/etc/redis/redis.conf -v /usr/local/docker/redis/data:/data --name myredis redis redis-server /etc/redis/redis.conf --appendonly yes

命令参数解释:
1、-p 6379:6379 端口映射。:前表示主机部分,:后表示容器部分。
2、--name myredis 指定该容器名称,查看和进行操作都比较方便。
3、-v 挂载目录,规则与端口映射相同。
为什么需要挂载目录:个人认为docker是个沙箱隔离级别的容器,这个是它的特点及安全机制,不能随便访问外部(主机)资源目录,所以需要这个挂载目录机制。
4、-d redis 表示后台启动 redis,redis-server /etc/redis/redis.conf 以配置文件启动redis,加载容器内的 conf 文件,最终找到的是挂载的目录 /usr/local/docker/redis/redis.conf。
5、--appendonly yes 开启 redis 持久化。

注意:redis.conf 文件中的配置,如果不能正确启动,可使用 docker logs 容器名称 来查询错误信息。

2.2、创建并运行单机 Redis 实例

redis 单机启动实例:

#1、创建文件夹

mkdir redisSingle-6379
#2、复制 redis.conf 到 redisSingle-6379 文件夹下

cp /usr/local/redis-3.0.0/redis.conf /usr/local/redis-cluster/redisSingle-6379

#3、启动
/usr/local/redis-3.0.0/src/redis-server /usr/local/redis-cluster/redisSingle-6379/redis.conf


三、Redis 启动后杂项基础知识讲解

  • 单进程

    1、单进程模型来处理客户端的请求。对读写等事件的响应是通过对 epoll 函数的包装来做到的。Redis 的实际处理速度完全依靠主进程的执行效率。

    2、epoll 是 Linux 内核为处理大批量文件描述符而作了改进的 epoll,是 Linux 下多路复用 IO 接口select/poll 的增强版本,它能显著提高程序在大量并发连接中只有少量活跃的情况下的系统 CPU 利用率。

  • 默认数据库

    默认16个数据库,类似数组下表从零开始,初始默认使用零号库。

    设置数据库的数量,默认数据库为0,可以使用 SELECT 命令在连接上指定数据库 id。

  • 查看当前数据库 key 的数量

    dbsize 查看当前数据库的 key 的数量。

  • 清空数据库、通杀数据库

    flushdb:清空当前库

    Flushall;通杀全部库

  • 统一密码管理,16个库都是同样密码,要么都 OK 要么一个也连接不上。

  • Redis 索引都是从零开始。

posted @ 2020-07-29 13:53  星命定轨  阅读(74)  评论(0编辑  收藏  举报