Redis的安装及配置
Redis安装及主从配置
redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)和zset(有序集合)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。Redis 是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类keyvalue存储的不足,在部分场合可以对关系数据库起到很好的补充作用。
1、安装前环境说明
楼主使用的是CentOS 6.5版本的Linux系统,IP为192.168.0.100。虚拟机工具使用的是VirtualBox。
2、下载Redis
Redis可以到官方网站上面进行下载:http://www.redis.io/download,现在最新的稳定版已经到2.8了。
这里使用的是redis-2.8.8.tar.gz。
3、安装步骤
下载redis-2.8.8.tar.gz使用ftp上传到linux系统的/opt目录下。
1)解压
进入linux系统的/opt目录下,执行如下命令进行解压:tar -zxvf redis-2.8.8.tar.gz。
解压之后会在当前目录下多出redis-2.8.8的文件夹,为了方便,我们将其改名:mv redis-2.8.8 redis。
解压之后Redis的目录结构如下图所示:

2)编译与安装
进入Redis目录下的src目录下,执行make命令来编译Redis。当楼主执行编译命令的时候,编译失败了,报了“/bin/sh: cc: command not found”的错误。原来是楼主的linux系统木有装gcc,而Redis是C实现的,所以需要gcc来进行编译。在网上搜索之后,发现一篇帖子,按照帖子上面的步骤解决了楼主的问题,在此表示感谢!下面附上该帖子的连接:http://xueliang1yi.blog.163.com/blog/static/1145570162012102114635764/,有遇到该问题的朋友可以参考一下。
安装完gcc之后,依次执行如下命令即可完成Redis的安装:
make
make test //检查一下 看有没有问题
make install
安装完之后,会在src目录下生成几个可执行文件,分别是mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-dump redis-cli redis-sentinel redis-server。其中redis-server是启动Redis服务的,redis-cli是进入Redis客户端的。
3)配置
在Redis的根目录下面有一个配置文件redis.conf,该配置文件可以对Redis进行基本的配置,配置参数可以查看《Redis配置参数说明》。楼主最开始只是简单的将daemonize参数设置为yes,目的是将Redis服务设置为后台开启,这样服务开启后就不会占用当前session了。
4、测试
安装完之后,我们来对其进行测试。
首先,为了方便起见,我们将src下的可执行命令全部移动到/usr/local/redis/bin/目录下,执行该命令:mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-dump redis-cli redis-sentinel redis-server /usr/local/redis/bin,然后将配置文件移动到/usr/local/redis/etc/目录下,执行该命令:mv redis.conf /usr/local/redis/etc/。
进入/usr/local/redis/bin/目录下执行./redis-server /usr/local/redis/etc/redis.conf命令开启Redis服务。注意:开启redis服务需要指定配置文件,如不指定配置文件则加载默认配置文件。
开启之后我们执行netstat -tunpl | grep 6379命令来查看6379端口使用情况,如果出现下图情况,则说明6379端口已经被redis-server占用了,表示redis服务已经成功启动。

然后执行./redis-cli进入redis客户端,然后进行简单的set、get操作来测试一下。

好,到此Redis已经成功安装了。
Redis的主从复制功能非常强大,一个master可以拥有多个slave,而一个slave又可以拥有多个slave,如此下去,形成了强大的多级服务器集群架构。下面楼主简单的进行一下配置。
1、上面安装好的一个Redis作为master,然后使用VirtualBox的虚拟机克隆功能将刚刚那个linux系统克隆一份作为slave,并修改其IP为192.168.0.110。
2、修改slave的redis配置文件:
slaveof 192.168.0.100 6379 (映射到主服务器上)
如果master设置了验证密码,还需配置masterauth。楼主的master设置了验证密码为admin,所以配置masterauth admin。
配置完之后启动slave的Redis服务,OK,主从配置完成。下面测试一下:
在master和slave分别执行info命令,查看结果如下:
master:

slave:

然后在master执行set age 24
在slave执行get age,看是否能得到24,如果能够得到值则说明配置成功。
Redis的安装及配置的更多相关文章
- [Linux]Linux下redis的安装及配置.
在上一篇[Linux] linux下安装配置 zookeeper/redis/solr/tomcat/IK分词器 详细实例. 我们已经将redis所需tar包拷贝到了linux下的root 根目录下, ...
- Redis的安装、配置 --转载
原文地址:http://blog.sina.com.cn/s/blog_505bf9af0101ehhp.html redis的安装.配置 安装步骤如下:下载redis安装包:$ cd /opt/ap ...
- Redis:安装、配置、操作和简单代码实例(C语言Client端)
Redis:安装.配置.操作和简单代码实例(C语言Client端) - hj19870806的专栏 - 博客频道 - CSDN.NET Redis:安装.配置.操作和简单代码实例(C语言Client端 ...
- mac与centos下redis的安装与配置
前言 最近在用redis,下面简单写一下mac和centos下redis的安装与配置方法. 安装 mac下面 安装命令:brew intall redis 运行命令:brew services sta ...
- 最新版redis的安装及配置 linux系统
1.redis下载 官网地址:https://redis.io/download 百度云地址:链接:http://pan.baidu.com/s/1c1Hu2gK 密码:h17z 2.解压 [root ...
- c#连接Redis Redis的安装与配置
Redis是一个不错的缓存数据库,读取数据速度效率都很不错.今天大家共同研究下redis的用法.结合网上的资料和自己的摸索,先来看下安装与配置把. 咱们主要看在WINDOWS上怎样使用REDIS数据库 ...
- centos6.8下redis的安装和配置
centos6.8下redis的安装和配置 下载.安装 在redis官网可以获取到最新版本的redis 进入/usr/local/目录,执行如下命令 wget http://download.redi ...
- linux下redis的安装及配置启动
linux下redis的安装及配置启动 标签: redisnosql 2014-10-24 14:04 19732人阅读 评论(0) 收藏 举报 分类: 数据与性能(41) wget http:/ ...
- windows上redis的安装和配置
windows上redis的安装和配置 进入到Redis的根目录D:\Programming\Redis\Redis6379\Redis-x64-3.2.100底下操作: 配置文件启动 redis-s ...
- 莫小安 Linux下Redis的安装与配置
转载自--Linux下Redis的安装与配置 redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcached类似,但很大程度补偿了 memcached的不足,它 ...
随机推荐
- maclean-【性能调优】Oracle AWR报告指标全解析 学习笔记
原文链接:http://www.askmaclean.com/archives/performance-tuning-oracle-awr.html AWR小技巧 手动执行一个快照: Exec dbm ...
- 最简单的基于FFmpeg的推流器(以推送RTMP为例)
===================================================== 最简单的基于FFmpeg的推流器系列文章列表: <最简单的基于FFmpeg的推流器(以 ...
- 使用charles proxy for Mac来抓取手机App的网络包
之前做Web项目的时候,经常会使用Fiddler(Windows下).Charles Proxy(Mac下)来抓包,调试一些东西:现在搞Android App开发,有时候也需要分析手机App的网络请求 ...
- SGU 114.Telecasting station
题意: 百慕大的每一座城市都坐落在一维直线上.这个国家的政府决定建造一个新的广播电视台.经过了许多次试验后,百慕大的科学家们提出了一个结论,在每座城市的不满意度等于这座城市的市民数与这座城市与广播电视 ...
- 使用require.js时,解决AMD封装jquery1.4.1的问题。
require.config({ baseUrl: "js/", paths: { "jquery": "jquery-1.4.1.min" ...
- java.io.serializable
为什么要实现 java.io.serializable? 简单点:“好处就是将来项目如果要做集群的话,就实现java.io.serializable接口”
- jQuery 元素移除empty() remove()与detach()的区别?
@1.empty() 删除匹配元素集合中所有的后代字节点元素: <p>hello<span>world</span></p> $("p&quo ...
- 递归删除.DS_Store文件
删除svn文件 sudo find . -name ".DS_Store" -exec rm -r {} \; sudo find . -name ".git" ...
- 关于html5
html5 是用来 将 js 和 css 结合起来 从而实现 各种功能 javascript 用来定义 html5 页面的逻辑 css 来定义 html5 中的显示样式
- 【译】UI设计基础(UI Design Basics)--iOS应用解析(iOS App Anatomy)(三)
2.1 iOS应用解析(iOS App Anatomy) 几乎所有的iOS应用都会用到UIKit框架中的组件.了解这些基础组件的名称,角色,功能可以帮你在应用界面设计时做出更好的决策. UIKit提 ...