linux下Redis以及phpredis扩展安

首先安装redis:

一.下载redis:

wgethttp://download.redis.io/releases/redis-2.8.10.tar.gz


二.解压并安装redis:

tar zxvf redis-2.8.10.tar.gz

cp -a redis-2.8.10 /usr/local/redis

cd /usr/local/redis/

make && make install

三.更改redis配置文件:

vim redis.conf

 daemonize yespidfile /usr/local/redis/var/redis.pid  port 6379  timeout 300  loglevel verbose  logfile /usr/local/redis/var/redis.log  databases 16  save 900 1  save 300 10  save 60 10000  rdbcompression yes  dbfilename dump.rdb  dir /usr/local/redis/var  slave-serve-stale-data yes  appendonly no  appendfsync everysec  no-appendfsync-on-rewrite no  vm-enabled no  vm-swap-file /tmp/redis.swap  vm-max-memory 0  vm-page-size 32  vm-pages 134217728  vm-max-threads 4  hash-max-zipmap-entries 512  hash-max-zipmap-value 64  list-max-ziplist-entries 512  list-max-ziplist-value 64  set-max-intset-entries 512  activerehashing yes

Redis配置解释说明:

1,是否以后台进程运行,默认为no

daemonize no

2,如以后台进程运行,则需指定一个pid,默认为/var/run/redis.pid

pidfile /var/run/redis.pid

3,监听端口,默认为6379

port 6379

4,绑定主机IP,默认值为127.0.0.1(注释)

bind 127.0.0.1

5,超时时间,默认为300(秒)

timeout 300

6,日志记录等级,有4个可选值,debug,verbose(默认值),notice,warning

loglevel verbose

7,日志记录方式,默认值为stdout

logfile stdout

8,可用数据库数,默认值为16,默认数据库为0

databases 16

9,指出在多长时间内,有多少次更新操作,就将数据同步到数据文件。这个可以多个条件配合,比如默认配置文件中的设置,就设置了三个条件。

900秒(15分钟)内至少有1个key被改变

save 900 1

300秒(5分钟)内至少有10个key被改变

save 300 10

10,存储至本地数据库时是否压缩数据,默认为yes

rdbcompression yes

11,本地数据库文件名,默认值为dump.rdb

dbfilename /root/redis_db/dump.rdb

12,本地数据库存放路径,默认值为 ./

dir /root/redis_db/

13,当本机为从服务时,设置主服务的IP及端口(注释)

slaveof <masterip> <masterport>

14,当本机为从服务时,设置主服务的连接密码(注释)

masterauth <master-password>

15,连接密码(注释)

requirepass foobared

16,最大客户端连接数,默认不限制(注释)

maxclients 128

17,设置最大内存,达到最大内存设置后,Redis会先尝试清除已到期或即将到期的Key,当此方法处理后,任到达最大内存设置,将无法再进行写入操作。(注释)

maxmemory <bytes>

18,是否在每次更新操作后进行日志记录,如果不开启,可能会在断电时导致一段时间内的数据丢失。因为redis本身同步数据文件是按上面save条件来同步的,所以有的数据会在一段时间内只存在于内存中。默认值为no

appendonly yes

19,更新日志文件名,默认值为appendonly.aof(注释)

appendfilename /root/redis_db/appendonly.aof

20,更新日志条件,共有3个可选值。no表示等操作系统进行数据缓存同步到磁盘,always表示每次更新操作后手动调用fsync()将数据写到磁盘,everysec表示每秒同步一次(默认值)。

appendfsync everysec

21,是否使用虚拟内存,默认值为no

vm-enabled yes

22,虚拟内存文件路径,默认值为/tmp/redis.swap,不可多个Redis实例共享

vm-swap-file /tmp/redis.swap

23,将所有大于vm-max-memory的数据存入虚拟内存,无论vm-max-memory设置多小,所有索引数据都是内存存储的 (Redis的索引数据就是keys),也就是说,当vm-max-memory设置为0的时候,其实是所有value都存在于磁盘。默认值为0。

vm-max-memory 0

24,虚拟内存文件以块存储,每块32bytes

vm-page-size 32

25,虚拟内在文件的最大数

vm-pages 134217728

26,可以设置访问swap文件的线程数,设置最好不要超过机器的核数,如果设置为0,那么所有对swap文件的操作都是串行的.可能会造成比较长时间的延迟,但是对数据完整性有很好的保证.

vm-max-threads 4

27,把小的输出缓存放在一起,以便能够在一个TCP packet中为客户端发送多个响应,具体原理和真实效果我不是很清楚。所以根据注释,你不是很确定的时候就设置成yes

glueoutputbuf yes

28,在redis 2.0中引入了hash数据结构。当hash中包含超过指定元素个数并且最大的元素没有超过临界时,hash将以一种特殊的编码方式(大大减少内存使用)来存储,这里可以设置这两个临界值

hash-max-zipmap-entries 64

29,hash中一个元素的最大值

hash-max-zipmap-value 512

30,开启之后,redis将在每100毫秒时使用1毫秒的CPU时间来对redis的hash表进行重新hash,可以降低内存的使用。当你的使 用场景中,有非常严格的实时性需要,不能够接受Redis时不时的对请求有2毫秒的延迟的话,把这项配置为no。如果没有这么严格的实时性要求,可以设置 为yes,以便能够尽可能快的释放内存

activerehashing yes

四.启动redis:

mkdir /usr/local/redis/var

redis-server /usr/local/redis/redis.conf

检查:

[root@localhost ~]# lsof -i:6379
COMMAND     PID USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
redis-ser 15055 root    4u  IPv4 3400359      0t0  TCP localhost:6379 (LISTEN)
[root@localhost ~]# ps -ef|grep redis
root     15055     1  0 16:28 ?        00:00:02 redis-server 127.0.0.1:6379
root     19272 18679  0 17:15 pts/2    00:00:00 grep redis

五.加入开机自启动:

echo "redis-server /usr/local/redis/redis.conf" >>/etc/rc.local


六.测试:

[root@localhost ~]# redis-cli set test1 "123"
OK
[root@localhost ~]# redis-cli get test1
"123"

安装phpredis扩展:

一.下载phpredis:

wget https://github.com/owlient/phpredis/tarball/master/owlient-phpredis-2.1.1-1-g90ecd17.tar.gz

tar zxvf owlient-phpredis-2.1.1-1-g90ecd17.tar.gz

cd owlient-phpredis-90ecd17/

二.用phpize来扩展php模块:(注意使用全路径)

/usr/local/webserver/php/bin/phpize

三.编译安装:

./configure--with-php-config=/usr/local/webserver/php/bin/php-config

make && make install

四.更改php.ini

vim /usr/local/webserver/php/lib/php.ini

添加以下内容:

extension_dir=/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20121212/
extension = redis.so

五.重启php后查看phpinfo:

出现以上信息,说明phpredis扩展安装成功。

转载于:https://blog.51cto.com/hanhp/1423136

linux下Redis以及phpredis扩展安装相关推荐

  1. php mk的支持扩展,Linux部署Redis及PHP-redis扩展

    Redis是一个key-value存储系统,属于我们常说的NoSQL.它遵守BSD协议.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.它常用在缓存.队列.P ...

  2. Linux 下 Redis 6.2.6 安装和部署详细图文步骤

    !!!别人笑我太疯癫,我笑他人看不出穿!公众号:Java精选 Redis全称Remote Dictionary Server,即远程字典服务,是一个开源的使用ANSI C语言编写.支持网络.可基于内存 ...

  3. Linux下Redis使用RPM方式安装

    一.安装包下载 redis安装包 http://cocobabi.vip/app/redis-3.2.12-2.el7.x86_64.rpm 依赖包 http://cocobabi.vip/app/j ...

  4. linux编写php,Linux 下编写一个 PHP 扩展

    假设需求 开发一个叫做 helloWord 的扩展. 扩展里有一个函数,helloWord(). echo helloWord('Tom'); //返回:Hello World: Tom 本地环境 P ...

  5. CentOS安装Redis、PHPredis扩展及Redis配置文件详解

    redis简介 redis是一款很不错的高性能的key-value数据库;它的出现在很大程度上弥补了很多像memcached这类的keyvalue存储的不足,它的特点有:支持持久化.半持久化数据保存, ...

  6. Linux 下 Redis 安装教程

    Linux 下 Redis 安装教程 事先准备 下载 Redis 安装 Redis 设置 Redis 开机自启动 远程访问 Redis RDM 远程访问 Redis 笔者的运行环境: CentOS S ...

  7. Linux下redis的安装及部署

    Linux下redis的安装及部署 一.安装 1. 下载redis安装包 可去官网http://redis.io ,也可通过wget命令, wget http://download.redis.io/ ...

  8. 下载了linux版redis怎么用,Linux下redis的安装与使用图文教程

    本文实例讲述了linux下redis的安装与使用.分享给大家供大家参考,具体如下: redis官网地址: 最新版本:3.2.6 1.下载.解压 wget http://download.redis.i ...

  9. Linux下Redis服务器安装配置

    说明: 操作系统:CentOS 1.安装编译工具 yum install wget  make gcc gcc-c++ zlib-devel openssl openssl-devel pcre-de ...

最新文章

  1. Android短信的发送和广播接收者实现短信的监听
  2. 期望dp ---- B. Tree Array 思维+期望dp 逆序对期望数
  3. Apache Ignite——集合分布式缓存、计算、存储的分布式框架
  4. Java动态代理的两种实现方法
  5. 利用ssh反向代理以及autossh实现从外网连接内网服务器
  6. mysql 配置文件my-default.cnf
  7. 让你事半功倍的小众 Python库
  8. Think in Java第四版 读书笔记9第15章 泛型
  9. 夺命雷公狗—angularjs—11—service的基本概念
  10. msdn服务器系统,操作系统
  11. html中文字空心如何设置,css 中字体文本小诀窍
  12. xCodeGhost 事件专题总结
  13. Android Studio实现用户登陆界面demo(xml实现)
  14. 简析市场营销中的六大数据科学用例
  15. html 复选框事件,HTML复选框选中与未选中触发事件的方法
  16. Android护眼功能
  17. 5V输入升压14.4V四串磷酸铁锂电池充电芯片板 ,12.8V-32号电路板
  18. Virtual Network----网卡offload特性和网络加速技术简述
  19. 一亩茶园:传颂茶的不朽篇章
  20. 1 入门:投身新领域

热门文章

  1. 这可能是最简单易懂的机器学习入门
  2. TSP问题中:如果有n个顶点,那么一共有多少种不同的环游
  3. ID3、C4.5、C5.0、CART决策树区别
  4. 清华大学和MIT研究人员使用DeepMind的AlphaFold方法来增强COVID-19抗体
  5. 诺奖得主本庶佑:CNS这些顶刊观点有九成不正确,不要盲从迷信,搞科研做到六个C更重要...
  6. 重磅!中国微纳机器人技术取得新突破,实现肿瘤的可视化精准治疗!
  7. 《全球创新观察》研究报告3月刊下发布
  8. 这篇长达165页的论文,用一个里程碑式的证明同时解决了量子物理学和理论数学的难题...
  9. AI战“疫”!人工智能在疫情中的重要作用
  10. Science | 谷岩/王朗团队揭示大脑中的免疫细胞竟是记忆遗忘的“主谋”