linux下,PHP操作redis及redis、php-redis的安装
redis相关文档、手册、blog:php-redis下载:https://github.com/phpredis/phpredis;github里也有phpredis的说明和redis的语法介绍
redis中文手册:http://redisdoc.com
php操作redis说明博客:作者:春哥也编程,http://www.cnblogs.com/zcy_soft/archive/2012/09/21/2697006.html
1、安装redis
# wget http://download.redis.io/releases/redis-2.8.6.tar.gz
# tar -zxvf redis-2.8.6.tar.gz
# cd redis-2.8.6
# make
# cd src && make all
如果安装出现以下错误:
make: Entering directory `/root/xc/redis-2.6.14/src'
LINK redis-server
zmalloc.o: In function `zmalloc_used_memory':
/root/xc/redis-2.6.14/src/zmalloc.c:223: undefined reference to `__sync_add_and_fetch_4'
collect2: ld 返回 1
make: *** 错误 1
make: Leaving directory `/root/xc/redis-2.6.14/src'
make: *** 错误 2
则说明平台不兼容:则使用,如果没有出现那当然好了:
# make CFLAGS="-march=i686" 到此编译完成
#建立一个redis的工作目录
# mkdir -pv /usr/local/webserver/redis redis的相关配置
# 进入到解压redis软件的src目录下,拷贝redis的命令至你的工作目录
# cd src/
# cp redis-cli redis-server redis-sentinel redis-benchmark redis-check-aof redis-check-dump /usr/local/webserver/redis/
#回到上一级目录,拷贝redis的配置文件redis.conf
# cd ../ # cp redis.conf /usr/local/webserver/redis/ # 启动redis服务
# vim redis.conf
daemonize yes ##开启后台运行
##添加到redis系统服务并配置开机启动
# cd utils/
# ./install_server.sh
其他的默认,这个填上redis-server的路径:
Please select the redis executable path [] /usr/local/webserver/redis/redis-server
出现这个说明成功:Installation successful!
# cd /etc/init.d/
# mv redis_6379 redis
这样就可以用这样的方式启动reids了,而不用进入到工作目录./redis-server redis.conf了
只需,service redis start|restart|stop)就可启动redis了
但还差一步,清空redis脚本的内容,把下面这个脚本写入,之后就可以用service redis start启动redis了
# vim redis
#!/bin/sh
#chkconfig: 345 86 14
#description: Startup and shutdown script for Redis
PROGDIR=/usr/local/webserver/redis ##这个是你redis工作目录的路径
PROGNAME=redis-server
DAEMON=$PROGDIR/$PROGNAME
CONFIG=/usr/local/webserver/redis/redis.conf
PIDFILE=/var/run/redis.pid
DESC="redis daemon"
SCRIPTNAME=/etc/rc.d/init.d/redisd
start()
{
if test -x $DAEMON
then
echo -e "Starting $DESC: $PROGNAME"
if $DAEMON $CONFIG
then
echo -e "OK"
else
echo -e "failed"
fi
else
echo -e "Couldn't find Redis Server ($DAEMON)"
fi
}
stop()
{
if test -e $PIDFILE
then
echo -e "Stopping $DESC: $PROGNAME"
if kill `cat $PIDFILE`
then
echo -e "OK"
else
echo -e "failed"
fi
else
echo -e "No Redis Server ($DAEMON) running"
fi
}
restart()
{
echo -e "Restarting $DESC: $PROGNAME"
stop
start
}
list()
{
ps aux | grep $PROGNAME
}
case $1 in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
list)
list
;;
*)
echo "Usage: $SCRIPTNAME {start|stop|restart|list}" >&2
exit 1
;;
esac
exit 0
启动redis:service redis start
2、安装httpd
# yum -y install httpd 3、安装php
# yum -y install php 4、安装php-devel
# yum -y install php-devel 5、安装php-redis
#安装前,安装phpsize,phpsize是php的程序,在你php的安装目录的bin目录下,执行即可
# phpsize
# ./configure [--enable-redis-igbinary]
#make && make install
---安装完成----
Build complete.
Don't forget to run 'make test'.
Installing shared extensions: /usr/lib64/php/modules/
---------------
添加redis模块:vim php.ini
extension=redis.so
重启apache服务器
service httpd restart
测试:cd /var/www/html
vim redis.php
打开浏览器:
------------
name is:xcroom
xcroom
------------
测试成功
php操作redis的相关函数:
1、实例化redis类
$redis = new Redis();
2、open,connect
host: string. can be a host, or the path to a unix domain socket(主机)
port: int, optional(端口)
timeout: float, value in seconds (optional, default is 0 meaning unlimited)(连接超时断开的时间)
实例:
$redis->connect('127.0.0.1', 6379);
$redis->connect('127.0.0.1'); // port 6379 by default
$redis->connect('127.0.0.1', 6379, 2.5); // 2.5 sec timeout.
$redis->connect('/tmp/redis.sock'); // unix domain socket.
$redis->connect('127.0.0.1', 6379, 1, NULL, 100); // 1 sec timeout, 100ms delay between reconnection attempts.
3、pconnect, popen,长连接
4、auth
$redis->auth('foobared');
5、select,切换数据库
$redis->select(0);// switch to DB 0
6、close
7、setOption 设置redis模式 ,Set client option.
8、getOption 查看redis设置的模式
9、ping #Check the current connection status
页:
[1]