一、简介
    Redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)和zset(有序集合)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。

在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。

Redis是一个高性能的key-value数据库。redis的出现,很大程度弥补了memcached这类key-value存储的不足,在部分场合可以对关系数据库起到很好的补充作用。它提供了Python,Ruby,Erlang,Go, PHP客户端,使用很方便。

二、安装前准备

1.必需的编译工具:
  1.1 检查编译工具  gcc 和 gcc-c++ 是否已安装,参考命令:
      # rpm -qa | grep gcc
      # rpm -qa | grep gcc-c++
     
      如果没有安装,推荐yum安装,参考命令:
      # yum install -y gcc gcc-c++

1.2 安装或升级编译工具 gcc44 、 gcc44-c++ 、 libstdc++44-devel 或更高版本:
      # rpm -qa | grep "gcc*"
      # rpm -qa | grep "libstdc++*"

如果没有安装,推荐yum安装(确保gcc gcc-c++安装v4.4版本以上),参考命令:
      # yum install -y gcc gcc-c++
      # yum install -y gcc44 gcc44-c++    //注:如果gcc gcc-c++安装v4.4版本以上此步可跳过
      # yum install -y libstdc++44-devel  //注:如果libstdc++-devel安装v4.4版本以上此步可跳过

2.自redis-2.6以上版本要求编译工具tcl更高的版本,建议下载安装最新版的tcl编译工具,免得redis编译时报错
  【SQLite数据库安装时也需tcl软件支持,如果已经安装,此步骤请跳过~~~~】
  tcl是tool command language的缩写,tcl是一种很通用的脚本语言,它几乎在所有的平台上都可以解释运行,通过使用 tcl 这款含有数百预编译模块的程序,缩短编译您自己的 Tcl/Tk 模块的所需时间。
  下载地址:http://www.linuxfromscratch.org/blfs/view/cvs/general/tcl.html
  按官方指导的方法安装:
  # tar -zxvf tcl8.6.0-src.tar.gz
  # cd tcl8.6.0/unix/
  # ./configure --prefix=/usr --without-tzdata --mandir=/usr/share/man $([ $(uname -m) = x86_64 ] && echo --enable-64bit)
  # make
  # sed -e "s@^\(TCL_SRC_DIR='\).*@\1/usr/include'@" -e "/TCL_B/s@='\(-L\)\?.*unix@='\1/usr/lib@" -i tclConfig.sh
  # make install
  # make install-private-headers && ln -v -sf tclsh8.6 /usr/bin/tclsh && chmod -v 755 /usr/lib/libtcl8.6.so

可以查看一下它指向的软链接文件情况,如果tclsh -> tclsh8.6应该就没问题了,如下:
  # ll /usr/bin/ | grep tcl
  lrwxrwxrwx 1 root root    8 11-17 22:51 tclsh -> tclsh8.6

三、安装Redis

1.执行安装

在 CentOS 6.x 以下版本,由于gcc/g++版本过低,需要设置一下环境变量使之在当前会话立即生效(如果下面编译时有报错的话),参考命令:
     # export CC=/usr/bin/gcc44
     # export CXX=/usr/bin/g++44

编译安装Redis(Redis省略了configure这步,默认安装到 /usr/local/bin/ 目录中)
  # tar -zxvf redis-2.8.3.tar.gz && cd redis-2.8.3
  # make
  # make install
 
  至此,Redis安装完成,共生成5个可执行文件,默认安装到 /usr/local/bin/ 目录中,分别是:
    redis-benchmark   # 性能测试程序,用以模拟同时由N个客户端发送M个 SETs/GETs 查询 (类似于 apache 的 ab 工具)
    redis-check-aof   # 更新快照程序
    redis-check-dump  # 本地数据库持久化程序
    redis-cli         # 客户端连接程序
    redis-server      # 服务器启动程序

2.规划我的redis放置目录(/usr/local/redis):
  2.1 创建一个配置文件存放目录:
      # mkdir -p /usr/local/redis/etc

2.2 创建一个可执行程序存放目录:
      # mkdir -p /usr/local/redis/bin

2.3 创建一个数据库快照、aof存放目录:
      # mkdir -p /usr/local/redis/dbbak

2.4 创建一个日志存放目录:
      # mkdir -p /usr/local/redis/logs

3.将配置文件、可执行文件拷贝到我的redis规划目录
  3.1 拷贝配置文件:将redis源码包中的 redis.conf 文件拷贝到 /usr/local/redis/etc/
      # cp redis.conf /usr/local/redis/etc/BAK.redis.conf
      # cp redis.conf /usr/local/redis/etc/redis.conf

3.2 剪切程序文件:将 /usr/local/bin/ 目录下的几个程序文件移动到规划好的 /usr/local/redis/bin/ 目录中
      # mv -v /usr/local/bin/redis-* /usr/local/redis/bin/

3.3 修改配置文件:使之以守护进程的方式启动
      # vi /usr/local/redis/etc/redis.conf
      在约17行将 daemonize no 改为 daemonize yes

4.启动redis服务,同时加载指定配置文件redis.conf
  # /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf

查看端口侦听情况(默认侦听6379端口):
  # netstat -tunpl | grep 6379
 
  查看进程启动情况
  # ps -ef | grep redis

5.redis客户端登录
  # /usr/local/redis/bin/redis-cli
  redis 127.0.0.1:6379> info
  redis 127.0.0.1:6379> exit 或 quit 或 ctrl+c

6.停止redis服务 
  # /usr/local/redis/bin/redis-cli shutdown
  # pkill redis-server

7.设置redis随系统自启动(用vi编辑 /etc/rc.d/rc.local 添加也可):
  # echo "# Redis随系统自启动:" >> /etc/rc.d/rc.local
  # echo "/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf" >> /etc/rc.d/rc.local

redis2.8.xx安装配置的更多相关文章

  1. Hive on Spark安装配置详解(都是坑啊)

    个人主页:http://www.linbingdong.com 简书地址:http://www.jianshu.com/p/a7f75b868568 简介 本文主要记录如何安装配置Hive on Sp ...

  2. Redhat Server 5.7 安装配置PHP

    PHP的简介 PHP于1994年由Rasmus Lerdorf创建,刚刚开始是Rasmus Lerdorf 为了要维护个人网页而制作的一个简单的用Perl语言编写的程序.这些工具程序用来显示 Rasm ...

  3. subversion(SVN)安装配置

    简介subversion(简称svn)是近年来崛起的版本管理软件系统,是cvs的接班人.目前,绝大多数开源软件都使用svn作为代码版本管理软件.Subversion是一个版本控制系统,相对于的RCS. ...

  4. GitHub安装配置

    GitHub安装配置1.安装Git-1.9.5-preview20141217 2.配置config文件Windows(在命令行下)cd /d %userprofile%if not exist &q ...

  5. 安卓开发第一步:Android Studio安装配置

    虽然本人是JAVA开发工程师平时主要开发Web App,但因为项目需求需要开发对应的移动端.一时又找不到合适的安卓开发人员,兄弟我只好被项目经理"抓来当壮丁了".俗话说好" ...

  6. centos6.6安装配置jboss7.1.1

    Centos6.6下安装配置Jboss7.1.1 在了解jboss牛逼特性之后,我决定安装下jboss7.1.1试试 下面是安装包百度云盘链接: http://pan.baidu.com/s/1o6O ...

  7. Centos7安装配置gitlab

    Centos7安装配置gitlab 这篇文字我会介绍在Centos7上安装gitlab,配置gitlab的smtp,并且创建项目demo. sudo yum install openssh-serve ...

  8. nagios安装配置

     http://www.codeweblog.com/nagios%E5%AE%89%E8%A3%85%E9%85%8D%E7%BD%AE/ 上线的服务器有时会被人攻击,导致服务不可用,今天安装配置了 ...

  9. 浅谈Redis及其安装配置

    一.Redis的介绍 二.Redis的安装配置 三.Redis的配置文件说明 四.Redis的简单操作 简介: Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型. ...

随机推荐

  1. nginx基础配置加基础实战演示

    目录 基本配置 设置用户 工作衍生进程数 错误日志存放路径 pid文件存放路径 设置最大连接数 http->server gzip 字符编码 nginx的基本格式 实战配置 虚拟主机配置 开始配 ...

  2. 使用Photon引擎进行unity网络游戏开发(四)——Photon引擎实现网络游戏逻辑

    使用Photon引擎进行unity网络游戏开发(四)--Photon引擎实现网络游戏逻辑 Photon PUN Unity 网络游戏开发 网络游戏逻辑处理与MasterClient 网络游戏逻辑处理: ...

  3. 785. Is Graph Bipartite?

    Given an undirected graph, return true if and only if it is bipartite. Recall that a graph is bipart ...

  4. 3星|《给你讲个笑话:我是创业公司CEO》:创业成功就是上帝掷骰子

    给你讲个笑话:我是创业公司CEO 作者有过数次创业经历,最后一次在济南创业,后来公司搬到北京,看书中的交代公司目前好像还不算太成功.书中交代作者公司的业务是文化产品的策划,没细说做什么,也没说做成过哪 ...

  5. JAVA学习笔记--字符串概述

    一.String类 String类代表字符串,是由字符构成的一个序列.创建String对象的方法很简单,有以下几种: 1)用new来创建: String s1 = new String("m ...

  6. [kuangbin带你飞]专题一 简单搜索 回顾总结

    第二题:bfs,忘了将queue清空. 第三题:bfs,记得使用vis数组,防止重复入队

  7. JPA error org.hibernate.AnnotationException: No identifier specified for entity

    错误:org.hibernate.AnnotationException: No identifier specified for entity 原因:JPA所使用的Entity需要标注@Id,在引用 ...

  8. tomcat 最大并发连接数设置

    转自: http://blog.csdn.net/qysh123/article/details/11678903 这是个很简单的问题,但是搜了一圈,发现大家都写错了.所以这里总结一下: 几乎所有的中 ...

  9. mongoDB操作2

    一.find操作 MongoDB中使用find来进行查询,通过指定find的第一个参数可以实现全部和部分查询. 1.查询全部 空的查询文档{}会匹配集合的全部内容.如果不指定查询文档,默认就是{}. ...

  10. MD5加密字符串--基于python

    import hashlib#md5加密32位def md5(str): import hashlib m = hashlib.md5() m.update(str) return m.hexdige ...