##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部署教程的更多相关文章

  1. OpenStack实践系列①openstack简介及基础环境部署

    OpenStack实践系列①openstack简介及基础环境部署 一.OpenStack初探1.1 OpenStack简介 OpenStack是一整套开源软件项目的综合,它允许企业或服务提供者建立.运 ...

  2. Redis系列(一):Redis的简介与安装

    原文链接(转载请注明出处):Redis系列(一):Redis的简介与安装 什么是 Redis Redis 是一个使用ANSI C 编写的开源.支持网络协议.基于内存.可选持久性的键值对数据库,它是一个 ...

  3. SpringBoot进阶教程(二十三)Linux部署Quartz

    在之前的一篇文章中<SpringBoot(九)定时任务Schedule>,已经详细介绍了关于schedule框架的配置和使用,有收到一些朋友关于部署的私信,所以抽时间整理一个linux部署 ...

  4. Redis集群简介及部署

    1简介 在 Redis 3.0 之前,使用 哨兵(sentinel)机制来监控各个节点之间的状态.Redis Cluster 是 Redis 的 分布式解决方案,在 3.0 版本正式推出,有效地解决了 ...

  5. 写给新手看的Flask+uwsgi+Nginx+Ubuntu部署教程

    学习 Flask,写完一个 Flask 应用需要部署的时候,就想着折腾自己的服务器.根据搜索的教程照做,对于原理一知半解,磕磕碰碰,只要运行起来了,谢天谢地然后不再折腾了,到下一次还需要部署时,这样的 ...

  6. Cowrie蜜罐部署教程【转载】

    0.蜜罐分类: 低交互:模拟服务和漏洞以便收集信息和恶意软件,但是攻击者无法和该系统进行交互: 中等交互:在一个特有的控制环境中模拟一个生产服务,允许攻击者的部分交互: 高交互:攻击者可以几乎自由的访 ...

  7. Redis系列(二):Redis的数据类型及命令操作

    原文链接(转载请注明出处):Redis系列(二):Redis的数据类型及命令操作 Redis 中常用命令 Redis 官方的文档是英文版的,当然网上也有大量的中文翻译版,例如:Redis 命令参考.这 ...

  8. 分布式缓存技术redis系列(五)——redis实战(redis与spring整合,分布式锁实现)

    本文是redis学习系列的第五篇,点击下面链接可回看系列文章 <redis简介以及linux上的安装> <详细讲解redis数据结构(内存模型)以及常用命令> <redi ...

  9. 分布式缓存技术redis系列(四)——redis高级应用(集群搭建、集群分区原理、集群操作)

    本文是redis学习系列的第四篇,前面我们学习了redis的数据结构和一些高级特性,点击下面链接可回看 <详细讲解redis数据结构(内存模型)以及常用命令> <redis高级应用( ...

随机推荐

  1. Java实现 LeetCode 779 第K个语法符号(递归)

    779. 第K个语法符号 在第一行我们写上一个 0.接下来的每一行,将前一行中的0替换为01,1替换为10. 给定行数 N 和序数 K,返回第 N 行中第 K个字符.(K从1开始) 例子: 输入: N ...

  2. Java实现 LeetCode 605 种花问题(边界问题)

    605. 种花问题 假设你有一个很长的花坛,一部分地块种植了花,另一部分却没有.可是,花卉不能种植在相邻的地块上,它们会争夺水源,两者都会死去. 给定一个花坛(表示为一个数组包含0和1,其中0表示没种 ...

  3. Java实现 LeetCode 378 有序矩阵中第K小的元素

    378. 有序矩阵中第K小的元素 给定一个 n x n 矩阵,其中每行和每列元素均按升序排序,找到矩阵中第k小的元素. 请注意,它是排序后的第k小元素,而不是第k个元素. 示例: matrix = [ ...

  4. Java实现蓝桥杯算法提高 哥德巴赫猜想

    试题 算法提高 哥德巴赫猜想 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 根据所给函数(判断一个整数是否是素数),然后依托该函数,将输入N内的偶数(6-N),输出为两个素数之和( ...

  5. Java实现 LeetCode 295 数据流的中位数

    295. 数据流的中位数 中位数是有序列表中间的数.如果列表长度是偶数,中位数则是中间两个数的平均值. 例如, [2,3,4] 的中位数是 3 [2,3] 的中位数是 (2 + 3) / 2 = 2. ...

  6. PAT 统计同成绩学生

    本题要求读入 N 名学生的成绩,将获得某一给定分数的学生人数输出. 输入格式: 输入在第 1 行给出不超过 105 的正整数 N,即学生总人数.随后一行给出 N 名学生的百分制整数成绩,中间以空格分隔 ...

  7. el-upload配合vue-cropper实现上传图片前裁剪

    需求背景 上传一个封面图,在上传之前需要对图片进行裁剪,上传裁剪之后的图片,类似微信的上传头像. 技术方案 上传肯定是用element的 el-upload 组件实现上传,非常方便,各种钩子函数. 裁 ...

  8. leetcode之两数相加解题思路

    问题描述 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 你可以假设每种输入只会对应一个答案.但是,数组中同一个元素不能使 ...

  9. Flask简单http接口实现

    # flask demo from flask import Flask, request app = Flask(__name__) # http://127.0.0.1:8080 @app.rou ...

  10. hadoop知识整理(5)之kafka

    一.简介 来自官网介绍: 翻译:kafka,是一个分布式的流处理平台.LinkedIn公司开发.scala语言编写.   1.支持流处理的发布订阅模式,类似一个消息队列系统: 2.多备份存储,副本冗余 ...