把redis安裝到ubuntu-14.04.1-server

來源:互聯網
上載者:User

註:此處使用的ubuntu版本為14.04.1-server並安裝到VMware® Workstation 12 Pro下,redis為3.0.7

    對於redis的安裝,如果是案頭版的ubuntu確實足夠簡單,但作為伺服器使用,我們通常會選擇server版本的ubuntu,而伺服器版的ubuntu安裝redis會稍微複雜一點,這裡就將整個安裝過程說明一下(含錯誤解決)。

    首先我們需要下載redis:

wget http://download.redis.io/release/redis-3.0.7.tar.gz

    下載好後將其解壓縮:

tar -xzf redis-3.0.7.tar.gz

    解壓完成後進入到redis目錄:

cd redis-3.0.7

    然後我們使用make命令編譯(會出錯):

make

    對,這裡會出錯,server版ubuntu沒有make工具,需要我們自己安裝,然後我們理所當然的輸入以下命令安裝(如果跟筆者使用相同的vm和ubuntu依然會出錯):

sudo apt-get install make

    進行幾步後悔提示:請掛載cdrom,因為此時的安裝會自動到 /media/cdrom 下的系統安裝檔案(iso)尋找需要的內容,對於VMware,接下來我們就需要串連磁碟機:

    (VMware內建中文的)右鍵當前的虛擬機器->可行動裝置->CD/DVD->設定

    串連中選擇使用的ISO檔案,並瀏覽選擇當前系統對應的ISO檔案,確定。

    右鍵當前虛擬機器->可行動裝置->CD/DVD->串連

    串連好後案頭版的ubuntu會自動掛載光碟機,但是伺服器版的還需要我們自己手動掛載,因為make安裝是提示的是在 /media/cdrom ,所以我們直接使用以下命令掛載光碟機到這個目錄:

mount /dev/cdrom /media/cdrom 

    接下來我們就可以繼續安裝make了。

    make工具安裝完成後,即可使用make命令編譯redis源檔案。

    然而,伺服器版本的ubuntu連gcc都沒裝的,所以,還請輸入以下命令安裝gcc:

sudo apt-get install gcc

    安裝好後我們再次make。sorry。這裡可能還會報錯(如果使用的redis版本跟筆者相同的話):“error: jemalloc/jemalloc.h: No such file or directory”。

    錯誤描述:

zmalloc.h:50:31: error: jemalloc/jemalloc.h: No such file or directoryzmalloc.h:55:2: error: #error "Newer version of jemalloc required"make[1]: *** [adlist.o] Error 1make[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

    OK,終於可以愉快的make了。

    make完後cd到src目錄ls後就能看到編譯好的檔案,然後可以啟動redis開始玩了。

    更多內容請移步:

    Redis安裝及Java用戶端的使用淺析

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.