天天看點

redis的PHP擴充包安裝方法

試用Redis安裝、php環境連接配接、測試 

Redis介紹

    Redis本質上一個Key/Value資料庫,與Memcached類似的NoSQL型資料庫,但是他的資料可以持久化的儲存在磁盤上,解決了服務重新開機後資料不丢失的問題,他的值可以是string(字元串)、list(清單)、sets(集合)或者是ordered  sets(被排序的集合),所有的資料類型都具有push/pop、add/remove、執行服務端的并集、交集、兩個sets集中的差别等等操作,這些操作都是具有原子性的,Redis還支援各種不同的排序能力

    Redis 2.0更是增加了很多新特性,如:提升了性能、增加了新的資料類型、更少的利用記憶體(AOF和VM)

    Redis支援絕大部分主流的開發語言,如:C、Java、C#、PHP、Perl、Python、Lua、Erlang、Ruby等等

安裝過程

最新穩定版,Redis 2.0.4 stable

wget http://redis.googlecode.com/files/redis-2.0.4.tar.gz

tar zxf redis-2.0.4.tar.gz

cd redis-2.0.4

與其它軟體不同的是,不需要configure。

make

裝完了。

建立一個目錄

mkdir /usr/local/redis2

cp redis-server redis-benchmark redis-cli redis.conf   /usr/local/redis2

啟動:

./redis-server > /dev/null &

測試:

    存值:

./redis-cli set hx value

取值:

./redis-cli get hx

安裝phpredis子產品

https://github.com/owlient/phpredis

下載下傳phpredis

解壓

shell> cd phpredis

shell> /usr/local/php/bin/phpize 這個phpize是安裝php子產品的

shell> ./configure –with-php-config=/usr/local/php/bin/php-config

shell> make

shell> make install

接下來在php.ini中添加extension=redis.so 先要看看有沒有extension_dir=/…….

重新開機apache或者nginx

php代碼測試

$redis = new Redis();

$redis->connect(‘127.0.0.1′,6379);

$redis->set(‘test’,'hello world!’);

echo $redis->get(‘test’);

?>

   輸出hello world!

Redis主從配置

REDIS主從配置相當簡單,一些文章啰裡羅嗦的寫了一大篇,其實就兩句話:

打開從機的redis.conf

 Port 6381 (注:不能跟主機的一樣)

 Sleverof 10.0.0.149 6383 (注:ip為主機IP,6383為主機REDIS端口号)

先重新開機主機,再重新開機從機

運作./redis-server redis.conf

若出現:

的樣子,說明配置成功

--------------------------------------

<a href="http://www.cnblogs.com/weafer/archive/2011/09/21/2184197.html">php-redis用戶端使用方法</a>

&lt;?php

require 'redis.php';

require 'redis_pool.php';

require 'redis_peer.php';

class note extends redis_peer {}

$note = new note();

# Create note, primary key is generated automatically

$id = $note-&gt;insert( array('title' =&gt; 'Hello', 'body' =&gt; 'world!') );

# Update note

$id = $note-&gt;update( $id, array('body' =&gt; 'wwwwworld!') );

# Get some note by primary key

$note_data = $note-&gt;get_by_id( $id );

# Delete note $note-&gt;delete( $id );

如何聯系我:【萬裡虎】www.bravetiger.cn

【QQ】3396726884 (咨詢問題100元起,幫助解決問題500元起)

【部落格】http://www.cnblogs.com/kenshinobiy/