Centos7安装单机版Redis

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介: Centos7安装单机版Redis

Redis是目前最受欢迎的NoSQL数据库之一,是一个开源的,基于内存的数据结构存储器,可以用作缓存系统、计数器、消息队列系统、排行榜、社交网络和实时系统等。本文主要讲解单机版Redis在Centos7上的安装过程。后续我们会结合其他数据系统,用真实场景下的案例,剖析Redis的使用和内部实现原理。

1.下载redis


wget http://download.redis.io/releases/redis-4.0.11.tar.gz

2.解压到/usr/local下

3.执行make命令进行编译

4.在目录 usr/local/redis中建文件夹bin,etc,命令如下:

mkdir -p /usr/local/redis/bin
mkdir -p /usr/local/redis/etc

5.为了方便管理,将文件目录中的conf配置文件和src目录中常用命令拷贝到统一文件中

6.启动redis,进入刚才放置redis的文件目录 /usr/local/redis/bin,执行redis-server脚本文件:

7.如果Lunix关闭当前会话,则Redis服务也随即关闭。我们需要的是从后台启动Redis,可以指定启动配置文件。

进入到/usr/local/redis/etc目录下,修改redis.conf文件,使redis能后台运行,需要更改的内容为

  • 将daemonize选项由no置为yes
  • 并注释掉bind 127.0.0.1,将它改为bind 0.0.0.0,
  • protected-mode yes 改为 protected-mode no
  • 将密码改为iiot123456

8.再次启动redis服务,并指定启动服务配置文件,执行命令: 在bin目录中执行:./redis-server ../etc/redis.conf

9.客户端连接测试

10.本地代码连接测试

public class JedisUtil {
    private final static Logger log = Logger.getLogger(JedisUtil.class);
    private static JedisPool jedisPool = null;
    private JedisUtil() {
    }
    static {
        JedisPoolConfig config = new JedisPoolConfig();
        config.setMaxTotal(10000);
        config.setMaxIdle(2000);
        config.setMaxWaitMillis(1000);
        config.setTestOnBorrow(true);
        config.setTestOnReturn(true);
        System.out.println("ConfigConstants.JEDIS_PASS:"+ConfigConstants.JEDIS_PASS);
        System.out.println(ConfigUtil.getConfig(ConfigConstants.JEDIS_PASS));
        jedisPool = new JedisPool(
                config,
                ConfigUtil.getConfig(ConfigConstants.JEDIS_HOST),
                Integer.parseInt(ConfigUtil.getConfig(ConfigConstants.JEDIS_PORT)),
                10000,
                ConfigUtil.getConfig(ConfigConstants.JEDIS_PASS));
    }
    public JedisPool getPool() {
        return jedisPool;
    }
    /**
     * 从jedis连接池中获取获取jedis对象
     *
     * @return
     */
    public Jedis getJedis() {
        return jedisPool.getResource();
    }
    private static final JedisUtil jedisUtil = new JedisUtil();
    /**
     * 获取JedisUtil实例
     *
     * @return
     */
    public static JedisUtil getInstance() {
        log.warn("ConfigConstants.JEDIS_HOST:"+ConfigConstants.JEDIS_HOST);
        return jedisUtil;
    }
    /**
     * 回收jedis
     *
     * @param jedis
     */
    public void returnJedis(Jedis jedis) {
        jedisPool.returnResource(jedis);
    }
    public static void main(String[] args) {
        // 从连接池得到一个连接,写入一个数据,并返回连接到连接池
        JedisUtil jedisUtil = JedisUtil.getInstance();
        Jedis jedis = JedisUtil.getInstance().getJedis();
        Hash hash = jedisUtil.new Hash();
        hash.hset("order","shenzhen20200815","30");
        JedisUtil.getInstance().returnJedis(jedis);
    }
}

用客户端查看键order是否写入

11.常见问题

若启动redis-server时遇到以下warning

解决方法:sysctl vm.overcommit_memory=1

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
2天前
|
NoSQL 安全 Unix
Redis源码、面试指南(4)单机数据库、持久化、通知与订阅(中)
Redis源码、面试指南(4)单机数据库、持久化、通知与订阅
16 0
|
2天前
|
NoSQL Linux 网络安全
Linux安装Redis(详细教程)
Linux安装Redis(详细教程)
21 2
|
2天前
|
NoSQL Linux Redis
在CentOS上安装和配置Redis
在CentOS上安装和配置Redis
35 0
|
2天前
|
存储 NoSQL 调度
Redis源码、面试指南(4)单机数据库、持久化、通知与订阅(下)
Redis源码、面试指南(4)单机数据库、持久化、通知与订阅
9 0
|
2天前
|
存储 NoSQL API
Redis源码、面试指南(4)单机数据库、持久化、通知与订阅(上)
Redis源码、面试指南(4)单机数据库、持久化、通知与订阅
16 1
|
2天前
|
NoSQL Redis Docker
Mac上轻松几步搞定Docker与Redis安装:从下载安装到容器运行实测全程指南
Mac上轻松几步搞定Docker与Redis安装:从下载安装到容器运行实测全程指南
19 0
|
2天前
|
NoSQL Linux Redis
本地虚拟机centos7通过docker安装主从redis3.2
本地虚拟机centos7通过docker安装主从redis3.2
19 0
|
2天前
|
NoSQL Linux Redis
Redis的介绍,以及Redis的安装(本机windows版,虚拟机Linux版)和Redis常用命令的介绍
Redis的介绍,以及Redis的安装(本机windows版,虚拟机Linux版)和Redis常用命令的介绍
27 0
|
2天前
|
负载均衡 监控 NoSQL
Redis的几种主要集群方案
【5月更文挑战第15天】Redis集群方案包括主从复制(基础,读写分离,手动故障恢复)、哨兵模式(自动高可用,自动故障转移)和Redis Cluster(官方分布式解决方案,自动分片、容错和扩展)。此外,还有Codis、Redisson和Twemproxy等工具用于代理分片和负载均衡。选择方案需考虑应用场景、数据量和并发需求,权衡可用性、性能和扩展性。
29 2
|
2天前
|
存储 监控 负载均衡
保证Redis的高可用性是一个涉及多个层面的任务,主要包括数据持久化、复制与故障转移、集群化部署等方面
【5月更文挑战第15天】保证Redis高可用性涉及数据持久化、复制与故障转移、集群化及优化策略。RDB和AOF是数据持久化方法,哨兵模式确保故障自动恢复。Redis Cluster实现分布式部署,提高负载均衡和容错性。其他措施包括身份认证、多线程、数据压缩和监控报警,以增强安全性和稳定性。通过综合配置与监控,可确保Redis服务的高效、可靠运行。
23 2