Linux下編譯redis和phpredis的方法_php技巧

來源:互聯網
上載者:User

本文講述了Linux下編譯redis和phpredis的方法。分享給大家供大家參考,具體如下:

1、準備工作

下載軟體:本站下載地址。
作業系統:CentOS 5.5
redis 版本:redis-2.6.9

2、編譯安裝

tar zxvf redis-2.6.9.tar.gz //解壓 cd redis-2.6.9 make  //編譯 

如果出現如下錯誤:

zmalloc.o: In function `zmalloc_used_memory':
/data/redis-2.6.9/src/zmalloc.c:223: undefined reference to `__sync_add_and_fetch_4'
collect2: ld returned 1 exit status
make[1]: *** [redis-server] Error 1
make[1]: Leaving directory `/data/redis-2.6.9/src'
make: *** [all] Error 2

解決方案:

make CFLAGS="-march=i686" 

當看見“Hint: To run 'make test' is a good idea ;)” 說明編譯成功。

make install  //安裝 

說明:其實 make install 就是:

cp -p redis-server /usr/local/bincp -p redis-benchmark /usr/local/bincp -p redis-cli /usr/local/bincp -p redis-check-dump /usr/local/bincp -p redis-check-aof /usr/local/bin

這樣,redis 就安裝成功了。

接下來就是啟動Redis了, 上面編譯後產生的那些可執行檔拷貝到了/usr/local/bin目錄下面, 他們的作用分別是:

redis-server:Redis伺服器的daemon啟動程式
redis-cli:Redis命令列操作工具。當然,你也可以用 telnet 根據其純文字協議來操作
redis-benchmark:Redis效能測試工具,測試Redis在你的系統及你的配置下的讀寫效能

啟動 Redis 進程只需要執行這個 /usr/local/bin/redis-server /path-to/redis.conf

啟動的時候後面要跟上 redis 的設定檔, 這樣Redis就順利啟動了.

3、啟動 redis 會出現的問題

Warning: 32 bit instance detected but no memory limit set. Setting 3 GB maxmemory limit with 'noeviction' policy now.

解決方案:修改設定檔 redis.conf  將 maxmemory 設定為 maxmemory 1024000000 #分配256M記憶體

WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.

解決方案:警告:過量使用記憶體設定為0!在低記憶體環境下,後台儲存可能失敗。為了修正這個問題,請在/etc/sysctl.conf 添加一項 'vm.overcommit_memory = 1' ,然後重啟(或者運行命令'sysctl vm.overcommit_memory=1' )使其生效。

當啟動的時候沒有任何資訊,表明啟動成功。也可以使用 "netstat -tnl" 查看6379連接埠是否啟動。

4、開啟和關閉 redis

redis-server /usr/local/redis-2.6.9/redis.conf 開啟,註:需要指定 redis 的設定檔

pkill redis-server 停止 redis
redis-cli shutdown 停止 redis

5、redis.conf 的參數資訊

關於redis及其參數資訊可參考本站《Redis基本知識、安裝、部署、配置筆記》

6、編譯 phpredis

unzip phpredis-master.zipcd phpredis-master/usr/local/php/bin/phpize./configure –with-php-config=/usr/local/php/bin/php-configmake && make install

修改 php.ini 檔案。載入 redis.so 模組,重啟 Apache !

更多關於PHP相關內容感興趣的讀者可查看本站專題:《php curl用法總結》、《PHP運算與運算子用法總結》、《PHP網路編程技巧總結》、《PHP基本文法入門教程》、《php操作office文檔技巧總結(包括word,excel,access,ppt)》、《php日期與時間用法總結》、《php物件導向程式設計入門教程》、《php字串(string)用法總結》、《php+mysql資料庫操作入門教程》及《php常見資料庫操作技巧匯總》

希望本文所述對大家PHP程式設計有所協助。

聯繫我們

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