配置php扩展redis
环境说明:
系统版本 CentOS 6.9 x86_64
软件版本 nginx-1.12.2 php-5.5.38 yum安装redis3.2.11
php扩展redis 2.2.8
Redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、 list(链表)、set(集合)和zset(有序集合)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步,当前 Redis的应用已经非常广泛,国内像新浪、淘宝,国外像 Flickr、Github等均在使用Redis的缓存服务。
1、数据库服务器配置redis
[root@db01 ~]# yum install -y redis
[root@db01 ~]# vim /etc/redis.conf #修改配置文件,设置数据库服务器的地址已经密码
61行 bind 192.168.1.51
480行 requirepass 123456
[root@db01 ~]# /etc/init.d/redis start #启动服务
Starting redis-server: [ OK ]
[root@db01 ~]# netstat -lntup|grep 6379 #检查,默认使用6379端口
tcp 0 0 192.168.1.51:6379 0.0.0.0:* LISTEN 1978/redis-server
可以使用命令行查看相关缓存信息
[root@db01 ~]# redis-cli -h 192.168.1.51 -p 6379 -a 123456
192.168.1.51:6379> info
# Server
redis_version:3.2.11
redis_git_sha1:00000000
redis_git_dirty:0
redis_build_id:6ad59081ae574f13
redis_mode:standalone
os:Linux 2.6.32-696.el6.x86_64 x86_64
arch_bits:64
multiplexing_api:epoll
gcc_version:4.4.7
process_id:1978
run_id:9a86c3672b97884d10e0b67f767cde1d96334405
tcp_port:6379
uptime_in_seconds:557
2、web服务器配置redis
从官方网站下载源码包或本地上传http://pecl.php.net/package/redis其中版本号为3以上的是用于php7以上的,这里我们下载2.2.8版本

[root@Web01 html]# cd /service/tools/
[root@Web01 html]# wget http://pecl.php.net/package/redis/2.2.8 #下载源码包
[root@Web01 tools]# tar xf redis-2.2.8.tgz #解压
[root@Web01 tools]# cd redis-2.2.8
[root@Web01 redis-2.2.8]# ls
arrays.markdown config.m4 library.c redis_array.h redis_cluster.h tests
cluster_library.c config.w32 library.h redis_array_impl.c redis_commands.c
cluster_library.h COPYING php_redis.h redis_array_impl.h redis_commands.h
cluster.markdown crc16.h README.markdown redis.c redis_session.c
common.h CREDITS redis_array.c redis_cluster.c redis_session.h
[root@Web01 redis-2.2.8]# /application/php/bin/phpize
#检查编译环境,不做检查不能执行./configure
Configuring for:
PHP Api Version: 20121113
Zend Module Api No: 20121212
Zend Extension Api No: 220121212
[root@Web01 redis-2.2.8]# ./configure --with-php-config=/application/php/bin/php-config --enable-redis #编译
[root@Web01 redis-2.2.8]# make && make install
[root@Web01 ~]# ls /application/php5.5.38/lib/php/extensions/no-debug-non-zts-20121212/
memcache.so opcache.a opcache.so redis.so
[root@Web01 memcache-2.2.7]# find /application/php5.5.38/ -name "php.ini"
/application/php5.5.38/etc/php.ini #找出php配置文件php.ini的路径,默认在etc下,需要拷贝至lib下
[root@Web01 memcache-2.2.7]#
cp /application/php5.5.38/etc/php.ini /application/php5.5.38/lib/php.ini
[root@Web01 ~]# vim /application/php5.5.38/lib/php.ini #修改配置文件
修改718行的内容指定扩展模块的路径并添加一行指定扩展模块名称
718 extension_dir = "/application/php5.5.38/lib/php/extensions/no-debug-non-zts-20121212/"
719 extension = "redis.so"
[root@Web01 tools]# pkill php-fpm
[root@Web01 tools]# /application/php/sbin/php-fpm
[root@Web01 tools]# /application/php/bin/php -m|grep redis
redis
3、浏览器端检查
以discuz为例
重新访问刷新,进入管理中心——>全局———>性能优化——>内存优化,可以看到已经生效

4、配置开启服务器优化
编辑站点目录下config_global.php文件
[root@Web01 discuz]# pwd
/application/nginx/html/discuz
[root@Web01 discuz]# vim config/config_global.php
$_config['memory']['redis']['server'] = '192.168.1.51'; #指定服务器地址
$_config['memory']['redis']['requirepass'] = '123456'; #指定密码
浏览器刷新再次访问,此时已经可以支持redis

5、安装并配置redis管理界面phpRedisAdmin
5.1、下载安装包并解压到站点目录
官方地址位于github上面https://github.com/ErikDubbelboer/phpRedisAdmin
可以使用github的下载方式git clone到本地,或者直接下载zip包到本地都可以,在使用git clone命令前需要执行
yum install git -y安装git
[root@Web01 phpredisadmin]# unzip phpRedisAdmin-master.zip
下载完成这个包并没有完全下载,我们可以查看README.markdown文件内容,里面有指出还需要下载另外一个包
[root@Web01 phpredisadmin]# cat README.markdown
git clone https://github.com/ErikDubbelboer/phpRedisAdmin.git
cd phpRedisAdmin
git clone https://github.com/nrk/predis.git vendor
5.2、修改配置文件
[root@Web01 phpredisadmin]# cd includes/
[root@Web01 includes]# cp config.sample.inc.php config.inc.php
[root@Web01 includes]# vim config.inc.php 可以在此配置管理多台服务器(即重复相同选项,修改服务器ip及密码)
'host' => '192.168.1.51', #指定主机地址
'auth' => '123456' #指定密码
5.3、修改nginx配置文件指定站点目录及域名并平滑重启
[root@Web01 memadmin]# nginx -t
nginx: the configuration file /application/nginx-1.12.2/conf/nginx.conf syntax is ok
nginx: configuration file /application/nginx-1.12.2/conf/nginx.conf test is successful
[root@Web01 memadmin]# nginx -s reload
5.4、浏览器访问

博主原创文章,转载请务必注明出处
配置php扩展redis的更多相关文章
- nginx + php + mysql安装、配置、自启动+redis扩展
用过了apache就想着用用nginx,网上教程其实很多,但是受服务器版本等限制,每个人遇到的问题也不一样,先记录下我的 一.安装依赖 yum -y install gcc zlib zlib-dev ...
- Ubuntu下PHP开发配置(新增redis、sphinx、sqlserver相关配置)
由于本人比较懒,所以一般都是用xampp的直接拿来改的…………(当然xampp中一般php版本都是比较新的用的过程中请大家注意哈,可能会和老版本冲突) 此次除了使用xampp外,还扩展了sphinx, ...
- spring-boot的spring-cache中的扩展redis缓存的ttl和key名
原文地址:spring-boot的spring-cache中的扩展redis缓存的ttl和key名 前提 spring-cache大家都用过,其中使用redis-cache大家也用过,至于如何使用怎么 ...
- PHP XAMPP windows环境安装扩展redis 致命错误: Class 'Redis' not found解决方法
PHP XAMPP windows环境安装扩展redis 致命错误: Class 'Redis' not found解决方法 1.电脑需要先安装redis服务端环境,并在安装目录下打开客户端redis ...
- php安装扩展redis淌过的坑
php安装扩展redis淌过的坑 php扩展 redis cd /usr/local/src/ wget https://github.com/nicolasff/phpredis/archive/2 ...
- 扩展Redis的Jedis客户端,哨兵模式读请求走Slave集群
原 扩展Redis的Jedis客户端,哨兵模式读请求走Slave集群 2018年12月06日 14:26:45 温故而知新666 阅读数 897 版权声明:本文为博主原创文章,遵循CC 4.0 b ...
- php编译安装扩展redis及swoole
一.安装redis扩展 下载redis扩展包以及解压 wget https://github.com/edtechd/phpredis/archive/php7.zip unzip php7.zip ...
- Mybatis中SqlMapper配置的扩展与应用(1)
奋斗了好几个晚上调试程序,写了好几篇博客,终于建立起了Mybatis配置的扩展机制.虽然扩展机制是重要的,然而如果没有真正实用的扩展功能,那也至少是不那么鼓舞人心的,这篇博客就来举几个扩展的例子. 这 ...
- php扩展redis
Redis安装整理(window平台) +php扩展redis 分类: Web开发2013-03-23 18:51 8258人阅读 评论(3) 收藏 举报 ...
随机推荐
- 染色 color
染色 color 题目描述 有一块矩阵平板,分成n*m个格子,一开始全是白色.在这上面进行k次染色,每次染色按照如下步骤:1. 随机选择一个格子,称为A.2. 随机选择一个格子,称为B.3. 将由A ...
- ACM-渊子赛马
题目: 赛马是一古老的游戏,早在公元前四世纪的中国,处在诸侯割据的状态,历史上称为“战国时期”.在魏国作官的孙膑,因为受到同僚庞涓的迫害,被齐国使臣救出后,到达齐国国都. 赛马是当时最受齐国贵族欢迎的 ...
- 《c程序设计语言》读书笔记-3.4-数字转字符串
#include <io.h> #include <stdio.h> #include <string.h> #include <stdlib.h> # ...
- 莫队算法初识~~CodeForces - 617E
E. XOR and Favorite Number time limit per test 4 seconds memory limit per test 256 megabytes input s ...
- python和shell对比
python和shell都是我们经常使用的脚本语言,平时python主要用来写一些小型的任务,shell则在使用liunx系统部署任务的时候用的比较多,由于两者有一些相似之处,时间长了容易混掉,所以这 ...
- [ CodeVS冲杯之路 ] P1039
不充钱,你怎么AC? 题目:http://codevs.cn/problem/1039/ 一道赤裸裸的嘲讽型数学题,推出来的话算法代码就3行,没有推出来连暴力都无从入手…… 设 f(n,m) 为整数 ...
- 灰姑娘的水晶鞋(NOIP模拟赛Round 7)
[问题描述] 传说中的水晶鞋有两种颜色:左边的水晶鞋是红色,右边的是蓝色,据说穿上它们会有神奇的力量. 灰姑娘要找到她所有的n双水晶鞋,它们散落在一条数轴的正半轴上,坐标各不相同,每双水晶鞋还有一个权 ...
- set(NOIP模拟赛Round 4)
这题很神奇,对吧. 标程还理解了好久,才明白. 这道题需要用状压DP.首先我们看到总共只有15个字符串,所以可以用hash存储状态. 然后我们还需要一维用来存储DP到第几个字符. 所以dp[i][j] ...
- PHP命令行执行程序php.exe使用及常用参数
PHP命令行执行程序php.exe参数说明 -f <file>:以命令行方式运行指定的PHP文件,只要指定具体的PHP文件(带绝对路径),php.exe就可以执行PHP文件,所以这个参数单 ...
- windows技术
鼠标右键菜单中没有新建文本文件怎么办? http://jingyan.baidu.com/article/046a7b3e1d737bf9c27fa9f7.html