本文中的两个配置文件可在这里找到

操作系统:Linux

Linux发行版:Centos7

安装

  1. 下载地址,点这里Redis4.0.0.tar.gz

    或者使用命令:

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

  2. 然后执行make编译源码:

    $ tar xzf redis-4.0.0.tar.gz
    $ cd redis-4.0.0
    $ make
  3. 编译完成后启动

    $ src/redis-server

  4. 测试效果:

    $ src/redis-cli ping
    PONG
    $ src/redis-cli
    redis> set foo bar
    OK
    redis> get foo
    "bar"

    make命令执行完成后,会在src目录下生成6个可执行文件,分别是redis-server、redis-cli、redis-benchmark、redis-check-aof、redis-check-dump、redis-sentinel

  • redis-server is the Redis Server itself.(Redis服务器本身)
  • redis-sentinel is the Redis Sentinel executable (monitoring and failover).(Redis集群的管理工具)
  • redis-cli is the command line interface utility to talk with Redis.(与Redis进行交互的命令行客户端)
  • redis-benchmark is used to check Redis performances.(Redis性能测试工具)
  • redis-check-aof and redis-check-dump are useful in the rare event of corrupted data files.(AOF文件修复工具和RDB文件检查工具)

可以使用如下命令,把redis-server和redis-cli拷贝到合适的位置(/usr/local/bin/):

sudo cp src/redis-server /usr/local/bin/
sudo cp src/redis-cli /usr/local/bin/

或者,使用 sudo make install可以把6个文件都拷贝过去;

这样的话,只要/usr/local/bin/在PATH环境变量里,

我们就可以直接使用redis-server和redis-cli而不需要指定全路径了。比如:

[root@localhost ~]# redis-server
12408:C 16 Jul 21:30:29.657 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
12408:C 16 Jul 21:30:29.657 # Redis version=4.0.0, bits=64, commit=00000000, mod                                                                             ified=0, pid=12408, just started
12408:C 16 Jul 21:30:29.657 # Warning: no config file specified, using the defau                                                                             lt config. In order to specify a config file use redis-server /path/to/redis.con                                                                             f
12408:M 16 Jul 21:30:29.658 * Increased maximum number of open files to 10032 (i                                                                             t was originally set to 1024).
                _._
           _.-``__ ''-._
      _.-``    `.  `_.  ''-._           Redis 4.0.0 (00000000/0) 64 bit
  .-`` .-```.  ```\/    _.,_ ''-._
 (    '      ,       .-`  | `,    )     Running in standalone mode
 |`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379
 |    `-._   `._    /     _.-'    |     PID: 12408
  `-._    `-._  `-./  _.-'    _.-'
 |`-._`-._    `-.__.-'    _.-'_.-'|
 |    `-._`-._        _.-'_.-'    |           http://redis.io
  `-._    `-._`-.__.-'_.-'    _.-'
 |`-._`-._    `-.__.-'    _.-'_.-'|
 |    `-._`-._        _.-'_.-'    |
  `-._    `-._`-.__.-'_.-'    _.-'
      `-._    `-.__.-'    _.-'
          `-._        _.-'
              `-.__.-'

12408:M 16 Jul 21:30:29.663 # WARNING: The TCP backlog setting of 511 cannot be                                                                              enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
12408:M 16 Jul 21:30:29.663 # Server initialized
12408:M 16 Jul 21:30:29.663 # WARNING overcommit_memory is set to 0! Background                                                                              save may fail under low memory condition. To fix this issue add 'vm.overcommit_m                                                                             emory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.ove                                                                             rcommit_memory=1' for this to take effect.
12408:M 16 Jul 21:30:29.664 # WARNING you have Transparent Huge Pages (THP) supp                                                                             ort enabled in your kernel. This will create latency and memory usage issues wit                                                                             h Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transpar                                                                             ent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to reta                                                                             in the setting after a reboot. Redis must be restarted after THP is disabled.
12408:M 16 Jul 21:30:29.664 * Ready to accept connections
$ redis-cli
redis 127.0.0.1:6379> ping
PONG
redis 127.0.0.1:6379> set mykey somevalue
OK
redis 127.0.0.1:6379> get mykey
"somevalue"

关闭redis服务

使用如下命令可以关闭redis服务

$ redis-cli shutdown

配置初始化脚本,以服务方式启动redis

  1. 拷贝redis-4.0.0下的utils目录下的初始化脚本到/etc/init.d目录,并重命名文件为:redis_+端口号

    sudo cp utils/redis_init_script /etc/init.d/redis_6379

    确保redis_6379文件内的REDISPORT变量是你使用的端口号

  2. 新建文件夹/etc/redis/ ,并拷贝redis-4.0.0下的 redis.conf 文件到到改目录下,使用端口号作为文件名

    sudo mkdir /etc/redis
    sudo cp redis.conf /etc/redis/6379.conf
  3. 创建用来存储redis持久化文件的目录(6379为端口号)

    sudo mkdir -p /var/redis/6379

  4. 编辑6379.conf文件,修改如下几个参数:
  • Set daemonize to yes (by default it is set to no).(设置daemonize 为yes,默认为no)
  • Set the pidfile to /var/run/redis_6379.pid (modify the port if needed).(如果端口号不是6379,则需要修改)
  • Change the port accordingly. In our example it is not needed as the default port is already 6379.(如果端口号不是6379,则需要修改)
  • Set your preferred loglevel.(可以设置日志等级,注释上有说明)
  • Set the logfile to /var/log/redis/redis_6379.log(设置日志文件路径)
  • Set the dir to /var/redis/6379 (very important step!)(设置工作目录为 /var/redis/6379)
  1. 这时候就可以使用如下两条命令(任选其一)来启动redis,并测试

    [root@localhost /]# service redis_6379 start
    Starting Redis server...
    [root@localhost /]# redis-cli
    127.0.0.1:6379> ping
    PONG
    127.0.0.1:6379>
    [root@localhost /]# /etc/init.d/redis_6379 start
    Starting Redis server...

设置开机自动启动

  1. 编辑/etc/init.d/redis_6379文件,在#!/bin/bash 之后添加如下两行。

    # chkconfig: 2345 10 90
    # description: redis_6379 service manage...

    其中2345是默认启动级别,级别有0-6共7个级别。

      等级0表示:表示关机   

      等级1表示:单用户模式   

      等级2表示:无网络连接的多用户命令行模式   

      等级3表示:有网络连接的多用户命令行模式   

      等级4表示:不可用   

      等级5表示:带图形界面的多用户模式   

      等级6表示:重新启动

    10是启动优先级,90是停止优先级,优先级范围是0-100,数字越大,优先级越低

  2. 将redis_6379放入linux启动管理体系中

    chkconfig --add redis_6379

    查看redis_6379服务在各运行级状态

    chkconfig --list redis_6379

  3. 重启服务器测试效果:

    reboot

    重启完成后,直接使用redis-cli连接redis,效果如下:

    Using username "root".
    Last login: Sun Jul 16 21:30:16 2017 from 192.168.10.1
    [root@localhost ~]# redis-cli
    127.0.0.1:6379>

配置成功,完!


参考:

Redis入门指南(第2版)(顺便推荐下这本书,作为redis入门书籍非常不错)

Redis Quick Start

Redis4.0.0 安装及配置 (Linux — Centos7)的更多相关文章

  1. Linux下Redis4.0.12安装、配置、优化

    一.安装 1.检查gcc环境 执行命令,如果Linux系统没有安装gcc编译器,会提示“Command not found” # gcc -v 安装gcc # yum -y install gcc 以 ...

  2. CentOS-7.0.中安装与配置Tomcat-7的方法

    安装说明 安装环境:CentOS-7.0.1406安装方式:源码安装 软件:apache-tomcat-7.0.29.tar.gz 下载地址:http://tomcat.apache.org/down ...

  3. Yii2.0的安装与配置教程

    版权声明:本文为博主原创文章,未经博主允许不得转载. PHP版本需求:PHP5.4.0以上,因为Yii2.0基于PHP5.4以上版本进行了完全重写. 目前有两种方法可以安装Yii2.0,一种是安装Co ...

  4. MySQL8.0.12 安装及配置、读写分离,主从复制

    一.安装 1.从网上下载MySQL8.0.12版本,下载地址:https://dev.mysql.com/downloads/mysql/ 2. 下载完成后解压 我解压的路径是:D:\Java\mys ...

  5. 学习 Hadoop3.0 一、Hadoop3.0的安装与配置

    一.JDK1.8的安装 添加ppa sudo add-apt-repository ppa:webupd8team/java sudo apt-get update 安装Oracle-java-ins ...

  6. mongodb 3.0下载安装、配置及mongodb最新特性、基本命令教程详细介绍

    mongoDB简介(本文由www.169it.com搜集整理) MongoDB是一个高性能,开源,无模式的文档型数据库,是目前在IT行业非常流行的一种非关系型数据库(NoSql).它在许多场景下可用于 ...

  7. Emgucv3.0的安装与配置

    环境:vs2015+Emgucv3.0 Emgu Cv简介: Emgu CV 是.NET平台下对OpenCV图像处理库的封装.也就是OpenCV的.NET版.它运行在.NET兼容的编程语言下调用Ope ...

  8. 【Redmine】Redmine 3.0.1 安装与配置

    Redmine安装 VM安装Linux 安装Bitnami Redmine 配置环境 1.VM安装Linux 使用虚拟机安装Linux 本文使用的是Centos(CentOS-6.3-x86_64-b ...

  9. zabbix4.0的安装与配置

    #安装zabbix监控首先的先安装LNMP环境,在这里我采用事先准备好的脚本进行安装LNMP环境 脚本内容如下: #!/bin/bash # DATE:Wed Jan # hw226234@126.c ...

  10. Solr(5.1.0) 与Tomcat 从0开始安装与配置

    1.什么是Solr? Solr是一个基于Lucene的Java搜索引擎服务器.Solr 提供了层面搜索.命中醒目显示并且支持多种输出格式(包括 XML/XSLT 和 JSON 格式).它易于安装和配置 ...

随机推荐

  1. 31.Linux-wm9876声卡驱动(移植+测试)

    本节学习目的 1)分析Linux中的OSS声卡系统 2)移植wm9876声卡 3)使用madplay应用程序播放mp3 1.声音三要素 采样频率 音频采样率是指录音设备在一秒钟内对声音信号的采样次数, ...

  2. PHP截取带有汉字的字符串,将汉字按两个字节计算

    <?php header("Content-type:text/html;charset=utf-8"); /** *截取字符串,汉字占两个字节,字母占一个字节 *页面编码必 ...

  3. 3)C语言数组(C自考学习)

    一维数组 一维数组中的元素是排列成一行的,当需要存放一行或一列数据时常用一维数组.一维数组的元素常用"数组名[下标]"来表示,其中,下表是从0开始的.例如:a[0]="h ...

  4. python3学习笔记(2)

    一.面向对象(初识)由类和方法组成,类里面封装了很多功能,根据这个类,可以创建一个这个类的对象,即对象是根据这个类创建的,以后这个对象要使用某个功能的时候就从这个类里面的找.例:str -功能一 -功 ...

  5. 如何用webgl(three.js)搭建一个3D库房-第一课

    今天我们来讨论一下如何使用当前流行的WebGL技术搭建一个库房并且实现实时有效交互 第一步.搭建一个3D库房首先你得知道库房长啥样,我们先来瞅瞅库房长啥样(这是我在网上找的一个库房图片,百度了“库房” ...

  6. 罗培羽—C语言简单游戏编程教学

    编写许多软件都需要有菜单,那么如果我们使用tc之类的软件来编译程序的话,我们该怎么编写菜单呢?让我们一起来试试吧!第一步:简单例子       我们先来写个最简单的例子:#include<std ...

  7. JS的数据类型及转换(还是基础的东西)

    朋友说我这是再自娱自乐,我只想说,你说的对

  8. iscroll遇到的两个坑

    最近移动端闪付遇到的两个坑做下总结: 1.使用iscroll后,滑动并没有生效 解决方案: 首先要查看:结构是否正确: <div id="wrapper">   //w ...

  9. Java面试常见算法题

    1.实现字符串反转 提供七种方案实现字符串反转 import java.util.Stack; public class StringReverse { public static String re ...

  10. springboot之Jwt验证

    简介 什么是JWT(Json Web Token) jwt是为了在网络应用环境间传递声明而执行的一种基于json的开放标准.该token被设计紧凑且安全的,特别适用于SSO场景. jwt的声明一般被用 ...