php使用redis

Redis是一個開源的,可基於內存亦可持久化的日誌型、Key-Value數據庫。

1.安裝redisphp

首先保證php環境已經安裝好。(這裏我就很少作操做了,redis可取官方下載。)nginx

tar zxvf redis-2.6.9.tar.gz redis

cd redis-2.6.9
make && make PREFIX=/usr/local/redis install數據庫

echo "vm.overcommit_memory = 1" >> /etc/sysctl.conf &&/sbin/sysctl -p   ###優化內核。vim

2.安裝phpredis-master擴展php-fpm

unzip phpredis-master.zip (軟件包本身去下載)優化

進入軟件包用phpize命令動態添加phpredisspa

cd phpredis-master
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make installdebug

3.修改php.ini文件

增長以下內容:日誌

extension_dir = "/usr/local/php/lib/php/extensions/no-debug-zts-20090626"

extension=redis.so

重啓nginx、php-fpm便可。

4.鏈接到redis服務。

vim php-redis.sh

<?php
//鏈接本地的 Redis 服務
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
echo "Connection to server sucessfully";
//查看服務是否運行
echo "Server is running: " . $redis->ping();
?>

執行腳本輸出結果以下:

Connection to server sucessfully

Server is running: PONG

5.配置redis服務

 [ ! -d /etc/redis ] && mkdir /etc/redis  ###建立主配置文件

cp /usr/local/redis/etc/redis.conf /etc/redis/6379.conf 

修改redis主配置文件。

daemonize yes   #默認爲no,yes爲後臺運行守護模式,會寫到一個pid文件裏面
pidfile /var/run/redis_6379.pid
port 6379 #端口
logfile /var/log/redis_6379.log  #日誌文件路徑  
dbfilename dump.rdb    #設置dump文件的名稱  
dir /var/lib/redis/6379    #設置dump文件的路徑
slave-serve-stale-data yes  #是否設置主從複製
slave-read-only yes  
slave-priority 100  #主從複製優先級  

要注意dir 路徑下面存放的是redis的數據文件。有就不用管,沒有則建立文件夾,否則服務都起不來。

 [ ! -d /var/lib/redis/6379 ] && mkdir  /var/lib/redis/6379

 6.製做redis啓動腳本

vim /etc/init.d/redis 

#/bin/sh
EXEC=/usr/local/redis/bin/redis-server
CLIEXEC=/usr/local/redis/bin/redis-cli
PIDFILE=/var/run/redis_6379.pid
CONF="/etc/redis/6379.conf"

REDISPORT="6379"

case "$1" in
start)
if [ -f $PIDFILE ]
then
echo "$PIDFILE exists, process is already running or crashed"
else
echo "Starting Redis server..."
$EXEC $CONF
fi
;;
stop)
if [ ! -f $PIDFILE ]
then
echo "$PIDFILE does not exist, process is not running"
else
PID=$(cat $PIDFILE)
echo "Stopping ..."
$CLIEXEC -p $REDISPORT shutdown
while [ -x /proc/${PID} ]
do
echo "Waiting for Redis to shutdown ..."
sleep 1
done
echo "Redis stopped"
fi
;;
*)
echo "Please use start or stop as first argument"
;;
esac

開啓以後./redis-cli -p 6379    由用戶名密碼加-u 

輸入info就能夠看到redis的服務信息了

相關文章
相關標籤/搜索