Redis 入门概述

来源:互联网 发布:好压软件官方下载 编辑:程序博客网 时间:2024/05/22 01:34

一、概述

1、Redis:REmote DIctionary Server(远程字典服务器)

Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker. It supports data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs and geospatial indexes with radius queries. Redis has built-in replication, Lua scripting, LRU eviction, transactions and different levels of on-disk persistence, and provides high availability via Redis Sentinel and automatic partitioning with Redis Cluster

是完全开源免费的,用C语言编写的,遵守BSD协议,
是一个高性能的(key/value)分布式内存数据库,基于内存运行
并支持持久化的NoSQL数据库,是当前最热门的NoSql数据库之一,
也被人们称为数据结构服务器

2、Redis 与其他 key - value 缓存产品有以下三个特点

① Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用② Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储③ Redis支持数据的备份,即master-slave模式的数据备份

注意:

 内存中的数据断电消失,但是redis 具有持久化的支撑是RDB \AOF,在重启之后可以再次加载进行使用

二、使用场景

1、内存存储和持久化

redis支持异步将内存中的数据写到硬盘上,同时不影响继续服务

2、取最新N个数据的操作

如:可以将最新的10条评论的ID放在List集合

3、 pub/sub 发布/订阅 构建实时消息系统

pubish  subscribse  PSubscribe命令

4、计数器

INCR和DECR命令

5、定时器

精确设定过期时间

6、 Uniq操作,获取某段时间内所有数据排重值

Set数据类型

7、构建队列系统

 使用list可以构建队列系统,使用sort set 甚至可以构建优先级队列

三、官网

redis 官网英文版

redis 官网中文版

redis 的下载直接在官网进行下载

四、下载安装 Redis

前提:在Linux环境或者 VMWare +VMTools 虚拟环境

1、官网安装

Download, extract and compile Redis with:

$ wget http://download.redis.io/releases/redis-3.2.8.tar.gz$ tar xzf redis-3.2.8.tar.gz$ cd redis-3.2.8$ make

The binaries that are now compiled are available in the src directory. Run Redis with:

$ src/redis-server

You can interact with Redis using the built-in client:

$ src/redis-cliredis> set foo barOKredis> get foo"bar"

2、CentOS6安装redis

1)、检查安装依赖程序

yum install gcc-c++yum install -y tclyum install wget

2)、线上获取安装文件

wget http://download.redis.io/releases/redis-3.2.8.tar.gz

3)、解压文件

tar -xzvf redis-3.2.8.tar.gzmv redis-3.2.8 /usr/local/redis

4)、编译安装

cd /usr/local/redismakemake install

5)、复制配置文件

mkdir -p /etc/rediscp redis.conf   /etc/redis

6)、修改配置文件

vim /etc/redis/redis.conf仅修改: daemonize yes 

Deamonuze 守护进程 类似windows的server ,改为后台启动,如果为no时一关闭窗口,则断开连接

7)、启动 redis 服务

/usr/local/bin/redis-server  /etc/redis/redis.confps -ef | grep redis  查看redis是否启动

8)、使用客户端

redis-cli>set name davidOK>get name"david"

9)、关闭命令

redis-cli shutdown

10)、开机自启配置

echo "/usr/local/bin/redis-server /etc/redis/redis.conf &" >> /etc/rc.local

参考 https://segmentfault.com/a/1190000002685224

运行make命令时出现的错误解析:

make[3]: gcc: Command not foundmake[3]: *** [net.o] Error 127make[3]: Leaving directory `/opt/redis-2.8.9/deps/hiredis'make[2]: *** [hiredis] Error 2make[2]: Leaving directory `/opt/redis-2.8.9/deps'make[1]: [persist-settings] Error 2 (ignored)    CC adlist.o/bin/sh: cc: command not foundmake[1]: *** [adlist.o] Error 127make[1]: Leaving directory `/opt/redis-2.8.9/src'make: *** [all] Error 2

情况一:

1)、有网时

yum install gcc-c++

2)、二次make ,出现异常

yum install gcc makemake[1]: Entering directory `/opt/redis-3.2.8/src'    CC adlist.o在包含自 adlist.c:34 的文件中:zmalloc.h:50:31: 错误:jemalloc/jemalloc.h:没有那个文件或目录zmalloc.h:55:2: 错误:#error "Newer version of jemalloc required"make[1]: *** [adlist.o] 错误 1make[1]: Leaving directory `/opt/redis-3.2.8/src'make: *** [all] 错误 2

3)、运行make distclean之后再make

4)、如果make完成后继续执行make install

情况二(IOS 镜像中安装gcc)

1)、
这里写图片描述

2)、下图是关机后,setting选择后重新启动CentOS

这里写图片描述

3)、在终端中输入 cd /media/CentOS_5.2_Final/CentOS 回车

这里写图片描述

4)、分别执行如下命令

rpm -ivh cpp-4.1.2-48.el5.i386.rpm回车rpm -ivh kernel-headers-2.6.18-194.el5.i386.rpm回车rpm -ivh glibc-headers-2.5-49.i386.rpm    回车rpm -ivh glibc-devel-2.5-24.i386.rpm     回车rpm -ivh libgomp-4.4.0-6.el5.i386.rpm 回车rpm -ivh gcc-4.1.2-48.el5.i386.rpm   回车rpm -ivh glibc-headers-2.5-49.i386.rpm 在有的centos版本中没有,可以忽略

5)、二次make,报告Jemalloc/jemalloc.h:没有那个文件或目录,用make distclean解决

这里写图片描述

6)、三次make,安装成功

这里写图片描述

7)、/usr/local/bin目录下看到redis大片相关命令和文件,安装成功

这里写图片描述

8)、安装成功执行命令和出厂默认配置文件设置与调整

这里写图片描述

保留出厂默认文件,将它拷贝一份到别处,开始运行Redis

0 0
原创粉丝点击