一、何为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存储的不足,在部分场合可以对关系数据库起到很好的补充作用。

二、安装Redis

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主从配置

  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安装及主从配置(转)的更多相关文章

  1. Redis安装、主从配置及两种高可用集群搭建

    Redis安装.主从配置及两种高可用集群搭建 一.            准备 Kali Linux虚拟机 三台:192.168.154.129.192.168.154.130.192.168.154 ...

  2. Redis 安装,主从配置及Sentinel配置自动Failover

    1.安装redis 首页地址:http://redis.io/ 下载地址:http://download.redis.io/ 下载最新的源码包 tar -zxvf redis-stable.tar.g ...

  3. Redis安装及主从配置

    一.何为Redis redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合)和zset(有 ...

  4. Redis安装、主从配置及aof使用

    找了02,03,04三台机器,04做主,02做从,03做客户端. 都使用jumbo install redis安装了Redis(server+client). 在 02 从的 ~/.jumbo/etc ...

  5. DNS服务器:主要介绍DNS的服务原理以及安装及其主从配置

    DNS服务器:主要介绍DNS的服务原理以及安装及其主从配置 一.DNS简介 1.DNS    DNS是域名系统(Domain Name System)的简称,它是一个将域名和IP相互映射的分布式数据库 ...

  6. redis安装以及安全配置

    redis安装以及安全配置 1. 安装 sudo apt-get install redis-server 使用which查询redis执行体安装路径: which redis-server #/us ...

  7. Linux之redis的安装,主从配置

    一,redis安装 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(s ...

  8. Redis入门及主从配置

    1.Redis入门简介 Redis是一个开源的使用ANSI C语音编写.支持网络.可基于内存亦可持久化的日志型,Key-Value数据库.支持存储的value类型包括 string(字符串).list ...

  9. Redis安装以及主从实现

    Redis简介 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串). list(链表).set(集合)和zset(有序 ...

随机推荐

  1. ASP.NET MVC html help

    public static class HtmlHelper { /// <summary> /// 返回没有边框的只读的TextBox标签 /// </summary> // ...

  2. BIEE报表开发

    (1)报表开发实例结果图 (2)开发报表步骤: (1)创建分析 (2)创建仪表盘提示 (3)创建仪表盘并发布 登录网址,输入用户名和密码 1) 新建——>分析——>选择主题区域——> ...

  3. BZOJ 4144: [AMPPZ2014]Petrol

    4144: [AMPPZ2014]Petrol Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 457  Solved: 170[Submit][Sta ...

  4. Leetcode Odd Even Linked List

    Given a singly linked list, group all odd nodes together followed by the even nodes. Please note her ...

  5. 2016 G面试题#2 不构造树的情况下验证先序遍历

    def isValidTree(POTra): """ POTra :param list: :return: """ if not POT ...

  6. 【codevs1043】 方格取数

    http://codevs.cn/problem/1043/ (题目链接) 题意 N*N的方格,每个格子中有一个数,寻找从(1,1)走到(N,N)的两条路径,使得取到的数的和最大. Solution ...

  7. JSP生命周期

    1.编译阶段:servlet容器编译servlet源文件,生成servlet类.观察一个JSP页面在第一次访问的时候会由servlet容器会生成.java文件,最终编译成.class字节码文件,如果打 ...

  8. Jenkins 1.x权限配置(兼容2.x)

    说明: 1.x版本的jenkins默认是没有任何权限限制,任何人都可以访问. 需要用到的插件: [Role-based Authorization Strategy] 具体配置: 0.设置Jenkin ...

  9. 遍历map集合

    for(var key in map){ if(data.hasOwnProperty(key)){ var value = map[key]; } }​

  10. Exception:A generic error occurred in GDI+

    分析: 一般出现这种问题都是GDI和原数据(比如Bitmap)是同一个实体,只不过是两个引用.换句话说就是这个路径的图片被GDI占用啦. 还有一种情况是路径有问题. 场景一: WPF的Image控件的 ...