• Redis安装及主从配置


     

    1、编译环境准备

    1.1环境确认

    Redis是一个开源、支持网络、基于内存、键值对存储数据库,使用ANSI C编写。所以在搭建Redis服务器时需要C语言的编译环境gcc或g++。

    首先确认系统中是否存在C语言的编译环境,终端运行如下命令:

        #gcc –version

        #g++ --version

    如果出现如下字样则表示系统中存在C语言的编译环境,不需要安装。

        gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-44)

        Copyright (C) 2006 Free Software Foundation, Inc.

        This is free software; see the source for copying conditions.  There is NO

        warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE

        g++ (GCC) 4.1.2 20080704 (Red Hat 4.1.2-44)

        Copyright (C) 2006 Free Software Foundation, Inc.

        This is free software; see the source for copying conditions.  There is NO

        warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

    如果没有,就需要在系统中安装gcc、g++。

    1.2 64位redhat中安装gcc、g++

    将安装所需的rpm包拷贝到目标机器上,然后按照以下顺序安装:

    (1) 安装gcc,软件安装顺序不能错

                  # rpm -ivh glibc-common-2.12-1.25.el6.x86_64.rpm

                  # rpm -ivh kernel-headers-2.6.32-131.0.15.el6.x86_64.rpm

                  # rpm -ivh libgcc-4.4.5-6.el6.x86_64.rpm

                  # rpm -ivh glibc-2.12-1.25.el6.x86_64.rpm

                  # rpm -ivh libgomp-4.4.5-6.el6.x86_64.rpm

                  # rpm -ivh nscd-2.12-1.25.el6.x86_64.rpm

                  # rpm -ivh glibc-headers-2.12-1.25.el6.x86_64.rpm

                  # rpm -ivh glibc-devel-2.12-1.25.el6.x86_64.rpm

                  # rpm -ivh mpfr-2.4.1-6.el6.x86_64.rpm

                  # rpm -ivh ppl-0.10.2-11.el6.x86_64.rpm

                  # rpm -ivh cloog-ppl-0.15.7-1.2.el6.x86_64.rpm

                  # rpm -ivh cpp-4.4.5-6.el6.x86_64.rpm

                  # rpm -ivh gcc-4.4.5-6.el6.x86_64.rpm

    (2) 安装gcc-c++

                  # rpm -ivh libstdc++-4.4.5-6.el6.x86_64.rpm

                  # rpm -ivh libstdc++-devel-4.4.5-6.el6.x86_64.rpm

                  # rpm -ivh gcc-c++-4.4.5-6.el6.x86_64.rpm

    注意,正常情况下这样安装是不存在问题的,但是在某些环境下安装第一个rpm包的时候就会报错。这个时候就在所有的命令后加“--nodeps –force”,就像:

        # rpm -ivh glibc-common-2.12-1.25.el6.x86_64.rpm --nodeps –force

    再次运行就没有问题了。

    2、安装及配置Redis

    2.1安装Redis

    将redis-2.6.16.tar.gz解压,然后安装。步骤及相关命令如下:

        #tar –xvzf redis-2.6.16.tar.gz

        #cd redis-2.6.16

        #make

    一些版本的linux在make的时候会报错,如图2.1所示。

    图2.1 编译Redis出错

    分析原因为32位的程序在64为的系统中编译出错。解决方法:

    (1)将解压后的redis文件夹删除,重新解压;

    (2)进入解压后的redis文件夹执行: make CFLAGS="-march=i686"

    Make成功后,在src文件夹中会生成若干可执行文件,运行:

        ./redis-server

    将会出现如图2.2所示的画面。

    图2.2 Redis服务开启画面

    2.2配置Redis

    2.2.1 复制到指定文件夹

        #mkdir -p /usr/local/webserver/redis/conf

        #mkdir -p /usr/local/webserver/redis/run

        #mkdir -p /usr/local/webserver/redis/db

        #cp redis.conf /usr/local/webserver/redis/conf/

        #cd cd redis-2.6.16/src

    将 src 目录下所有可执行文件复制到安装目录

        #cp redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server mkreleasehdr.sh /usr/local/webserver/redis/

    2.2.2修改配置文件中的如下选项

        #vi /usr/local/webserver/redis/conf/redis.conf

        daemonize yes

        pidfile /usr/local/webserver/redis/run/redis.pid

        dir /usr/local/webserver/redis/db

    2.2.3创建服务脚本

    (1)启动脚本

        #vi /usr/local/webserver/redis/start.sh

        #!/bin/bash

        /usr/local/webserver/redis/redis-server /usr/local/webserver/redis/conf/redis.conf

    (2)停止脚本

        #vi /usr/local/webserver/redis/stop.sh

        #!/bin/bash

        kill `cat /usr/local/webserver/redis/run/redis.pid`

    (3)为服务脚本赋权限

        chmod a+x /usr/local/webserver/redis/start.sh /usr/local/webserver/redis/stop.sh

    2.2.4启动 redis 服务

        #/usr/local/webserver/redis/start.sh

    验证证服务是否成功:

        #netstat -nlpt | grep 6379

    2.2.5启动客户端验证

        #/usr/local/webserver/redis/redis-cli

        >set key1 val1

        >get key1

    2.2.6停止redis服务

        #/usr/local/webserver/redis/stop.sh

    2.3java客户端实例

    在Java客户端,只需要将Jedis依赖的jar包:jedis-2.1.0.jar引入,就可以建立连接,然后进行读写操作了,如图2.3所示。

    图2.3 java客户端连接并读写redis

    3、Redis主从配置

    3.1Redis Master/Slave 主从配置

    这里我们配置 1台Master +1台Slave 为例子,其中:

        Master IP:192.168.32.166    Port:6379

        Slave IP:192.168.32.188     Port:6379

    注意,两台机器的IP地址要在同一网段内,否则无法实现集群。两台机器上均按照以上步骤安装并配置好redis服务。在Slave机器上修改配置文件,使其成为Master的从机。命令及配置如下:

        #vi /usr/local/webserver/redis/conf/redis.conf

        slaveof  192.168.32.166  6379

    3.2启动redis服务

    先开启主机上的服务,后开机从机上的服务。

    3.3验证M/S服务是否生效

    主机上:

        /usr/local/webserver/redis/redis-cli

        >set key1 val1

        >quit

    从机上:

        /usr/local/webserver/redis/redis-cli

        >get key1

        "val1" (表示数据成功同步了)

  • 相关阅读:
    perl学习笔记之:正则表达式
    POJ 3436 ACM Computer Factory (拆点+输出解)
    POJ 3436 ACM Computer Factory (拆点+输出解)
    POJ 1637 Sightseeing tour ★混合图欧拉回路
    POJ 1637 Sightseeing tour ★混合图欧拉回路
    POJ 1149 PIGS ★(经典网络流构图)
    POJ 1149 PIGS ★(经典网络流构图)
    HDU 4571 Travel in time ★(2013 ACM/ICPC长沙邀请赛)
    HDU 4571 Travel in time ★(2013 ACM/ICPC长沙邀请赛)
    UPC 2224 Boring Counting ★(山东省第四届ACM程序设计竞赛 tag:线段树)
  • 原文地址:https://www.cnblogs.com/zhenyuyaodidiao/p/4170463.html
Copyright © 2020-2023  润新知