淘先锋技术网

首页 1 2 3 4 5 6 7

目录

前言

一、概述

1.NoSQL

2.Redis

二、安装

1.编译安装

2.RPM安装

三、目录结构

四、命令解析

五、redis登录更改

六、数据库操作

(一)、登录数据库

1.本地

 2.远程登录

 (二)、数据操作

 1.数据库操作

2.数据操作

七、Redis持久化

1.RDB模式

2.AOF模式

总结



前言

Redis是现在最受欢迎的NoSQL数据库之一,Redis是一个使用ANSI C编写的开源、包含多种数据结构、支持网络、基于内存、可选持久性的键值对存储数据库。


一、概述

1.NoSQL

非关系型数据库
内存存储

类型
    文档型数据库(Document-oriented database)如MongoDB;
    列族数据库(Column-family database)如HBase、Cassandra等;
    图形数据库(Graph database)如Neo4j、ArangoDB等;
    键值对数据库(Key-value database)如Redis、Memcached等;
    对象数据库(Object-oriented database)如db4o等。

应用场景
    缓存:Redis最常用的应用场景就是缓存,它可以缓存各种类型的数据,如数据库查询结果、API返回结果等,以提高应用程序的响应速度和并发性能。
    分布式锁:Redis的分布式锁可以确保在分布式系统中对某个资源的互斥访问,避免多个节点出现并发操作的问题。
    计数器:Redis支持对计数器的操作,能够方便地实现各种计数器的功能,如网站访问次数计数、订单数量计数等。
    会话管理:Redis可以用来管理会话信息,实现会话的状态存储和共享,避免了单点故障的问题。
    消息队列:Redis支持发布订阅模式,可以作为一个轻量级的消息队列使用,实现异步消息处理和任务派发等功能。

2.Redis

Remote Dictionary Server    远程字典服务

 官网
    https://www.redis.net.cn/

内存存储、持久化
键值对存储

监听端口号    6379

数据类型
    字符串(string)
    哈希值(hash)
    列表(list)
    集合(set)
    位图(bitmap)

二、安装

1.编译安装

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

tar xf  tar包

make && make install

redis-server redis.conf

2.RPM安装

基础环境(防火墙设置、宽容模式、静态IP、可以ping通百度)

yum install -y epel-release(可重复安装直至最新版本)
yum install -y redis

systemctl start redis

默认监听127.0.0.1地址

三、目录结构

/etc/redis.conf

主配置文件
    bind 127.0.0.1
        修改监听地址
    port 6379
        修改监听端口号
    pidfile 
        指定通过该配置文件启动
reids进程后的PID文件名称
    loglevel
        定义日志级别
    logfile
        定义日志存储路径
    databases
        指定默认数据库数量
    save
        定义单位时间内key的改变次数
    dbfilename
        定义存储RDB持久化数据的文件名称
    dir
        定义RDB与AOF文件的存储目录
    appendonly
        AOF的启停
    appendfilename
        定义AOF持久化文件的名称
    appendfsync
        定义AOF数据同步间隔
    requirepass 
        设置登录redis的密码

/var/lib/redis
    持久化文件存储目录
/var/log/redis
    日志文件存储目录
/var/run/redis
    PID文件存储目录
 

四、命令解析

启动

redis-server  redis.conf(文件名)| systenctm start redis

redis登录命令

redis-cli(监听默认回环)

-h
    redis服务器IP
-p
    指定访问端口号
-a
    指定登录密码
-n
    指定数据库编号

redis-check-rdb
    检查RDB文件
redis-check-aof
    检查AOF文件

五、redis登录更改

问题:更改完port后,systemctl启动redis异常

解决办法:使用redis-server /etc/redis.conf·

若要redis后台运需修改配置文件 daemonize yes

建议用netstat,比ss看的清楚 

六、数据库操作

(一)、登录数据库

1.本地

监听回环地址:redis-cli

监听本地网卡地址:redis-cli -h IP -p 端口号
    

 2.远程登录

192.168.127.144主机

192.168.127.145主机 

或者直接加密码

 (二)、数据操作

 1.数据库操作

select 数据库编号

2.数据操作

set( set key value)
    设置键值对
  
keys
    keys *  :查看所有键的名称
    keys 键名称:查看一个键是否存在
        
get(取出键值对)
    get 键(键不存在则返回空)


del(del key)
    删除键值对
    
flushall
    清空所有数据库中的数据


rename(rename oldkey newkey)
    重命名键名称
    不论更名后的键是否存在都会覆盖原有键,
并将改名前的键的值赋予改名后的键
    
renamenx( renamenx oldkey newkey)
    重命名键名称
    假如改名后键名称存在则更改不成功
  
move(move key dbnumber)
    移动键值对到指定数据库
    假如目标数据库中存在同名键则移动失败


ttl(ttl key)
    查看键值对的生命周期
  
        -1
            永久
        -2
            已过期


expire(expire key seconds)
    设置键值对的存储周期
    

设置、查看、移动

 生命周期查看与设置,删除

 重命名、清空所有

七、Redis持久化

1.RDB模式

默认持久化

/var/lib/redis/dump.rdb

数据库启动时会读取

触发条件

redis进程退出
    宕机
    redis程序崩溃

手动保存(触发RDB)
    save

2.AOF模式

/etc/redis.conf

appendonly.aof

默认进程启动时读取

appendonly  yes  为开启,可以与RDB同时使用

重启服务在/var/lib/redis/生成文件appendonly.aof,后续操作将录入此文件中


文件为空时会有空格,不为空,重启服务后登录异常 

 

 解决办法

vim appendonly.aof在里随意插入后删除整行,重启服务登录即可

 

 

总结

redis基础操作是非关系型数据库的常用代表,可操作的数据类型较为广泛,更多的内容需要根据自身的需要去进行扩展,才能掌握牢固此内容。