redis安裝全過程

一、 從官網上下載redis。php

二、安裝gcchtml

三、進入./redis/src目錄下make MALLOC =libcmysql

四、遇到的問題linux

 

Redis簡介:

Redis是一個開源的使用ANSI C語言編寫、支持網絡、可基於內存亦可持久化的日誌型、Key-Value數據庫,並提供多種語言的API。從2010年3月15日起,Redis的開發工做由VMware主持。redis

redis是一個key-value存儲系統。和Memcached相似,它支持存儲的value類型相對更多,包括string(字符串)、list(鏈表)、set(集合)、zset(sorted set –有序集合)和hash(哈希類型)。這些數據類型都支持push/pop、add/remove及取交集並集和差集及更豐富的操做,並且這些操做都是原子性的。在此基礎上,redis支持各類不一樣方式的排序。與memcached同樣,爲了保證效率,數據都是緩存在內存中。區別的是redis會週期性的把更新的數據寫入磁盤或者把修改操做寫入追加的記錄文件,而且在此基礎上實現了master-slave(主從)同步。sql

安裝所遇問題

  1. 下載解壓redis-2.0.4後,執行make進行編譯,結果出現下面的錯誤:數據庫

    make: cc: Command not found make: *** [adlist.o] Error 127緩存

    編譯redis時 提示make cc Command not found
  2.  

    這是因爲新安裝的Linux系統沒有安裝gcc環境,須要安裝gcc,爲了方便,這裏我選擇用yum進行安裝。ruby

    # yum  install  gcc服務器

    編譯redis時 提示make cc Command not found
  3.  
    編譯redis時 提示make cc Command not found
  4.  

    驗證gcc是否安裝成功

    # rpm -qa |grep gcc

    編譯redis時 提示make cc Command not found
  5.  

    從新對redis進行編譯安裝

    # make  && make install 

    經過下圖能夠看到編譯經過,併成功安裝redis。

    編譯redis時 提示make cc Command not found
    編譯redis時 提示make cc Command not found
  6. 6

    總結:在進行linux系統安裝時,尤爲是進行linux服務器安裝時,系統工程師每每會最小化安裝相應的在linux系統。那麼,在這樣的linux系統上進行源碼文件編譯安裝時,一般都會出現cc: Command not found,這說明系統上沒有安裝C語言環境,須要安裝,在linux系統上的C環境是gcc,所以須要安裝gcc。

     

     

    發佈於 2014-12-19 11:19:17 | 24844 次閱讀 | 評論: 8 | 來源: PHPERZ

    這裏有新鮮出爐的Redis 官方指南,程序狗速度看過來!

     

    Redis Key-Value數據庫

    Redis是一個開源的使用ANSI C語言編寫、支持網絡、可基於內存亦可持久化的日誌型、Key-Value數據庫,並提供多種語言的API。

     


    本文爲你們講解的是Redis 2.8.18 安裝報錯 error: jemalloc/jemalloc.h: No such file or directory解決方法,感興趣的同窗參考下。

    錯誤描述

    安裝Redis 2.8.18時報錯:

    zmalloc.h:50:31: error: jemalloc/jemalloc.h: No such file or directory
    zmalloc.h:55:2: error: #error "Newer version of jemalloc required"
    make[1]: *** [adlist.o] Error 1
    make[1]: Leaving directory `/data0/src/redis-2.6.2/src'
    make: *** [all] Error 2

    緣由分析

    在README 有這個一段話。

    Allocator  
    ---------  
     
    Selecting a non-default memory allocator when building Redis is done by setting  
    the `MALLOC` environment variable. Redis is compiled and linked against libc  
    malloc by default, with the exception of jemalloc being the default on Linux  
    systems. This default was picked because jemalloc has proven to have fewer  
    fragmentation problems than libc malloc.  
     
    To force compiling against libc malloc, use:  
     
        % make MALLOC=libc  
     
    To compile against jemalloc on Mac OS X systems, use:  
     
        % make MALLOC=jemalloc


    說關於分配器allocator, 若是有MALLOC  這個 環境變量, 會有用這個環境變量的 去創建Redis。

    並且libc 並非默認的 分配器, 默認的是 jemalloc, 由於 jemalloc 被證實 有更少的 fragmentation problems 比libc。

    可是若是你又沒有jemalloc 而只有 libc 固然 make 出錯。 因此加這麼一個參數。

    解決辦法

    make MALLOC=libc

 

在安裝成功以後,能夠運行測試,確認Redis的功能是否正常

$ make test

出現報錯:

hadoop@stormspark:~/workspace/redis2.6.13/src$ make test You need tcl 8.5 or newer in order to run the Redis test make: *** [test] Error 1

解決方式

安裝tcl

wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz sudo tar xzvf tcl8.6.1-src.tar.gz -C /usr/local/ cd /usr/local/tcl8.6.1/unix/ sudo ./configure sudo make sudo make install 

成功運行test

這裏寫圖片描述

相關文章
相關標籤/搜索