Redis系列之简介和Linux部署教程
##Redis介绍##
Redis如今已经成为Web开发社区最火热的内存数据库之一,随着Web2.0的快速发展,再加上半结构数据比重加大,网站对高效性能的需求也越来越多。
而且大型网站一般都有几百台或者更多Redis服务器。Redis作为一款功能强大的系统,无论是存储、队列还是缓存系统,都有其用武之地。
##Redis Github开源##
Redis:
一款基于C语言开发的高性能NOSQL系统
我已经将Redis源码fork到我的github仓库了,可以去我的github上看看https://github.com/JLGPL/redis
##Linux下安装Redis##
###下载解压Redis###
本博客介绍Redis-2.6.14版本的安装
按照Linux系统安装常规,我们一般先下载源代码到/usr/local/src目录下面
进入目录:
cd /usr/local/src
注意googlecode需要翻墙才可以下载的,我们使用wget命令下载源码
wget http://redis.googlecode.com/files/redis-2.6.14.tar.gz
不可以翻墙的话,可以使用下面命令下载
wget http://download.redis.io/releases/redis-2.8.3.tar.gz
解压Redis源代码
tar xzf redis-2.6.14.tar.gz
###安装gcc###
因为Redis系统是基于C语言开发的,所以我们需要安装好Linux的GCC环境,
也就是编译C语言、C++或者Java的环境
因为有些系统是有预装好yum的,所以这种情况下就可以使用如下命令
yum install gcc
想要自己安装gcc的,可以参考我的教程:
http://blog.csdn.net/u014427391/article/details/71194527
###安装Redis###
建立Redis链接
ln -s redis-2.6.14 redis
进入Redis文件夹目录
cd redis
安装Redis到/usr/local/redis
make PREFIX=/usr/local/redis install
这时,你去看一下/usr/local/redis里面已经生成里build目录,
下面有如下脚本redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server
##添加Redis服务##
复制脚本
普及一下Linux知识,/etc/rc.d/init.d下面的脚本相当于window系统的注册表,也就是说在Linux系统启动的时候,这些脚本都会被自动执行,我们这是就需要将redis的初始化脚本(/usr/local/src/redis/utils/redis_init_script)发到该目录下面,目的就是系统启动的时候,实现redis初始化操作。
复制脚本代码如下,使用cp命令
cp /usr/local/src/redis/utils/redis_init_script /etc/rc.d/init.d/redis
###VI编辑Redis配置###
大多数情况下,我们都需要修改Redis默认配置的,中文注释的地方就是需要修改的
#!/bin/sh
#添加改配置
#chkconfig: 2345 80 90
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.
REDISPORT=6379
#修改Redis-server路径
EXEC=/usr/local/redis/bin/redis-server
#修改Redis-cli路径
CLIEXEC=/usr/local/redis/bin/redis-cli
PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="/etc/redis/${REDISPORT}.conf"
case "$1" in
start)
if [ -f $PIDFILE ]
then
echo "$PIDFILE exists, process is already running or crashed"
else
echo "Starting Redis server..."
$EXEC $CONF & #加入&符号,使Redis服务后台运行
fi
;;
stop)
if [ ! -f $PIDFILE ]
then
echo "$PIDFILE does not exist, process is not running"
else
PID=$(cat $PIDFILE)
echo "Stopping ..."
$CLIEXEC -p $REDISPORT shutdown
while [ -x /proc/${PID} ]
do
echo "Waiting for Redis to shutdown ..."
sleep 1
done
echo "Redis stopped"
fi
;;
*)
echo "Please use start or stop as first argument"
;;
解释:
因为我们已经将Redis安装到/usr/local/redis目录下面了,使用需要修改redis配置,使其可以找到Redis-server和Redis-cli服务
添加&符号的作用是使Redis服务后台运行,否则,启动Redis服务时,占据在前台,占用了主用户界面,造成其它的命令执行不了
###注册启动Redis服务###
注册Redis服务
chkconfig --add redis
启动Redis服务
service redis start
###设置Redis全局使用###
这时需要修改系统配置
同样使用VI编辑器进行修改
vi /etc/profile
在配置文件后面加入
export PATH="$PATH:/usr/local/redis/bin"
wq保存退出,当然其实WinSCP工具是可以实现像window系统类似的文件编辑的,所以vi命令不熟,可以使用WinSCP可视化操作
应用配置
. /etc/profile
###使用Redis服务###
然后我们可以在Redis源代码路径下面,检测redis进程是否启动了
ps -ef | grep redis
可以看到如下类似的,说明redis安装成功
root@ubuntu redis-1.2.6]# ps -ef | grep redis
root 401 29222 0 18:06 pts/3 00:00:00 grep redis
root 29258 1 0 16:23 ? 00:00:00 redis-server /etc/redis.conf
$ redis-cli
redis 127.0.0.1:6379> auth superman
OK
redis 127.0.0.1:6379> ping
PONG
redis 127.0.0.1:6379>
Redis系列之简介和Linux部署教程的更多相关文章
- OpenStack实践系列①openstack简介及基础环境部署
OpenStack实践系列①openstack简介及基础环境部署 一.OpenStack初探1.1 OpenStack简介 OpenStack是一整套开源软件项目的综合,它允许企业或服务提供者建立.运 ...
- Redis系列(一):Redis的简介与安装
原文链接(转载请注明出处):Redis系列(一):Redis的简介与安装 什么是 Redis Redis 是一个使用ANSI C 编写的开源.支持网络协议.基于内存.可选持久性的键值对数据库,它是一个 ...
- SpringBoot进阶教程(二十三)Linux部署Quartz
在之前的一篇文章中<SpringBoot(九)定时任务Schedule>,已经详细介绍了关于schedule框架的配置和使用,有收到一些朋友关于部署的私信,所以抽时间整理一个linux部署 ...
- Redis集群简介及部署
1简介 在 Redis 3.0 之前,使用 哨兵(sentinel)机制来监控各个节点之间的状态.Redis Cluster 是 Redis 的 分布式解决方案,在 3.0 版本正式推出,有效地解决了 ...
- 写给新手看的Flask+uwsgi+Nginx+Ubuntu部署教程
学习 Flask,写完一个 Flask 应用需要部署的时候,就想着折腾自己的服务器.根据搜索的教程照做,对于原理一知半解,磕磕碰碰,只要运行起来了,谢天谢地然后不再折腾了,到下一次还需要部署时,这样的 ...
- Cowrie蜜罐部署教程【转载】
0.蜜罐分类: 低交互:模拟服务和漏洞以便收集信息和恶意软件,但是攻击者无法和该系统进行交互: 中等交互:在一个特有的控制环境中模拟一个生产服务,允许攻击者的部分交互: 高交互:攻击者可以几乎自由的访 ...
- Redis系列(二):Redis的数据类型及命令操作
原文链接(转载请注明出处):Redis系列(二):Redis的数据类型及命令操作 Redis 中常用命令 Redis 官方的文档是英文版的,当然网上也有大量的中文翻译版,例如:Redis 命令参考.这 ...
- 分布式缓存技术redis系列(五)——redis实战(redis与spring整合,分布式锁实现)
本文是redis学习系列的第五篇,点击下面链接可回看系列文章 <redis简介以及linux上的安装> <详细讲解redis数据结构(内存模型)以及常用命令> <redi ...
- 分布式缓存技术redis系列(四)——redis高级应用(集群搭建、集群分区原理、集群操作)
本文是redis学习系列的第四篇,前面我们学习了redis的数据结构和一些高级特性,点击下面链接可回看 <详细讲解redis数据结构(内存模型)以及常用命令> <redis高级应用( ...
随机推荐
- windows FTP工具,Windows FTP工具下载!
IIS7服务器管理工具能够作为FTP的客户端,进行FTP的命令操作,可在客户端,下载,安装FTP软件! 同时,它也可以作为VNC的客户端,进行VNC的命令操作!它能够批量连接Windows和Linux ...
- Java实现 LeetCode 837 新21点(DP)
837. 新21点 爱丽丝参与一个大致基于纸牌游戏 "21点" 规则的游戏,描述如下: 爱丽丝以 0 分开始,并在她的得分少于 K 分时抽取数字. 抽取时,她从 [1, W] 的范 ...
- Java实现 LeetCode 32 最长有效括号
32. 最长有效括号 给定一个只包含 '(' 和 ')' 的字符串,找出最长的包含有效括号的子串的长度. 示例 1: 输入: "(()" 输出: 2 解释: 最长有效括号子串为 & ...
- Java实现旅行商问题
1 问题描述 何为旅行商问题?按照非专业的说法,这个问题要求找出一条n个给定的城市间的最短路径,使我们在回到触发的城市之前,对每个城市都只访问一次.这样该问题就可以表述为求一个图的最短哈密顿回路的问题 ...
- java实现机器人行走
某少年宫引进了一批机器人小车.可以接受预先输入的指令,按指令行动.小车的基本动作很简单,只有3种:左转(记为L),右转(记为R),向前走若干厘米(直接记数字). 例如,我们可以对小车输入如下的指令: ...
- java代码(14) --Java8函数式接口
Java8函数式接口 之前有关JDK8的Lambda表达式 Java代码(1)--Java8 Lambda 函数式接口可以理解就是为Lambda服务的,它们组合在一起可以让你的代码看去更加简洁 一.概 ...
- 使用Aspose.word (Java) 填充word文档数据(包含图片填充)
Aspose填充word数据 本文介绍了如何使用aspose进行word文档的生成,并提供了工具类供参考. 有问题欢迎 call 微信:905369866,小弟尽力而为..毕竟这玩意没吃透. 目录 A ...
- Java培训Day02——制作疫情地图(一)
一.前言 此次培训,是为期三天的网上培训.最终的目的是制作出疫情地图.首先我们来看看主要的讲课内容大纲. Day1 |-Java语法学习(个人感觉讲得还可以,主要围绕本次培训作出的讲解,没有像网上的基 ...
- 基于Azure IoT开发.NET物联网应用系列-全新的Azure IoT架构
物联网技术已经火了很多年了,业界各大厂商都有各自成熟的解决方案.我们公司主要搞新能源汽车充电,充电桩就是物联网技术的最大应用,车联网.物联网.互联网三网合一.2017年的时候重点研究过Azure Io ...
- STM32学习笔记——printf
printf复习 当我们写printf("%d\n", 1);的时候,printf函数并不能通过C语言语法得知第二个参数是int类型.printf是一个变参函数(variadic ...