Linux下安装Redis php-redis扩展 redis重启shell脚本 超详细!
前言
前面刚写过nosql其中三款热门产品的对比,这次主要写关于Redis的一些事情,Redis的介绍、安装以及扩展(php-redis,因为我是phper)安装等等。同时是写给我的朋友(cccjjjz)以及自己日后安装使用。
目录
1.Redis介绍
2.Redis安装
3.php-redis扩展安装
4.Redis重启脚本
5.结尾
Redis介绍
1.简介
Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。Redis 与其他 key - value 缓存产品有以下三个特点:
1.Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
2.Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
3.Redis支持数据的备份,即master-slave模式的数据备份。
2.优势
1.性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。
2.丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作,并且对程序员透明,无需进行抽象。
3.原子 – Redis的所有操作都是原子性的,意思就是要么成功执行要么失败完全不执行。单个操作是原子性的。多个操作也支持事务,即原子性,通过MULTI和EXEC指令包起来。
4.丰富的特性 – Redis还支持 publish/subscribe, 通知, key 过期等等特性。
Redis安装
一、首先上官网下载Redis 压缩包,地址:http://redis.io/download 。这里有两种方式可以下载:
1.直接下载压缩包
2.wget方式下载,这个需要配置好DNS地址不然无法解析下载地址
command:wget http://download.redis.io/releases/redis-4.0.2.tar.gz
这里是下载的最新版本4.02的,大家可以根据自己的需要下载版本。如果下载压缩包的小伙伴需要通过远程工具把压缩包上传到安装目录(我是在usr/local里面,因为根据FHS建议自行安装的软件安装到此目录)
二、解压
command:tar -xzvf redis-4.0.2.tar.gz
三、进入redis-4.0.2目录,然后make进行编译安装
command:cd redis-4.0.2/
command:make
四、启动Redis
command:src/redis-server
五、启动方式
上述命令src/redis-server会启动redis但是启动之后当前界面无法执行任何操作,按ctrl+c之后就会自己退出redis,只能用来确定redis是否安装成功和成功启动。我们需要让redis以后台守护进程的方式启动,方法如下:
1.编辑redis.conf文件,将daemonize属性改为yes(表明需要在后台运行)。
command:vi redis.conf
进入到redis.conf文件,修改完配置之后保存退出。如果大家找不到这个配置或者不知道怎么编辑保存,请翻看前面几篇博客。
2.指定配置文件并启动redis
command:src/redis-server redis.conf
启动成功后,会发现没有那个redis的界面了。这个时候我们用命令:redis-cli测试下redis链接:
说明已经连接成功了!
也可以通过这个命令:ps -ef | grep redis
说明redis已经在运行了!
php-redis扩展安装
一、下载
下载扩展的压缩包,地址是:http://pecl.php.net/package/redis。我这里下的是2.2.8.
二、上传到服务器
我是利用rz上传到了服务器的usr/local目录下。
三、解压安装
1.解压扩展压缩包
command:tar zxf redis-2.2.8.tgz
2.进入目录,用phpize生成configure配置文件
这里需要注意的是需要用到phpize模块,如果没有安装需要安装php-dev,如果安装了可以用命令:whereis phpize来查找他的位置。
command:.[/usr/local/php/bin/phpize]
[]里面代表phpize的位置
3.配置
这里配置的时候一定要找到正确的php-config的位置,同样可用whereis获取位置
command:./configure --with-php-config=[/usr/local/php/bin/php-config]
[]里面代表php-config的位置
4.编译安装
command:make&make install
5.配置php支持
编辑配置文件
在最后一行添加redis扩展,然后保存。添加:extension="redis.so"
6.重启服务
重新启动apache
说明安装成功!
Redis重启脚本
红色圆圈圈住的是绝对路径的redis重启方式,每三秒执行一次
#! /bin/bash
while true; do
/bin/sleep 3
a=netstat -tlunp|grep redis|awk '{print $1}'
if [ -z $a ];then
/redis-2.8.13/src/redis-server /redis-2.8.13/redis.conf
fi
done
#! /bin/bash
a=ps aux|grep redis |awk '{print $1}'|grep redis
if [ -z $a ];then
/redis-2.8.13/src/redis-server /redis-2.8.13/redis.conf
fi
这个脚本适用于定时脚本crontab启动,每分钟一次
这两个脚本适用于监测redis服务是否挂掉,挂掉之后立即重启
结尾
可能有某些方面写的不详细或者不好,欢迎各位指正!
Linux下安装Redis php-redis扩展 redis重启shell脚本 超详细!的更多相关文章
- Redis进阶实践之八Lua的Cjson在Linux下安装、使用和用C#调用Lua脚本
一.引言 学习Redis也有一段时间了,感触还是颇多的,但是自己很清楚,路还很长,还要继续.上一篇文章简要的介绍了如何在Linux环境下安装Lua,并介绍了在Linux环境下如何编写L ...
- Linux下安装php的memcached扩展(memcache的客户端)
php的扩展memcache,不支持cas,所以我们要装memcached扩展,memcached扩展是基于libmemcached,所以要先安装libmemcached 一.下载软件 1.libme ...
- linux下编译qt5.6.0静态库——configure配置(超详细,有每一个模块的说明)(乌合之众)
linux下编译qt5.6.0静态库 linux下编译qt5.6.0静态库 configure生成makefile 安装选项 Configure选项 第三方库: 附加选项: QNX/Blackberr ...
- Linux下Hadoop2.7.1集群环境的搭建(超详细版)
本文旨在提供最基本的,可以用于在生产环境进行Hadoop.HDFS分布式环境的搭建,对自己是个总结和整理,也能方便新人学习使用. 一.基础环境 ...
- Linux下启动和停止Java应用程序的Shell脚本
转自:http://blog.csdn.net/jadyer/article/details/7960802 资料参考来源自兔大侠,并略作修改:http://www.tudaxia.com/archi ...
- Windows下安装xampp的PHP扩展(redis为例)
(1)PHP的windowns扩展下载网址:https://windows.php.net/downloads/pecl/releases/ (2)Ctrl+f查询你要下载的扩展名 注意:扩展的版本要 ...
- Linux下安装PHP的lua扩展库
一.安装Lua 5.3.4 下载 http://www.lua.org/ftp/lua-.tar.gz tar xvf lua-.tar.gz cd lua- 重要:进入解压缩后的路径 cd .../ ...
- linux下安装php的lua扩展
1. 进入管理员权限使用yum安装 readline(也可以使用wget下载后./configure 然后 make && make install进行安装) yum install ...
- Linux下安装PHP的mcrypt扩展
首先下载,并安装 libmcrypt-2.5.8.tar.gz 下载地址: http://sourceforge.net/project/showfiles.php?group_id=87941&am ...
随机推荐
- C#委托
关于什么是委托,委托如何使用,我在这里就不说了. 需要说的: 委托是函数指针链 委托的 BeginInvoke 委托如果出现异常,会如何 如果不知道函数指针,可以继续往下看,我来告诉大家,为何需要委托 ...
- Kotlin——最详细的控制语句使用
在前面 的章节中讲解了Kotlin语言中的数据类型.变量与常量的定义.不了解请参见前面的内容: Kotlin从无到有系列之数据类型介绍. Kotlin从无到有系列之变量.常量.注释的使用. 下面详细为 ...
- viewpager的滑动
在一个已经是月黑风高快下班的时刻了,我们产品突然通知我们开会,要添加一个功能,他闲来无聊随便戳了戳facebook,说点开联系人的那个横向滑动的卡片式的效果不错,让我们在我们的app里添加这个效果,我 ...
- 线性表(存储结构数组)--Java 实现
/*线性表的数组实现 *特点:插入删除慢需要平均移动一半的数据,查找较快 *注意:有重复和无重复的数据对应的操作会有些不同 *注意数组一旦创建其大小就固定了 *Java集合长度可变是由于创建新的数组将 ...
- common lisp的宏的工作模式
(defmacro our-expander (name) ‘(get ,name ’expander))(defmacro our-defmacro (name parms &body bo ...
- 基于Lua脚本解决实时数据处理流程中的关键问题
摘要 在处理实时数据的过程中需要缓存的参与,由于在更新实时数据时并发处理的特点,因此在更新实时数据时经常产生新老数据相互覆盖的情况,针对这个情况调查了Redis事务和Lua脚本后,发现Redis事务并 ...
- Java设计模式探讨之单例模式
单例模式是在平时的项目开发中比较常见的一种设计模式,使用比较普遍,网上的资料也是一抓一大把,小Alan也来凑凑热闹,为以后充实点设计模式相关的内容做个简单的开篇. 单例模式是一种创建对象的模式,用于产 ...
- Github和Github for windows的使用简介
很多程序员都把自己开发的代码放到Github上,方便自己管理也有利于别人查阅.所以这两天我也捣鼓了一下这个东西,现在把怎么使用Github和Github for windows简单的总结一下. 1.现 ...
- Tempter of the Bone
Problem Description The doggie found a bone in an ancient maze, which fascinated him a lot. However, ...
- JDBC(MySQL)一周学习总结(一)
一周过去了,我在这分享一下这一周来学习 JDBC 的知识,同时也希望可以帮到别人! 首先我们从获取 JDBC 连接开始 Driver(每个驱动程序类必须实现的接口) 获取数据库连接需要配置数据库连接信 ...