redis数据库基础学习

关系型数据库

关系型数据库是一个结构化的数据库,创建在关系模型(二维表格模型)基础上,一般面向于记录。

Sql语句(标准数据查询语言)就是一种基于关系型数据库的语言,用于执行对关系型数据库中数据的检索和操作。

主流的关系型数据库包括:Oracle、mysql、sql server、microsoft access、db2等。

非关系型数据库

Nosql,意思是"不仅仅是sql",是非关系型数据库的总称。

除了主流的关系型数据库外的数据库,都认为是非关系型。

主流的nosql数据库有redis、mongbd、hbase、memcached等。

关系型数据库与非关系数据库的区别

数据存储方式不同

扩展方式不同

对事务性的支持不同

非关系型数据库产生背景

High performance 对数据库高并发读写要求

总结

关系型数据库

实例 -> 数据库 -> 表(table) -> 记录行(row)-> 数据字段(column)

非关系型数据库

实例 -> 数据库 -> 集合(collection)-> 键值对(key-value)

Redis

Redis是一个开源的、使用C语言编写的nosql数据库。

Redis基于内存运行并支持持久化(支持存储在磁盘里),采用key-value(键值对)的存储形式,是目前分布式架构中不可或缺的一环。

Redis的优点

具有极高的数据读写速度,支持丰富的数据类型,支持数据的持久化,原子性,支持数据备份

Redis作为基于内存运行的数据库,缓存是其最常应用的场景之一

Redis常见应用场景还包括获取最新N个数据的操作、排行榜类应用、计数器应用、存储关系、实时分析系统、日志记录。

****适合放入缓存中的有:****即时性,数据一致性要求不高,访问量大且更新频率不高。

Redis为什么这么快:redis是一款纯内存结构,避免了磁盘I/O等耗时操作;redis命令处理的核心模块为单线程;采用了I/O多路复用机制。

Redis的数据类型:string(字符串);list(双向列表);hash(哈希);set(集合);zset(有序集合)

Yum下载redis

Yum install -y redis

启动redis

Systemctl start redis

更改redis配置需要关闭redis服务

Systemctl stop redis

Vim /etc/redis.conf

监听网络更改为自己ip:bind 192.168.11.5

将保护模式关闭

Pid文件存储位置

日志文件要重新命名,分开存放,避免出问题查找速度慢。

注意!!!:改完文件名后要查看文件属主和属组都要是redis

使用redis:redis-cli -h 192.168.11.5

输入密码:auth 123.com(实验场景不使用密码)

Redis默认不限制内存(不合理)要改,

查看与什么相关的命令,例如字符串 help @string

设置s1的值为123:set s1 123

查看s1的值:get s1

切换库:select 0

查看所有的键:keys *

判断s1键是否存在:exists s1

查看类型:type s1

设置过期时间:expire s1 20(秒)

查看过期时间:ttl s1(-1:未设置过期时间,-2:时间已过期)

改命名s1改为s2:rename s1 s2(s2有内容也覆盖为s1的内容)

重命名:renamenx s1 s2(s2有内容则不成功)

查看一共有多少个键:dbsize

字符串追加:append s2 '123456789'(该键不存在则创建,若存在则追加)

查看指定键的长度:strlen s1

批量设置键:mset s6 00 s7 44

批量查看键:mset s2 s3 s4

移动键s2到1号库:move s2 1

注意!!! 清除当前库:flushdb(很危险)

清除所有:flushall(很危险)

相关推荐
星幻元宇VR2 小时前
VR星际行走平台|沉浸式科普教育与未来体验的新入口
科技·学习·安全·生活·vr
正在走向自律2 小时前
多源异构数据融合技术实践:GIS、时序、文档与缓存数据整合方案
数据库
雾喔2 小时前
【学习笔记2】快速上手调用 AI API & Prompt Engineering
人工智能·笔记·学习
呆呆在发呆.2 小时前
JavaEE初阶
java·jvm·网络协议·学习·udp·java-ee·tcp
航Hang*2 小时前
Windows Server 配置与管理——第9章:配置DHCP服务器
运维·服务器·windows·学习
雾喔2 小时前
【学习笔记1】AI 基础概念:机器学习、深度学习、大语言模型的区别
人工智能·学习·机器学习
武超杰2 小时前
MySQL调优(一)
数据库·mysql
电商API&Tina2 小时前
淘宝 / 京东关键词搜索 API 接入与实战用途教程|从 0 到 1 搭建电商选品 / 比价 / 爬虫替代系统
java·开发语言·数据库·c++·python·spring
VelinX2 小时前
【个人学习||spring】
java·学习·spring