mmdbcn 发表于 2018-11-6 10:07:50

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]
查看完整版本: linux下,PHP操作redis及redis、php-redis的安装