一、Redis入门概述

  1、是什么?

    (1)全称:REmote DIctionary Server(远程字典服务器)。是完全开源免费的,用C语言编写的, 遵守BCD协议。是一个高性能的(key/value)分布式内存数据库,

基于内存运行并支持持久化的NoSQL数据库,是当前最热门的NoSql数据库之一,也被人们称为数据结构服务器。

     (2)Redis 与其他 key - value 缓存产品有以下三个特点

        i)Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用

          ii)Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储

          iii)Redis支持数据的备份,即master-slave模式的数据备份

  2、能干嘛?

    (1)内存存储和持久化:redis支持异步将内存中的数据写到硬盘上,同时不影响继续服务

    (2)取最新N个数据的操作,如:可以将最新的10条评论的ID放在Redis的List集合里面

    (3)模拟类似于HttpSession这种需要设定过期时间的功能

    (4)发布、订阅消息系统

    (5)定时器、计数器 

  3、去哪下?

    (1)Http://redis.io/

    (2)Http://www.redis.cn/

  4、怎么玩?

    (1)数据类型、基本操作和配置

    (2)持久化和复制,RDB/AOF

    (3)事务的控制

    (4)复制

    (5)。。。。

二、安装

  1、检查是否安装了redis

[root@bogon ~]# rpm -qa | grep redis

  2、下载redis

     官网地址:http://redis.io/      我下的版本:redis-3.2.0.tar.gz

  3、详细步骤

    (1)解压      

[root@bogon local]# tar -zxvf redis-3.2..tar.gz

    (2)编译

[root@bogon local]# cd redis-3.2.

    未安装c编译器报以下错误

[root@bogon redis-3.2.]# make
cd src && make all
make[]: 进入目录“/usr/local/redis-3.2./src”
CC adlist.o
/bin/sh: cc: 未找到命令
make[]: *** [adlist.o] 错误
make[]: 离开目录“/usr/local/redis-3.2./src”
make: *** [all] 错误

    安装c编译器并编译

[root@bogon redis-3.2.]# yum install gcc-c++ 

 [root@bogon redis-3.2.0]# make

cd src && make all
make[1]: 进入目录“/usr/local/redis-3.2.0/src”
CC adlist.o
In file included from adlist.c:34:0:
zmalloc.h:50:31: 致命错误:jemalloc/jemalloc.h:没有那个文件或目录
#include <jemalloc/jemalloc.h>
^
编译中断。
make[1]: *** [adlist.o] 错误 1
make[1]: 离开目录“/usr/local/redis-3.2.0/src”
make: *** [all] 错误 2

    解决“jemalloc/jemalloc.h:没有那个文件或目录“问题,在进行编译(因为上次编译失败,有残留的文件)

[root@bogon redis-3.2.]# make distclean
[root@bogon redis-3.2.]# make && make install

    (3)修改配置文件

首先备份出厂配置文件
[root@bogon redis-3.2.]# cp redis.conf redis.conf.bak [root@bogon redis-3.2.]# vim redis.conf 将 daemonize 默认的 no 改成 yes ---> redis 服务后台运行

   (4)启动服务

[root@bogon redis-3.2.]# cd /usr/local/bin/

[root@bogon bin]# redis-server /usr/local/redis-3.2./redis.conf

    (5)启动客户端测试

[root@bogon bin]# redis-cli -p 

127.0.0.1:> set a
OK
127.0.0.1:> get a
""

    至此,说明redis已经安装成功,可以正常使用了。

Redis学习笔记(一)的更多相关文章

  1. redis 学习笔记(6)-cluster集群搭建

    上次写redis的学习笔记还是2014年,一转眼已经快2年过去了,在段时间里,redis最大的变化之一就是cluster功能的正式发布,以前要搞redis集群,得借助一致性hash来自己搞shardi ...

  2. Redis学习笔记~目录

    回到占占推荐博客索引 百度百科 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合). ...

  3. Redis学习笔记4-Redis配置详解

    在Redis中直接启动redis-server服务时, 采用的是默认的配置文件.采用redis-server   xxx.conf 这样的方式可以按照指定的配置文件来运行Redis服务.按照本Redi ...

  4. Redis学习笔记7--Redis管道(pipeline)

    redis是一个cs模式的tcp server,使用和http类似的请求响应协议.一个client可以通过一个socket连接发起多个请求命令.每个请求命令发出后client通常会阻塞并等待redis ...

  5. Redis学习笔记一:数据结构与对象

    1. String(SDS) Redis使用自定义的一种字符串结构SDS来作为字符串的表示. 127.0.0.1:6379> set name liushijie OK 在如上操作中,name( ...

  6. Redis学习笔记之ABC

    Redis学习笔记之ABC Redis命令速查 官方帮助文档 中文版本1 中文版本2(反应速度比较慢) 基本操作 字符串操作 set key value get key 哈希 HMSET user:1 ...

  7. (转)redis 学习笔记(1)-编译、启动、停止

    redis 学习笔记(1)-编译.启动.停止   一.下载.编译 redis是以源码方式发行的,先下载源码,然后在linux下编译 1.1 http://www.redis.io/download 先 ...

  8. Redis学习笔记(二)-key相关命令【转载】

    转自 Redis学习笔记(二)-key相关命令 - 点解 - 博客园http://www.cnblogs.com/leny/p/5638764.html Redis支持的各种数据类型包括string, ...

  9. Redis学习笔记(三)Redis支持的5种数据类型的总结

    继续Redis学习笔记(二)来说说剩余的三种数据类型. 三.列表类型(List) 1.介绍 列表类型可以存储一个有序的字符串列表,常用的操作是向列表两端添加元素,或者获得列表的一段片段.列表类型内部是 ...

  10. Redis学习笔记(二)Redis支持的5种数据类型的总结之String和Hash

    引言 在Redis学习笔记(一)中我们已经会安装并且简单使用Redis了,接下来我们一起来学习下Redis支持的5大数据类型. 简介 Redis是REmote DIctionary Server(远程 ...

随机推荐

  1. Web端即时通讯技术原理详解

    前言 有关IM(InstantMessaging)聊天应用(如:微信,QQ).消息推送技术(如:现今移动端APP标配的消息推送模块)等即时通讯应用场景下,大多数都是桌面应用程序或者native应用较为 ...

  2. 关于rails里集成测试assert_template的写法

    assert_template后面只能跟随模板文件名,不能跟随命名路径.比如routes.rb: get 'login' => 'sessions#new' 在集成测试用例里,只能写成asser ...

  3. js和jquery获取父级元素、子级元素、兄弟元素的方法

    最近工作中总遇到取各种父啊子啊兄弟姐妹啊,每次都得查,这次整理个全乎的~ [js的获取方式] function dom(){      var a = document.getElementByIdx ...

  4. 玩了一天的Git

    今天的逗比事 Git从学习到使用,也有2个月时间了,一开始也就看看廖雪峰老师的Git教程,跟着做了一遍,感觉非常受用. 遇到一些忘掉的命令,再回去查查也基本都没问题. 但是今天缺遇到了逗比事,回过头来 ...

  5. equals()和hashCode()之间的关系

    在Java的基类java.lang.Object中有两个非常重要的方法: public boolean equals(Object obj) public int hashCode() 对这两个方法的 ...

  6. vi, vim 基本使用(2)

    进入vi的命令vi filename :打开或新建文件,并将光标置于第一行首vi +n filename :打开文件,并将光标置于第n行首vi + filename :打开文件,并将光标置于最后一行首 ...

  7. 一条诡异的insert语句

    问题背景 有同事反馈在mysql上面执行一条普通的insert语句,结果报错, execute failed due to >>> Incorrect string value: ' ...

  8. T-SQL—理解CTEs

    在推出SQLServer2005之后,微软定义了一个新的查询架构叫做公共表表达式--CTE.CTE是一个基于简单查询的临时结果集,在一个简单的插入.更新.删除或者select语句的执行范围内使用.再本 ...

  9. 网页实时聊天之js和jQuery实现ajax长轮询

    众所周知,HTTP协议是无状态的,所以一次的请求都是一个单独的事件,和前后都没有联系.所以我们在解决网页实时聊天时就遇到一个问题,如何保证与服务器的长时间联系,从而源源不段地获取信息. 一直以来的方式 ...

  10. centos 安装maven

    1.环境: 操作系统:centos7 maven:apache-maven-3.3.9-bin.tar.gz 2.安装JDK(1.7) 3.安装maven mkdir -p /opt/usr/loca ...