1.redis简单说明

  a.在前面我简单的说过redis封装成共用类的实现,地址如下:http://www.cnblogs.com/hanyinglong/p/Redis.html

  b.redis是一个key-value存储系统,它支持存储的value类型相比较Memcached更多,包括string,list,set,sets,hashes等(It supports data structures such as strings,hashes,lists,sets,sorted sets with range queries,bitmaps,hyperloglogs and geospatial indexes with radius queies)这些数据类型都支持push/pop,Add/remove等丰富的操作,而且这些操作都是原子性的。
  c.redis和Memcached一样,为了保证效率,数据都是缓存在内存中的,区别就是redis会周期性的将更新的数据写入磁盘,并且可以实现主从(master-slave)同步。
  d.redis在数据存储方面,采用了NoSql数据库的思想,即将Key作为数据检索的唯一标示,可以将其简单的理解为关系型数据库中索引的键,而value则作为数据存储的主要对象,其中每一个Value都有一个Key与之对应,在Redis中,Value将被视为二进制字节流用于存储任何格式的数据,如Json,XML,图片和序列化对象的字节流等,因此我们也可以将其想象为RDB中的Blob类型字段,从而在我们进行数据查询是,只能基于Key作为我们查询的条件。
  e.redis官网:http://www.redis.io/

2.准备工作

  a.通过上面的说明之后我们既可以开始在linux系统下面安装redis了,在安装redis的过程中我遇到了一些问题,但也全部解决了,本来我想直接写然后遇到错误在引出来需要安装什么,但是感觉不太好写,所以我还是在前面将这些软件准备好,大家安装的时候可以先去安装redis去验证会不会出现问题,在解决也行。

  b.下载redis的包,下载地址:http://download.redis.io/releases/redis-3.0.5.tar.gz
  c.redis是C语言实现的,所以在Linux系统中需要安装gcc来进行编译,安装gcc请参考第三步。
  d.接下来需要安装Unix的Tcl工具,如果不安装的话后期我们将无法对Redis进行测试,完成安装之后make test会报错,安装tcl请参考第4步,tcl包的下载地址是:http://downloads.sourceforge.net/tcl/tcl8.6.3-src.tar.gz
  e.安装完成上面的几个必须的包之后,即可以安装redis,请参考第5步之后。
  f.操作需要的软件以及系统如下:虚拟机(Vmware),虚拟机中安装的Centos系统,Xshell,Xftp,redis包,tcl包。

3.gcc的安装

  a.通过上面准备工作之后,我们现在已经拥有了可以安装和发布的环境,如果没有,请自行查询安装。

  b.在centos下面安装gcc,我们使用yum(包管理器)安装,因为gcc依赖了很多东西,而有些包系统可能已经安装了,有些没有,所以下面的命令最后都执行一遍,在Xshell中执行下面的命令:
    b.1 yum install cpp  
    b.2 yum install binutils
    b.3 yum install glibc-kernheaders
    b.4 yum install glibc-common
    b.5 yum install glibc-devel
    b.6 yum install gcc
    b.7 yum install make
    备注:以上所有的包信息在安装完成的时候都会提示Complete,如果没有是Complete,而是Nothing to do,则说明服务器已经安装了这个包,不需要再次安装,所以没关系,继续执行下一个命令即可。
  c.如果安装过程中没有报错,则说明gcc的安装已经完成了,下面继续安装tcl。

4.Tcl的安装

  a.在Xshell中使用命令跳转到local下面创建属于自己的文件夹:kencery

    a.1  cd usr/local/   mkdir kencery   cd kencery/
  b. 然后使用Xftp将在准备工作下载的tcl包复制到kencery文件夹下面,如图所示:
    
  c.将上传的tcl包解压,解压之后重命名为tcl,如图所示
    c.1  tar -zxvf tcl8.6.3-src.tar.gz
    c.2  mv tcl8.6.3 tcl
    c.3 cd tcl 
  d.解压完成之后使用下面的命令安装,命令执行顺序按照我写的即可。
    d.1 cd unix/
    d.2  ./configure    
    d.3 make
    d.4 make install
  e.在执行的过程中如果不出现错误,耐心等待即可,这些命令的截图就不放在这里了,按照我写的顺序执行即可。   

5.redis的安装

  a.通过上面几步之后,准备工作已经完成,即可以开始安装redis了。

  b.使用Xftp将在准备工作下下载的redis包复制到kencery文件夹下面,如图所示:
        
  c.将上传的redis包解压,解压之后重命名为redis,如图所示:
    c.1  tar -zxvf redis-3.0.5.tar.gz 
    c.2 mv redis-3.0.5 redis
    c.3 cd redis
  d.当对包解压完成之后,便可以开始对其进行安装了,安装的命令为(在redis目录下执行):
    d.1 make
      (1) 在练习的时候输入make出现错误了,但是现在写博客的时候部署没有出现错误,如果出现错误,请使用这个命令(make MALLOC=libc)即可执行,因为没有出现错误,所以没有截图,大家如果遇到的话给我截图留言,谢谢。
      (2) 如果执行make出现错误,当再次执行make的话,我们建议,清理一下在执行,命令为:make clean。
    d.2  cd src/        make test 
      (1)在执行完make之后,在最后的程序中会输出(t's a good idea to run 'make test'),它建议我们执行make test进行测试,那么接下来我们就输入make test,检查测试,是否出现问题,如出现如图所示:则说明测试没有问题:
      
      (2)在输入make test执行的时候我在练习的时候是会出现错误的,但是这个错误不影响我们的测试,故而可以忽略。
    d.3 make install
      最后执行make install,不出现错误的话则说明redis安装成功,如图所示:
      

6.redis的测试

  a.当安装完redis之后,就需要进行测试,以下简单做一个测试来验证我们的redis是否安装成功。
  b.首先我们启动redis服务,启动和关闭redis服务命令如下:
    b.1  src/redis-server &      启动redis,加上&表示使redis以后台程序方式运行
    b.2 redis-server /usr/local/kencery/redis/redis.conf  启动redis
    b.3  src/redis-cli shutdown     关闭redis
    b.4 输入启动redis的命令,启动redis,如图所示:
      
    b.5  当redis启动完成之后,使用netstat -ntlp |grep 6379  查看端口是否在使用中,如果在使用中,则说明安装成功,否则安装没有成功。
      
    b.6 连接redis并且测试,连接命令为:src/redis-cli,最后的测试结果如图所示:
      
    b.7 到这里reids的安装和测试工作全部完成了。

7.Linux中设置redis的服务器启动和关闭

  a.如上面所述,我们已经完成了对redis的安装,接下来就可以按照上面的方法使用,但是这里还存在一些小问题,那就是linux系统重启之后都需要找到安装路径才能执行启动命令,那么我们可以设置按照service的形式来启动redis吗?
  b.执行命令:vim /etc/init.d/redis,创建脚本文件,在文件中写入如下代码,保存并且退出:
  1. # Date --
  2. # chkconfig:
  3. # description: Start and Stop redis
  4.  
  5. PATH=/usr/local/kencery/redis/src:/sbin:/usr/bin:/bin
  6. REDISPORT=
  7. EXEC=/usr/local/kencery/redis/src/redis-server
  8. REDIS_CLI=/usr/local/kencery/redis/src/redis-cli
  9.  
  10. PIDFILE=/var/run/redis.pid
  11. CONF="/usr/local/kencery/redis/redis.conf"
  12. AUTH=""
  13. case "$1" in
  14. start)
  15. if [ -f $PIDFILE ]
  16. then
  17. echo "$PIDFILE exists, process is already running or crashed."
  18. else
  19. echo "Starting Redis server..."
  20. $EXEC $CONF
  21. fi
  22. if [ "$?"="" ]
  23. then
  24. echo "Redis is running..."
  25. fi
  26. ;;
  27. stop)
  28. if [-f $PIDFILE ]
  29. then
  30. echo "$PIDFILE exists, process is not running."
  31. else
  32. PID=$(cat $PIDFILE)
  33. echo "Stopping..."
  34. $REDIS_CLI -p $REDISPORT SHUTDOWN
  35. sleep
  36. while [ -x $PIDFILE ]
  37. do
  38. echo "Waiting for Redis to shutdown..."
  39. sleep
  40. done
  41. echo "Redis stopped"
  42. fi
  43. ;;
  44. restart|force-reload)
  45. ${} stop
  46. ${} start
  47. ;;
  48. *)
  49. echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&
  50. exit
  51. esac

redis 脚本

  c.给文件添加权限,使用脚本文件可以执行,命令为:chmod 755 /etc/init.d/redis
  d.以上工作顺利完成并且没有出现报错,则配置完成,每次我们开机之后都可以输入以下两个命令启动和关闭redis服务,如图所示:
    d.1 service redis start  开启redis服务
    d.2  service redis stop 关闭redis服务
    
  f.当开启服务之后既可以连接redis测试进行操作或者使用其他客户端来操作redis,测试如图所示:
    

8.Linux中设置redis的开机启动

  a.在大部分情况下,我们需要服务器重新启动的时候自动开启redis,而不是我们手工的去开启,那么下来就说一下开机自动启动的设置。

  b.首先设置redis.config中的daemonize为yes,确保守护进行开启,执行以下命令:
    b.1 cd usr/local/kencery/redis
    b.2 vim redis.conf  开启配置文件,找到daemonize属性酒设置为yes, 保存并且退出即可。
  c.然后设置开机启动,命令:chkconfig redis on
  d.当以上步骤完成之后,即可以可以重新启动Linux然后按照前面所写的测试是否随机器自动启动了。
 
            下面我们就继续来学习redis的知识,下篇继续,每天一点点,都是进步。
                
                文章中如哪里存在问题,欢迎大家指出来,我会在第一时间修改。
 
                            君若不弃,我定不离

Linux(Centos)之安装Redis及注意事项的更多相关文章

  1. Linux(Centos)之安装Nginx及注意事项

    1.Nginx的简单说明 a.  Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器,期初开发的目的就是为了代理电子邮件服务器室友:Igor Sysoev开发 ...

  2. 转:Linux(Centos)之安装Nginx及注意事项

    1.Nginx的简单说明 a.  Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器,期初开发的目的就是为了代理电子邮件服务器室友:Igor Sysoev开发 ...

  3. 【转载】Linux(CentOS)下安装Redis

    转载地址:https://blog.csdn.net/diweikang/article/details/78784631 1.下载Redis下载最新Linux版本的Redis,我用的是redis-4 ...

  4. Linux centos 下安装redis

    一.安装编译工具及库文件      yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel 二.选择安装文件 ...

  5. NoSql1 在Linux(CentOS)上安装memcached及使用

    前言:       今天是初五,生活基本要从过年的节奏中回归到正常的生活了,所以想想也该想想与工作有关的事情了.我之前在工作中会经常使用memcached和redis,但是自己一直没有时间系统的好好看 ...

  6. Linux下php安装Redis扩展

    说明: 操作系统:CentOS php安装目录:/usr/local/php php.ini配置文件路径:/usr/local/php7/etc/php.ini Nginx安装目录:/usr/loca ...

  7. Linux CentOs7 下安装 redis

    Linux CentOs7 下安装 redis 请将以下命令放入linux命令行中运行 如果安装过程前没有安装GCC请先安装  命令如下 $ yum install gcc-c++ $ wget ht ...

  8. Linux(CentOs)下安装Phantomjs + Casperjs

    Linux(CentOs)下安装Phantomjs + Casperjs 是参照cnMiss's Blog http://ju.outofmemory.cn/entry/70691的博客进行安装的 1 ...

  9. linux/centos下安装nginx(rpm安装和源码安装)详细步骤

    Centos下安装nginx rpm包                                                                                 ...

随机推荐

  1. Android开发学习之路-下拉刷新怎么做?

    因为最近的开发涉及到了网络读取数据,那么自然少不了的就是下拉刷新的功能,搜索的方法一般是自己去自定义ListView或者RecyclerView来重写OnTouch或者OnScroll方法来实现手势的 ...

  2. Android开发学习之路-LruCache使用和源码分析

    LruCache的Lru指的是LeastRecentlyUsed,也就是近期最少使用算法.也就是说,当我们进行缓存的时候,如果缓存满了,会先淘汰使用的最少的缓存对象. 为什么要用LruCache?其实 ...

  3. Atitit 研发团队建设----福利法案--非物质福利与物质福利法案

    Atitit 研发团队建设----福利法案--非物质福利与物质福利法案 1.1. 何为非物质福利法案??1 1.2. 福利类型1 1.2.1. 公共福利1 1.2.2. 个人福利2 1.2.3. 组织 ...

  4. Leetcode-463 Island Perimeter

    #463. Island Perimeter You are given a map in form of a two-dimensional integer grid where 1 represe ...

  5. JS原生第七篇 (帅哥)

    1.1 复习 offset   自己的 偏移 offsetWidth    得到自己的宽度 offsetHeight 构成 :   width  +   padding  +  border div ...

  6. IOS数据存储之文件沙盒存储

    前言: 之前学习了数据存储的NSUserDefaults,归档和解档,对于项目开发中如果要存储一些文件,比如图片,音频,视频等文件的时候就需要用到文件存储了.文件沙盒存储主要存储非机密数据,大的数据. ...

  7. MySQL学习笔记十一:数据导入与导出

    数据导入 1.mysqlimport命令行导入数据 在使用mysqlimport命令导入数据时,数据来源文件名要和目标表一致,不想改文件名的话,可以复制一份创建临时文件,示例如下. 建立一个文本use ...

  8. __weak 和 __block 区别

    Blocks理解: Blocks可以访问局部变量,但是不能修改 如果修改局部变量,需要加__block __block int multiplier = 7; int (^myBlock)(int) ...

  9. swift 中指针的使用UnsafeMutablePointer

    在swift中已经弱化了指针的使用,可以这么使用 let s: NSRange = NSMakeRange(, ) let at = UnsafeMutablePointer<NSRange&g ...

  10. iOS开发多线程篇—多线程简单介绍

    iOS开发多线程篇—多线程简单介绍 一.进程和线程 1.什么是进程 进程是指在系统中正在运行的一个应用程序 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内 比如同时打开QQ.Xcod ...