後端開發用到php操作redis,在此將安裝測試過程中遇到的問題匯總記錄下來,以便以後參考! (系統為ubuntu)
1.redis安裝
下載位址:http://download.redis.io/releases/
解壓縮安裝:
tar -xvf redis-2.8.17.tar.gz make sudo make install
為方便使用,在/usr目錄下建立redis目錄,說明如下幾個檔案拷貝到/usr/redis/目錄下:
/yourdir/redis-2.8.17/redis.conf /yourdir/redis-2.8.17/src/redis-benchmark /yourdir/redis-2.8.17/src/redis-server /yourdir/redis-2.8.17/src/redis-cli
當然,你也可以透過軟連接的方式達到方便使用的目的。此外,你也可以將redis-server加入開機啟動,這裡從略。
2.redis測試
1)先開啟redis服務端程式
為方便測試,我們將redis.conf設定檔中的loglevel與logfile的值,修改後如下:
loglevelvel debug
log / tmp/redis.log”
jay13@ubuntu:/usr/redis$ redis-server redis.conf
2)開啟redi客戶端,透過客戶端向redis資料庫進行增刪改查操作。整個操作過程中產生的日誌可以到/tmp/redis.log中查看。
以最簡單的key操作為例,實例如下:
jay13@ubuntu:/usr/redis$ redis-cli 127.0.0.1:6379> set jay13 jb51.net OK 127.0.0.1:6379> set jay hello,world OK 127.0.0.1:6379> get jay "hello,world" 127.0.0.1:6379> get jay13 "jb51.net" 127.0.0.1:6379> del jay (integer) 1 127.0.0.1:6379> get jay (nil) 127.0.0.1:6379> set jay13 www.jb51.net OK 127.0.0.1:6379> get jay13 "www.php.cn"
3.安裝phpredis擴充
在使用sudo apt-get install php5安裝php時,預設是沒有安裝phpize的,我們安裝phpredis時,需要用到phpize,因此,需要先安裝phpize。
1)我們透過安裝php開發者工具來取得phpize。執行以下指令即可:
sudo apt-get install php5-dev
2)取得phpredis原始檔
最新的phpRedis位址:https://github.com/nicolasff/phpredis
依照GitHub上的說明進行下列安裝時,
phpize ./configure --enable-redis-igbinary make && make install
依照GitHub上的說明進行下列安裝時,
checking for igbinary includes... configure: error: Cannot find igbinary.h
可能會出現如下出錯說明:
wget <a href="http://pecl.php.net/get/igbinary-1.1.1.tgz">http://pecl.php.net/get/igbinary-1.1.1.tgz</a> tar -xzvf igbinary-1.1.1.tgz cd igbinary-1.1.1 phpize ./configure # No need for extra config params make make install
這個是因為我們沒有igbinary擴展,這是phpredis依賴的東西。
好吧,怎麼安裝igbinary呢?
phpize ./configure –enable-redis-igbinary make && make install
extension=igbinary.so extension=redis.so
我們修改php.ini設定文件,將剛才安裝的兩個擴充功能加入到php.ini檔案中,加入的語句如下:
<?php $redis = new Redis(); $redis->connect('127.0.0.1',6379); $redis->set('Jay13','www.php.cn'); echo 'Jay13:'.$redis->get('Jay13'); echo '</br>'; echo 'Jay12:'.$redis->get('Jay12'); ?>
rrreee結果如下圖:
測試筆記相關文章請關注PHP中文網!