centos7上安装redis

一、直接单机版安装

  • 1、Redis是基于C语言编写的,因此首先需要安装Redis所需要的gcc依赖

    yum install -y gcc tcl
    
  • 2、官网上下载依赖包来安装,官网地址

    • 直接官网上下载,上传到服务器上,下载地址

    • 直接使用wget的方式下载

      wget https://shuiping.oss-cn-shenzhen.aliyuncs.com/redis-6.2.6.tar.gz
      
  • 3、把文件放在/usr/local/src目录下

  • 4、解压文件

    tar -xzf redis-6.2.6.tar.gz
    
  • 5、进入解压后的文件夹下,编译安装

    make && make install
    
  • 6、默认的安装路径是在 /usr/local/bin目录下

    • redis-cli:是redis提供的命令行客户端
    • redis-server:是redis的服务端启动脚本
    • redis-sentinel:是redis的哨兵启动脚本
  • 7、直接启动

    ./redis-server
    
  • 8、进入redis-cli中查看版本号

    [root@iZwz9et2qekjwu8mwmxgxhZ bin]# ./redis-cli
    127.0.0.1:6379> info server
    # Server
    redis_version:6.2.6
    redis_git_sha1:00000000
    redis_git_dirty:0
    redis_build_id:a90324d212372b79
    redis_mode:standalone
    os:Linux 3.10.0-957.21.3.el7.x86_64 x86_64
    arch_bits:64
    multiplexing_api:epoll
    atomicvar_api:atomic-builtin
    gcc_version:4.8.5
    process_id:27941
    process_supervised:no
    run_id:156053feefd85fba87a4e027dc72fa8fbae4df95
    tcp_port:6379
    server_time_usec:1689563133774537
    uptime_in_seconds:20
    uptime_in_days:0
    hz:10
    configured_hz:10
    lru_clock:11841533
    executable:/usr/local/bin/./redis-server
    config_file:
    io_threads_active:0
    127.0.0.1:6379> 
    
  • 9、使用配置文件启动,并且再后台启动,配置文件的路径/usr/local/src/redis-6.2.6下的redis.conf文件

  • 10、先拷贝一份

    cp redis.conf redis.conf.bck
    
  • 11、然后修改redis.conf文件中的一些配置

    # 允许访问的地址,默认是127.0.0.1,会导致只能在本地访问。修改为0.0.0.0则可以在任意IP访问,生产环境不要设置为0.0.0.0
    bind 0.0.0.0
    # 守护进程,修改为yes后即可后台运行
    daemonize yes 
    # 密码,设置后访问Redis必须输入密码
    requirepass 123456
    
    # 监听的端口
    port 6379
    # 工作目录,默认是当前目录,也就是运行redis-server时的命令,日志、持久化等文件会保存在这个目录
    dir .
    # 数据库数量,设置为1,代表只使用1个库,默认有16个库,编号0~15
    databases 1
    # 设置redis能够使用的最大内存
    maxmemory 512mb
    # 日志文件,默认为空,不记录日志,可以指定日志文件名
    logfile "redis.log"
    
  • 12、进入目录下/usr/local/src/redis-6.2.6

    redis-server redis.conf
    
  • 13、进入命令窗口

    redis-cli
    auth 123456
    

二、设置开机启动

  • 1、创建一个文件

    vim /etc/systemd/system/redis.service
    
  • 2、/etc/systemd/system/redis.service的文件内容

    [Unit]
    Description=redis-server
    After=network.target
    
    [Service]
    Type=forking
    ExecStart=/usr/local/bin/redis-server /usr/local/src/redis-6.2.6/redis.conf
    PrivateTmp=true
    
    [Install]
    WantedBy=multi-user.target
    
  • 3、重新加载配置服务

    systemctl daemon-reload
    
  • 4、常见命令

    # 启动
    systemctl start redis
    # 停止
    systemctl stop redis
    # 重启
    systemctl restart redis
    # 查看状态
    systemctl status redis
    # 开始自启
    systemctl enable redis
    

三、使用docker安装

  • 1、安装docker

    yum install docker
    
  • 2、几个常见的命令

    service docker start
    service docker stop
    service docker restart
    
  • 3、下载文件

    docker pull redis:6.0.10
    
  • 4、本地创建一个配置文件/root/redis/conf/redis.conf

    bind 0.0.0.0
    protected-mode yes
    port 6379
    tcp-backlog 511
    timeout 0
    tcp-keepalive 0
    loglevel notice
    logfile ""
    databases 16
    save 900 1
    save 300 10
    save 60 10000
    stop-writes-on-bgsave-error yes
    rdbcompression yes
    rdbchecksum yes
    dbfilename dump.rdb
    dir ./
    requirepass 123456
    
  • 5、使用镜像创建容器

    docker run -it -d --name redis -m 300m --net=host \
    -v /root/redis/conf:/usr/local/etc/redis redis:6.0.10 \
    redis-server /usr/local/etc/redis/redis.conf
    
  • 6、进入容器中查看版本号及设置一个值,本地查看

    docker  exec -it 8cf81a077db8 /bin/bash
    
    

四、直接使用yum安装

五、redis持久化

  • 1、RDB模式,默认的方式,使用快照的模式

    # 900秒内,如果至少有一个key被修改,则执行bgsave操作,如果save "" 表示禁止使用RDB持久化
    save 900 1
    save 300 10
    save 60 10000
    stop-writes-on-bgsave-error yes
    # 是否压缩
    rdbcompression yes
    rdbchecksum yes
    # RDB文件名称
    dbfilename dump.rdb
    # 文件保存的路径目录
    dir ./
    
  • 2、AOF模式

    • AOF默认是关闭的,需要修改redis.conf配置文件来开启AOF

      # 默认是no表示不开启,如果要开启改为yes
      appendonly no
      # AOF文件名称
      appendfilename "appendonly.aof"
      
    • AOF持久化频率

      # 表示每执行一次写命令,立即会记录到AOF文件中
      # appendfsync always 
      # 写命令执行完成,先放入到AOF缓冲区,然后每隔1秒将缓冲区的数据写入到AOF中,默认的方式
      appendfsync everysec
      # 写命令执行完成,先放入到AOF缓冲区,由操作系统决定何时写入本地文件中
      # appendfsync no
      
    • redis触发阀值自动重写AOF文件

      # 文件比上次文件,增长超过多少百分比触发重写
      auto-aof-rewrite-percentage 100
      # AOF文件体积最小多大以上才触发重写
      auto-aof-rewrite-min-size 64mb
      
  • 3、RDBAOF的对比

    RDBAOF
    持久化方式定时对整个内存做快照记录每一次执行的命令
    数据完整性不完整,两次备份之间会丢失相对完整,取决于刷盘策略
    文件大小会有压缩,文件提交小记录命令,文件体积大
    宕机恢复速度很快
    数据恢复优先级低,因为数据完整性不如AOF高,因为数据完整性高
    系统资源占用高、大量CPU和内存消耗低,主要是磁盘IO资源,但是AOF重写时会占用大量的CPU和内存资源
    使用场景可以容忍数分钟的数据丢失,追求快的启动速度对数据安全性要求较高
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

水痕01

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值