php使用redis

Redis是一个开源的,可基于内存亦可持久化的日志型、Key-Value数据库。

1.安装redis

首先保证php环境已经安装好。(这里我就不多做操作了,redis可取官方下载。)

tar zxvf redis-2.6.9.tar.gz 

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

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

2.安装phpredis-master扩展

unzip phpredis-master.zip (软件包自己去下载)

进入软件包用phpize命令动态添加phpredis

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

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的服务信息了

 

posted @ 2017-07-19 14:51  GeminiMp  阅读(241)  评论(0编辑  收藏  举报