redis簡介
redis是一款很不錯的高性能的key-value數據庫,它的出現在很大程度上彌補了很多像memcached這類的keyvalue存儲的不足,它的特點有:支持持久化、半持久化數據保存、支持主從同步、value值支持多種類型等等。下面來一起看看在CentOS系統安裝Redis及Redis的PHP擴展的詳細介紹。
1、安裝Redis
1.1 如果沒有安裝wget,安裝wget
1
|
yum install wget |
1.2 在http://redis.io/download頁面查看redis版本,并下載安裝
1
|
wget http: //download .redis.io /releases/redis-3 .2.0. tar .gz |
1.3 解壓,并進入解壓目錄進行編譯。編譯成功后會在redis-3.2.0目錄下生成相關文件
1
2
3
|
$ tar xzf redis-3.2.0. tar .gz $ cd redis-3.2.0 $ make |
如果make時沒有發現gcc,那么安裝gcc
1
|
yum install gcc gcc-c++ kernel-devel |
再次make,如果出現如下錯誤
1
2
|
zmalloc.h:50:31: error: jemalloc /jemalloc .h: No such file or directory zmalloc.h:55:2: error: #error "Newer version of jemalloc required" |
則使用如下命令進行make
1
|
make MALLOC=libc |
1.4 在文件夾redis-3.2.0下啟動redis服務,輸入如下命令后回車。
1
|
. /src/redis-server redis.conf & |
1.4 檢測
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
#檢測后臺進程是否存在 ps -ef | grep redis #檢測6379端口是否在監聽 netstat -lntp | grep 6379 #使用`redis-cli`客戶端檢測連接是否正常 . /src/redis-cli 127.0.0.1:6379> keys * (empty list or set ) 127.0.0.1:6379> set key "hello world" OK 127.0.0.1:6379> get key "hello world" |
1.5 停止服務
1
2
3
4
|
#使用客戶端 . /src/redis-cli shutdown #因為Redis可以妥善處理SIGTERM信號,所以直接kill -9也是可以的 kill -9 PID |
2、安裝Redis的PHP擴展
2.1 安裝phpize
1
|
yum install php-devel |
2.2 下載擴展源碼包,直接用wget
1
2
|
#wget下載github上的文件 wget https: //github .com /nicolasff/phpredis/archive/master .zip |
2.3 如果沒裝unzip,需要先安裝unzip
1
|
yum install unzip |
2.4 解壓master.zip
1
|
unzip master.zip |
2.5 解壓目錄為phpredis-master,進入該文件夾,開始編譯php擴展
1
|
phpize |
2.6 配置環境
1
|
. /configure |
2.7 編譯
1
|
make && make install |
編譯完成后顯示:
1
2
3
|
Build complete. Don 't forget to run ' make test '. Installing shared extensions: /usr/lib64/php/modules/ |
進入/usr/lib64/php/modules/文件夾,發現redis.so的擴展
2.8 修改/etc/php.ini,添加下面的擴展
1
|
extension=redis.so |
2.9 重啟服務器
1
|
service httpd restart |
最后查看phpinfo,顯示如下,代表安裝成功:
3、PHP代碼測試
1
2
3
4
5
6
7
|
<?php $redis = new Redis(); $redis -> connect ( '127.0.0.1' , 6379); $redis ->set( 'name' , 'zhou' , 10); $key_1 = $redis ->get( 'name' ); echo $key_1 ; ?> |
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。