Redis是一个开源,高级的键值存储和一个适用的解决方案,用于构建高性能,可扩展的Web应用程序。

Redis有三个主要特点,使它优越于其它键值数据存储系统 -

1) Redis将其数据库完全保存在内存中,仅使用磁盘进行持久化。
2) 与其它键值数据存储相比,Redis有一组相对丰富的数据类型。
3) Redis可以将数据复制到任意数量的从机中。

一、Redis优点

1) 异常快 - Redis非常快,每秒可执行大约110000次的设置(SET)操作,每秒大约可执行81000次的读取/获取(GET)操作。
2) 支持丰富的数据类型 - Redis支持开发人员常用的大多数数据类型,例如列表,集合,排序集和散列等等。这使得Redis很容易被用来解决各种问题,因为我们知道哪些问题可以更好使用地哪些数据类型来处理解决。
3) 操作具有原子性 - 所有Redis操作都是原子操作,这确保如果两个客户端并发访问,Redis服务器能接收更新的值。
4) 多实用工具 - Redis是一个多实用工具,可用于多种用例,如:缓存,消息队列(Redis本地支持发布/订阅),应用程序中的任何短期数据,例如,web应用程序中的会话,网页命中计数等。

二、Redis与其他键值存储系统

1) Redis是键值数据库系统的不同进化路线,它的值可以包含更复杂的数据类型,可在这些数据类型上定义原子操作。
2) Redis是一个内存数据库,但在磁盘数据库上是持久的,因此它代表了一个不同的权衡,在这种情况下,在不能大于存储器(内存)的数据集的限制下实现非常高的写和读速度。
3) 内存数据库的另一个优点是,它与磁盘上的相同数据结构相比,复杂数据结构在内存中存储表示更容易操作。 因此,Redis可以做很少的内部复杂性。

三、Redis数据类型(支持5种数据类型。)

1.字符串

Redis中的字符串是一个字节序列。Redis中的字符串是二进制安全的,这意味着它们的长度不由任何特殊的终止字符决定。因此,可以在一个字符串中存储高达512兆字节的任何内容。
-字符串值的最大长度为 512MB。

2.散列/哈希

Redis散列/哈希(Hashes)是键值对的集合。Redis散列/哈希是字符串字段和字符串值之间的映射。因此,它们用于表示对象。
-每个散列/哈希可以存储多达2^32 - 1个健-值对(超过40亿个)。

3.列表

Redis列表只是字符串列表,按插入顺序排序。我们可以向Redis列表的头部或尾部添加元素。
-列表的最大长度为2^32 - 1个元素(4294967295,每个列表可容纳超过40亿个元素)。

4.集合

Redis集合是字符串的无序集合。在Redis中,我们可以添加,删除和测试成员存在的时间O(1)复杂性。
-一个集合中的最大成员数量为2^32 - 1(即4294967295,每个集合中元素数量可达40亿个)个。

5.可排序集合

Redis可排序集合类似于Redis集合,是不重复的字符集合。 不同之处在于,排序集合的每个成员都与分数相关联,这个分数用于按最小分数到最大分数来排序的排序集合。虽然成员是唯一的,但分数值可以重复。

四、安装

本次测试环境是一台ip为192.168.2.11的虚拟机

1.下载文件 https://redis.io/download

2.解压安装

tar xzf  redis-3.2.0.tar.gz
cd redis-3.2.0
make
make install PREFIX=/usr/redis #设置安装路径 安装成功后,如图:

3.启动redis服务端

cp ~/redis-3.2.0/redis.conf /usr/redis/   #将配置文件复制到安装指定的目录
cd /usr/redis
bin/redis-server ./redis.conf #启动服务, redis启动默认为前台模式,因此可以看到如下图效果:

五、开机自启

1.修改redis.conf文件

daemonize yes        #设置为后台启动模式
pidfile /var/run/redis_6379.pid

2.修改redis_init_script文件

cd ~/redis-3.2.0/utils #redis解压的目录
vim redis_init_script 在# as it does use of the /proc filesystem.下一行修改:
# chkconfig: 2345 90 10
# descrption: Redis is a per....
REDISPORT=6379
EXEC=/usr/redis/bin/redis-server
CLIEXEC=/usr/redis/bin/redis-cli
PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="/usr/redis/redis.conf" 上边两行#的注释必须要添加,否则脚本无法添加到自启动任务列表中。

3.设置redis开启和关闭命令

cp redis_init_script /etc/init.d/redis
chmod +x /etc/init.d/redis service redis start
service redis stop

如果执行service redis stop出现如下图的结果:

1)修改redis.conf中
bind ip #非127.0.0.1,而是系统中指定的ip,通过ifconfig查询
本次测试配置是 bind 192.168.2.11

2)修改/etc/init.d/redis
将$CLIEXEC -p $REDISPORT shutdown修改成
$CLIEXEC -h 192.168.2.11 -p $REDISPORT shutdown

4.添加自启动服务

chkconfig redis on    #设置自启动
chkconfig --list #查看自启动列表

六、补充

如果redis设置了密码,则redis脚本(原名redis_init_script)中的
$CLIEXEC -h 192.168.2.11 -p $REDISPORT shutdown需要改成
$CLIEXEC -h 192.168.2.11 -p $REDISPORT -a "密码" shutdown

Redis简单介绍与安装的更多相关文章

  1. Python redis 简单介绍

    Python redis 简单介绍 1.安装 终端输入: pip(or)pip3.6 install redis 安装成功 2.哈哈,发现我并没有redis服务可以访问,所以到这里,在本机安装了red ...

  2. redis学习(一) redis的介绍与安装

    redis简单介绍 redis全称remote-dictionary-server 直译为远程字典服务器, 是一个高性能的key-value存储系统,也被称为数据结构服务器,因为其所存储的数据值(va ...

  3. openresty开发系列10--openresty的简单介绍及安装

    openresty开发系列10--openresty的简单介绍及安装 一.Nginx优点 十几年前,互联网没有这么火,软件外包开发,信息化建设,帮助企业做无纸化办公,收银系统,工厂erp,c/s架构偏 ...

  4. Linux系统Vi/Vim编辑器的简单介绍、安装/卸载、常用命令

    Linux系统Vi/Vim编辑器的简单介绍.安装/卸载.常用命令 1.介绍 vi(Visual Interface)编辑器是Linux和Unix上最基本的文本编辑器,工作在字符模式下.由于不需要图形界 ...

  5. Redis简单介绍

    redis简单介绍 Redis VS key-value缓存产品 Redis支持数据的持久化,能够将内存中的数据保持在磁盘中,重新启动的时候能够再次载入进行使用. Redis不只支持简单的key-va ...

  6. CocoaPods的简单介绍及安装和使用

    CocoaPods的简单介绍及安装和使用   一.CocoaPods是什么? 当你开发iOS应用时,会常常使用到非常多第三方开源类库.比方JSONKit.AFNetWorking等等. 可能某个类库又 ...

  7. Nessus简单介绍与安装

    1.Nessus简单介绍与安装 1.Nessus简介 Nessus号称是世界上最流行的漏洞扫描程序,全世界有超过75000个组织在使用它.该工具提供完整的电脑漏洞扫描服务,并随时更新其漏洞数据库.Ne ...

  8. NoSQL数据库之Redis数据库:Redis的介绍与安装部署

     NoSQL(NoSQL = Not Only SQL),它指的是非关系型的数据库.随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的w ...

  9. MongoDB(1)--简单介绍以及安装

    前段时间接触了NoSql类型的数据库redis,当时是作为缓存server使用的.那么从这篇博客開始学习还有一个非常出名的NoSql数据库:MongoDb.只是眼下还没有在开发其中使用.一步一步来吧. ...

随机推荐

  1. HDU 4750 Count The Pairs ★(图+并查集+树状数组)

    题意 给定一个无向图(N<=10000, E<=500000),定义f[s,t]表示从s到t经过的每条路径中最长的边的最小值.Q个询问,每个询问一个t,问有多少对(s, t)使得f[s, ...

  2. Codeforces命令行工具

    https://github.com/xalanq/cf-tool Codeforces Tool 是 Codeforces 的命令行界面的工具. 这玩意儿挺快.挺小.挺强大,还跨平台哦. 特点 提交 ...

  3. 【zznu-夏季队内积分赛3-I】逛超市

    题目描述 “别人总说我瓜,其实我一点也不瓜,大多数时候我都机智的一批“我宝儿姐背包学的太差了,你们谁能帮我解决这道题,我就让他做我的男朋友!宝儿姐现在在逛超市,超市里的种类实在是太多了,每种都有很多很 ...

  4. 安装Fedora 21工作站后要做的10件事情

    教程]安装Fedora 21工作站后要做的10件事情 2015-01-07 13:32 CSDN CODE 作者CSDN CODE 1 755 FedoraGNOMELinux Fedora 21已经 ...

  5. 3: 组件间的依赖管理 Managing Dependencies Between Components Using the Prism Library 5.0 for WPF(英汉对照版)

    Applications based on the Prism Library are composite applications that potentially consist of many ...

  6. Mysql 建表时报错 invalid ON UPDATE clause for 'create_date' column

    这个错误是由于mysql 版本问题导致的 `create_date` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '创建时间', ...

  7. Kconfig介绍

    https://www.kernel.org/doc/Documentation/kbuild/kconfig-language.txt

  8. wma wmv asf格式分析

    原文链接:http://blog.csdn.net/werocpp/article/details/5594067 原文链接:http://blog.chinaunix.net/uid-2075819 ...

  9. d3.js(v5.7)的attr()函数完善(添加obj支持)

    因为习惯了jquery的attr(obj)批量添加属性,所以刚开始看到d3为dom添加属性要一个一个添加的时候真的是十分想吐槽,既然想实现attr(obj),根据传入对象的键值对批量添加dom属性,那 ...

  10. ORA-06512: at "SYS.XMLTYPE" 问题记录

    执行SQL报错: SQL> SELECT COUNT(cl.enable_flg) FROM cont_ledger cl INNER JOIN project_project pp ON cl ...