一、简介
    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. Karma与TSLint

    TSLint TSLint是一个可扩展的静态分析工具,用于检查TypeScript代码的可读性,可维护性和功能性错误.收到现代编辑和构建系统的广泛支持,并且可以使用您自己的路由,配置和格式化. 安装 ...

  2. stl源码分析之priority queue

    前面两篇介绍了gcc4.8的vector和list的源码实现,这是stl最常用了两种序列式容器.除了容器之外,stl还提供了一种借助容器实现特殊操作的组件,谓之适配器,比如stack,queue,pr ...

  3. 三、Django之请求与响应-Part 1

    一.新建项目 进入你指定的项目保存目录,然后运行下面的命令: $ django-admin startproject mysite 这将在目录下生成一个mysite目录,也就是你的这个Django项目 ...

  4. Teaching Machines to Understand Us 让机器理解我们 之一 引言

    Teaching Machines to Understand Us   By Tom Simonite  MIT Technology Review Vol.118 No.5 2015 让机器理解我 ...

  5. Kubernetes学习-相关概念

    Kubernetes架构图 上图可以看到如下组件,使用特别的图标表示Service和Label: Pod Container(容器) Label()(标签) Replication Controlle ...

  6. Paper Reading - Mind’s Eye: A Recurrent Visual Representation for Image Caption Generation ( CVPR 2015 )

    Link of the Paper: https://ieeexplore.ieee.org/document/7298856/ A Correlative Paper: Learning a Rec ...

  7. mtv网站架构模式适合企业网站应用吗?

    mtv网站架构模式适合企业网站应用吗?有时候在思考这样一个问题. 从开发角度来说,本来mvc的进度慢了些,如果在数据库管理方面用sql的话,管理起来也不很方便.小企业网本来数据就不很多,也没什么太多安 ...

  8. 手机上Uncaught ReferenceError: __WEBPACK_AMD_DEFINE_ARRAY__ is not defined的错误

    问题: vue2.0和webpack2.X的写的项目在电脑的浏览器上打开正常,在手机浏览器中访问页面的时候不能正常显示,空白. 通过chrome的真机调试chrome://inspect/#devic ...

  9. Thunder团队第七周 - Scrum会议4

    Scrum会议4 小组名称:Thunder 项目名称:i阅app Scrum Master:翟宇豪 工作照片: 宋雨在照相,所以不在相片中. 参会成员: 王航:http://www.cnblogs.c ...

  10. jsp取不到值栈的值

    是否页面用的重定向? <result name="addsuccess"  type="redirect"> ? 去掉type="redi ...