redis的使用及主从模式

redis的使用及主从模式

                                        ——Javee

进入redis目录:

编译并安装:make && make install
启动redis:redis-server                                     redis-server redis.conf
进入数据库:redis-cli
关闭数据库:shutdown
退出数据库:exit
连别人的数据库:redis-cli -h 192.168.17.17

再次之前先要修改redis.conf配置文件:

先cp redis.conf redis.conf.cp拷贝一份,以免修改出现问题

69行:bind 0.0.0.0        #所有ip都可以找到redis
88行:protected-mode no    #不需要密码
136行:daemonize yes        #设为守护进程

这样就可以正常使用redis数据库了~~

Java使用redis的一个小栗子:

package com.seecen.redis;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;

import java.util.HashMap;
import java.util.Map;

/**
* @Author Javee
* @Date 2019/11/11 14:30
* @Description
*/
public class MyRedis {
    /**
     * 不使用连接池
     * @param ip
     * @param port
     * @return
     */
    public Jedis getJedis(String ip, int port){
        Jedis jedis = new Jedis(ip, port);
        return jedis;
    }

    @Test
    public void testConnect(){
        Jedis jedis = getJedis("192.168.184.17", 6379);
        //jedis.auth("123456");  //密码
        jedis.set("username","admin");
        jedis.close();
    }

    /**
     * 使用连接池
     */
    private static Map<String, JedisPool> maps = new HashMap<>();
    private JedisPool getPool(String ip, int port){
        JedisPoolConfig config = new JedisPoolConfig();
        config.setMaxTotal(10);
        config.setMaxIdle(5);
        config.setMaxWaitMillis(2000);
        config.setTestOnBorrow(true);
        config.setTestOnReturn(true);
        JedisPool pool = new JedisPool(config, ip, port);
        return pool;
    }

    JedisPool pool = null;
    @Before
    public void init(){
        pool = getPool("192.168.184.17", 6379);
    }
    @After
    public void destory(){
        pool.close();
    }

    @Test
    public void testSet(){
        Jedis jedis = pool.getResource();
        jedis.psetex("uname", 9500, "嘉威贼帅");
        jedis.close();
    }
    @Test
    public void testGet(){
        Jedis jedis = pool.getResource();
        String uname = jedis.get("uname");
        System.out.println(uname);
        jedis.close();
    }
}

接下来配置主从模式+哨兵:

修改redis.conf:

171行:logfile "/usr/local/redis/6379.log"
235行:stop-writes-on-bgsave-error yes
241:rdbcompression yes
250:rdbchecksum yes
263:dir "/usr/local/redis/"
287:replicaof 192.168.184.17 6379    #仅随从配置(主人IP)
325:replica-read-only yes
########应该就这些改动的地方,这里记不太清楚了,可以在网上找找其他人的笔记或资料

修改sentinel.conf(第一次修改前先备份一下,良好的习惯):仅哨兵配置

16:bind 0.0.0.0
17:protected-mode no
36:logfile "/usr/local/redis/sentinel.log"
123:sentinel monitor mymaster 192.168.184.17 6379 2
148:sentinel down-after-milliseconds mymaster 10000

配置文件修改好了,之后就是启动:

redis-server redis.conf
redis-sentinel sentinel.conf

OK~~

为了以放万一,我把修改的配置文件上传了,有兴趣的小伙伴可以下载试试~~~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值