Linux(Centos)之安裝Redis及注意事項

來源:互聯網
上載者:User

標籤:串連   log   自動   complete   配置   伺服器   date   grep   手工   

1.redis簡單說明

1.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等豐富的操作,而且這些操作都是原子性的。

2.redis和Memcached一樣,為了保證效率,資料都是緩衝在記憶體中的,區別就是redis會周期性的將更新的資料寫入磁碟,並且可以實現主從(master-slave)同步。3.redis在資料存放區方面,採用了NoSql資料庫的思想,即將Key作為資料檢索的唯一標示,可以將其簡單的理解為關係型資料庫中索引的鍵,而value則作為資料存放區的主要對象,其中每一個Value都有一個Key與之對應,在Redis中,Value將被視為二進位位元組流用於儲存任何格式的資料,如Json,XML,圖片和序列化對象的位元組流等,因此我們也可以將其想象為RDB中的Blob類型欄位,從而在我們進行資料查詢是,只能基於Key作為我們查詢的條件。4.redis官網:http://www.redis.io/ 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,建立指令碼檔案,在檔案中寫入如下代碼,儲存並且退出:
 # Date 2017-06-21 # chkconfig: 2345 10 90   # description: Start and Stop redis     PATH=/usr/local/kencery/redis/src:/sbin:/usr/bin:/bin    REDISPORT=6379   EXEC=/usr/local/kencery/redis/src/redis-server    REDIS_CLI=/usr/local/kencery/redis/src/redis-cli     PIDFILE=/var/run/redis.pid    CONF="/usr/local/kencery/redis/redis.conf"   AUTH="1234"   case "$1" in            start)                    if [ -f $PIDFILE ]                    then                            echo "$PIDFILE exists, process is already running or crashed."                   else                           echo "Starting Redis server..."                           $EXEC $CONF                    fi                    if [ "$?"="0" ]                    then                            echo "Redis is running..."                   fi                    ;;            stop)                    if [-f $PIDFILE ]                    then                            echo "$PIDFILE exists, process is not running."                   else                           PID=$(cat $PIDFILE)                            echo "Stopping..."                          $REDIS_CLI -p $REDISPORT  SHUTDOWN                             sleep 2                          while [ -x $PIDFILE ]                           do                                   echo "Waiting for Redis to shutdown..."                                  sleep 1                           done                            echo "Redis stopped"                   fi                    ;;            restart|force-reload)                    ${0} stop                    ${0} start                    ;;            *)                   echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2                   exit 1   esac

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然後按照前面所寫的測試是否隨機器自動啟動了。 

Linux(Centos)之安裝Redis及注意事項

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.