Linux下安裝Redis php-redis擴展 redis重啟shell腳本 超詳細!


前言#

前面剛寫過nosql其中三款熱門產品的對比,這次主要寫關於Redis的一些事情,Redis的介紹、安裝以及擴展(php-redis,因為我是phper)安裝等等。同時是寫給我的朋友(cccjjjz)以及自己日后安裝使用。####


#目錄# ### 1.Redis介紹### ### 2.Redis安裝### ### 3.php-redis擴展安裝### ### 4.Redis重啟腳本### ### 5.結尾###
# Redis介紹# ##1.簡介## ####Redis 是完全開源免費的,遵守BSD協議,是一個高性能的key-value數據庫。Redis 與其他 key - value 緩存產品有以下三個特點:
1.Redis支持數據的持久化,可以將內存中的數據保存在磁盤中,重啟的時候可以再次加載進行使用。
2.Redis不僅僅支持簡單的key-value類型的數據,同時還提供list,set,zset,hash等數據結構的存儲。
3.Redis支持數據的備份,即master-slave模式的數據備份。 #### ##2.優勢## ####1.性能極高 – Redis能讀的速度是110000次/s,寫的速度是81000次/s 。
2.豐富的數據類型 – Redis支持二進制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 數據類型操作,並且對程序員透明,無需進行抽象。
3.原子 – Redis的所有操作都是原子性的,意思就是要么成功執行要么失敗完全不執行。單個操作是原子性的。多個操作也支持事務,即原子性,通過MULTI和EXEC指令包起來。
4.豐富的特性 – Redis還支持 publish/subscribe, 通知, key 過期等等特性。####
# Redis安裝# ###一、首先上官網下載Redis 壓縮包,地址:http://redis.io/download 。這里有兩種方式可以下載:### ####1.直接下載壓縮包![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130121547136-1008104818.png) #### ####2.wget方式下載,這個需要配置好DNS地址不然無法解析下載地址![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130121724183-2065369693.png) command: wget http://download.redis.io/releases/redis-4.0.2.tar.gz #### ####這里是下載的最新版本4.02的,大家可以根據自己的需要下載版本。如果下載壓縮包的小伙伴需要通過遠程工具把壓縮包上傳到安裝目錄(我是在usr/local里面,因為根據FHS建議自行安裝的軟件安裝到此目錄)####
###二、解壓### ####![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130122653808-1161188595.png) #### ####command: tar -xzvf redis-4.0.2.tar.gz####
###三、進入redis-4.0.2目錄,然后make進行編譯安裝### ####![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130145110776-646240917.png) command: cd redis-4.0.2/ #### #### ![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130144942886-2060916052.png) ![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130145000276-1892644761.png) command:make #### ###四、啟動Redis### #### ![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130145257495-255802215.png) command:src/redis-server #### ###五、啟動方式### ####上述命令src/redis-server會啟動redis但是啟動之后當前界面無法執行任何操作,按ctrl+c之后就會自己退出redis,只能用來確定redis是否安裝成功和成功啟動。我們需要讓redis以后台守護進程的方式啟動,方法如下:
1.編輯redis.conf文件,將daemonize屬性改為yes(表明需要在后台運行)。 ![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130150715261-1410318431.png) command:vi redis.conf 進入到redis.conf文件,修改完配置之后保存退出。如果大家找不到這個配置或者不知道怎么編輯保存,請翻看前面幾篇博客。
2.指定配置文件並啟動redis ![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130151034479-1753068995.png) command:src/redis-server redis.conf 啟動成功后,會發現沒有那個redis的界面了。這個時候我們用命令:redis-cli測試下redis鏈接: ![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130151136229-702931949.png) 說明已經連接成功了! 也可以通過這個命令:ps -ef | grep redis ![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130151624573-1029416092.png) 說明redis已經在運行了! ####
#php-redis擴展安裝# ###一、下載### ####下載擴展的壓縮包,地址是:http://pecl.php.net/package/redis。我這里下的是2.2.8. ![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130153022839-963590769.png) #### ###二、上傳到服務器### #### ![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130153132089-1549885342.png) 我是利用rz上傳到了服務器的usr/local目錄下。 #### ###三、解壓安裝### #### 1.解壓擴展壓縮包
![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130153517276-141313537.png) command:tar zxf redis-2.2.8.tgz #### #### 2.進入目錄,用phpize生成configure配置文件 ![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130155158245-1165140107.png) 這里需要注意的是需要用到phpize模塊,如果沒有安裝需要安裝php-dev,如果安裝了可以用命令:whereis phpize來查找他的位置。 command:.[/usr/local/php/bin/phpize] []里面代表phpize的位置 #### #### 3.配置 ![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130155530261-878792489.png) 這里配置的時候一定要找到正確的php-config的位置,同樣可用whereis獲取位置 command:./configure --with-php-config=[/usr/local/php/bin/php-config] []里面代表php-config的位置 #### #### 4.編譯安裝 ![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130155859323-1197726677.png) command:make&make install ![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130160020589-1761143373.png) #### #### 5.配置php支持 ![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130160341479-1857058020.png) 編輯配置文件 ![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130160622214-185270072.png) 在最后一行添加redis擴展,然后保存。添加:extension="redis.so" #### #### 6.重啟服務 ![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130160829136-198613917.png) 重新啟動apache ![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130160903683-1566274521.png) 說明安裝成功! ####
#Redis重啟腳本# #### ![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130161238573-1989380138.png) 紅色圓圈圈住的是絕對路徑的redis重啟方式,每三秒執行一次  #! /bin/bash while true; do sleep 3 a=`netstat -tlunp|grep redis|awk '{print $1}'` if [ -z $a ];then /redis-2.8.13/src/redis-server /redis-2.8.13/redis.conf fi done #### #### ![](http://images2017.cnblogs.com/blog/957960/201711/957960-20171130161431479-1884086578.png)  #! /bin/bash a=`ps aux|grep redis |awk '{print $1}'|grep redis` if [ -z $a ];then /redis-2.8.13/src/redis-server /redis-2.8.13/redis.conf fi 這個腳本適用於定時腳本crontab啟動,每分鍾一次 #### ####這兩個腳本適用於監測redis服務是否掛掉,掛掉之后立即重啟####
#結尾# ###可能有某些方面寫的不詳細或者不好,歡迎各位指正!### ###redis命令參考:PHP使用Redis###

##補充## ####1.2018-10-23日發現 ,安裝這個需要使用gcc編譯 ,如果沒有安裝gcc會編譯失敗。 簡單粗暴的安裝命令:
`yum -y install gcc gcc-c++ autoconf pcre pcre-devel make automake`
####


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM