Redis是什么
Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。
它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合(sets),有序集合(sorted sets)与范围查询, bitmaps, hyperloglogs 和 地理空间(geospatial)索引半径查询。
Redis 内置了 复制(replication),LUA脚本(Lua scripting), LRU驱动事件(LRU eviction),事务(transactions) 和不同级别的 磁盘持久化(persistence), 并通过 Redis哨兵(Sentinel)和自动 分区(Cluster)提供高可用性(high availability)。
redis是单进程、单线程、单实例的,所有连接先到达计算机内核(kernel),进程和内核直接使用epoll非阻塞多路复用所有连接
Redis安装
- 未安装wget命令时
yum install wget - 创建文件夹
mkdir *** - wget下载安装包
cd *** //进入目录
wget http://download.redis.io/releases/redis-5.0.5.tar.gz - 解压安装包
cd xf redis-5.0.5.tar.gz - 看readme.md
- make
//未安装gcc时需要先安装gcc
yum install gcc
//未安装gcc直接make会报错,在安装gcc后需要清除掉未编译成功文件
make distclean
//编译redis
make - cd src 下已经生成了可执行程序
- 注册服务
cd …进入源码目录
make install PREFIX=想要安装的目录,
//添加环境变量
vi /etc/profile
export REDIS_HOME = 安装路径
export PATH=$PATH:$REDIS_HOME/bin
保存退出
source /etc/profile - cd源码文件utils文件
- …/install_server.sh (可执行多次, 设置port,启动多个实例)
一个物理机可以有多个redis实例,通过port区分
可执行程序只有一份在目录, 但是在内存中未来的多实例需要各自的配置文件,持久化目录等资源
完成后会启动一个redis实例, 会设置开机启动 - service redis_6379 start/stop/status
- ps -fe|grep redis
Redis使用
- redis-cli 使用
redis-cli -h 后面跟redis服务器IP地址,不写则打开帮助文档
redis-cli -p 后面跟redis端口, 不写-p参数则默认连接6379端口redis
redis-cli -n redis默认分为16个库, -n参数后可跟0~15库参数
- help使用
help 可以查看对应命令使用方式