Redis部署(Centos)

概述

Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

Redis官网:https://redis.io/
Redis下载地址:https://download.redis.io/releases/

Redis部署

版本:Redis 6.2.8

本地部署

下载安装包

wget https://download.redis.io/releases/redis-6.2.8.tar.gz

创建部署目录

mkdir -p /data/redis/{
    
    src,data,logs,etc,bin}

安装依赖

yum -y install gcc gcc-c++

安装

tar zxf redis-6.2.8.tar.gz -C /data/redis/src
cd /data/redis/src/redis-6.2.8/
make
cd /data/redis/src/redis-6.2.8/src
make install

复制配置文件

cp /data/redis/src/redis-6.2.8/redis.conf  /data/redis/etc/
cp /data/redis/src/redis-6.2.8/sentinel.conf  /data/redis/etc/

复制启动程序

cd /data/redis/src/redis-6.2.8/src
cp mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-rdb redis-cli redis-server redis-sentinel /data/redis/bin

设置环境变量

echo "export PATH=$PATH:/data/redis/bin" >> /etc/profile
source  /etc/profile

修改配置文件

修改配置文件中以下几项,其他配置按照需求修改

vim /data/redis/etc/redis.cof
bind 0.0.0.0  #允许访问的主机0.0.0.0为允许所有也可设置为某台主机
port 6379   #监听端口
protected-mode no #是否开启保护模式,默认开启。要是配置里没有指定bind和密码。开启该参数后,redis只会本地进行访问,拒绝外部访问。要是开启了密码和bind,可以开启。否则最好关闭设置为no。
daemonize yes  #已守护进程运行
logfile /data/redis/logs/redis.log #日志位置
requirepass Pwd@123  #设置redis密码
dir /data/redis/data  #数据目录位置
databases 16   #数据库数量(默认不修改)
appendonly yes  #开启数据持久化(根据需求开启)
maxmemory  3221225472 #设置最大内存限制(bytes)
#(内存算法:1Byte(字节) = 8bit(位),1KB = 1024Byte(字节),1MB = 1024KB,1GB = 1024MB,1TB = 1024GB)

启动程序

redis-server /data/redis/etc/redis.conf

停止程序

kill -9 `ps -ef |grep redis-server |grep -v grep| awk '{print $2}'`

查看程序进程

ps -ef |grep redis-server

查看服务信息

redis-cli -a Pwd@123 info

容器部署

docker_run

创建部署目录

mkdir /data/redis/{
    
    data,log,etc}
chmod 777 -R /data/redis/log

编辑配置文件

vim /data/redis/etc/redis.conf
bind 0.0.0.0
port 6379
protected-mode no
logfile /log/redis.log
requirepass Pwd@123
dir /data/
appendonly yes
maxmemory  3221225472

启动容器

docker run -d --name  redis -v /data/redis/etc/redis.conf:/etc/redis.conf -v /data/redis/data/:/data -v /data/redis/log/:/log/ redis:6.2.8  redis-server  /etc/redis.conf

查看服务信息

docker exec -it redis redis-cli -a Pwd@123 info

docker-compose

创建部署目录

mkdir /data/redis/{
    
    data,log,etc}
chmod 777 -R /data/redis/log

编辑配置文件

vim /data/redis/etc/redis.conf
bind 0.0.0.0
port 6379
protected-mode no
logfile /log/redis.log
requirepass Pwd@123
dir /data/
appendonly yes
maxmemory  3221225472

创建yml文件

vim /data/redis/docker-compose-redis.yml
version: '3'
services:
  redis:
    image: redis:6.2.8
    container_name: redis
    restart: always
    volumes:
      - /data/redis/etc/redis.conf:/etc/redis.conf
      - /data/redis/data:/data
      - /data/redis/log:/log
    environment:
      TZ: Asia/Shanghai
    command: [
      "bash", "-c",
      '
       docker-entrypoint.sh
       /etc/redis.conf
      '
    ]
    ports:
      - 6379:6379

启动容器

docker-compose -f /data/redis/docker-compose-redis.yml up -d

查看服务信息

docker exec -it redis redis-cli -a Pwd@123 info

基础命令

查看当前数据库中所有的key

keys * 

键总数

dbsize

检查键是否存在

exists key

设置键

set key value
-- key必须不存在,才能设置成功,用于添加
setnx key value
-- key必须存在,才能设置成功,用于更新
set key value xx
--批量设置
mset key1 value1 key2 value2
例:
set age 23 ex 10
setnx name test
set age 25 xx

获取键

get key
--单个获取
mget key1 key2
--批量获取
例:
批量设值:mset country china city beijing
批量获取:mget country city address

删除键

del key [key …]

键过期

expire key seconds

获取键的有效时长

ttl key

移除键的过期时间

persist key

键的数据结构类型

type key

随机返回数据库中一个键

randomkey

重命名

rename keyold keynew

当key2不存在时,key1重命名

renamex key1 key2 

Supongo que te gusta

Origin blog.csdn.net/weixin_49566876/article/details/128482215
Recomendado
Clasificación