Redis简介及Linux安装Redis

前言

本文主要内容:

    1、简介redis,及使用的一些场景

    2、linux安装redis



1、什么是Redis?

    redis是一个基于C语言编写的,支持网络,也可基于内存亦可持久化的日志型,Key-Value的数据库,提供多语言的API。

    redis中的Value值支持五类存储类型:String(字符串),List(链表表),zset(有序集合),set(集合),Hash(哈希类型)。redis也对各数据类型提供了各种操作方法,例如:String类型提供了get(name):获取Value;del(name):删除value等。在redis的官网中value的值最大设定不能超过512M,同时,redis会周期性的将数据写入磁盘或者修改操作写入追加记录文件中。

redis使用场景:在大型的网站中可用于对数据进行缓存,商品的秒杀活动,网站访问量的统计,应用排行版,分布式集群框架中的session分离等。

2、Linux安装redis

在安装redis之前,我们需要有linux环境,我的电脑windows,所以安装的是VMware虚拟机,linux使用的是CentOS 7,redis使用的版本是redis-4.0.8.tar.gz。软件有了,接下来我们来说下安装步骤:

2.1、下载redis安装包

下载地址:https://pan.baidu.com/s/11Lz4KNqqxEuadCwqC5id0A密码: xwnh

2.2、在linux下创建一个文件夹用于保存下载的redis包

我是在home目录下创建的redis包,如图:命令,mkdir redis

命令:mkdir redis

2.3、将下载的redis包,拷贝至创建的目录并解压压缩包。如图:命令 rz

Redis简介及Linux安装Redis_第1张图片
命令:rz
解压:tar -zxvl redis-4.0.8.tar.gz

2.4、对redis进行编译,进入redis解压缩文件后运行make cd src && make all,如图:

Redis简介及Linux安装Redis_第2张图片

注:在编译时,可能会报如红线所圈的CC:未找到命令,那是因为没有安装gcc,(C语言编译工具),因此需要安装gcc,如图,在线进行安装:

yum -y install gcc automake autoconf libtool make

注:在安装gcc中也可能出现:Could not resolve host:mirrorlist.centos.org;"未知的错误",如图:

解决方法:在Linux的etc文件夹中的resolv.conf中加入nameserver ip,如图:修改文件命令,vi etc/resolv.conf

Redis简介及Linux安装Redis_第3张图片
vi etc/resolv.conf

安装完gcc,运行redis编译命令,将redis进行编译

2.5、编译完成redis后,则启动redis,在redis-4.0.8文件夹下执行:redis-server redis.conf,如图:

redis-server redis.conf

  注:在启动redis后会出现如下三个警告,如图:

Redis简介及Linux安装Redis_第4张图片

解决方法(由上而下):

warn 1:暂时:执行,echo 511 > /proc/sys/net/core/somaxconn

            永久:修改etc/sysctl.conf中添加:net.core.somaxconn=1024 修改后执行sysctl.conf  -p

  warn 2:暂时:执行,echo 1 > /proc/sys/vm/overcommit_memory

              永久:在etc/sysctl.conf中修改vm.overcommit_memory=1,然后执行sysctl.conf -p

warn 3:暂时:执行,echo never > /sys/kernel/mm/transparent_hugepage/enabled

                  永久:将echo never > /sys/kernel/mm/transparent_hugepage/enabled写入etc/rc.local中

2.6 、验证redis是否启动成功

      在redis-4.0.8中的src中,运行./redis-cli,出现如下命令,则证明成功:

以上则为整个redis的安装过程,在上述中可能有些地方说的不是很清楚,希望大家给与指正。

你可能感兴趣的:(Redis简介及Linux安装Redis)