宁波专业网站制作服务,公众号文章排版编辑器,金融集团网站建设方案,免费链接转换短网址概念
Redis#xff1a;非关系型数据库#xff08;non-relational)#xff0c;Mysql是关系型数据库(RDBMS) Redis是当今非常流行的基于KV结构的作为Cache使用的NoSQL数据库 为什么使用NoSQL
关系型 数据库无法应对每秒上万次 的读写请求
表中的存储记录 数量有限
无法简单… 概念
Redis非关系型数据库non-relational)Mysql是关系型数据库(RDBMS) Redis是当今非常流行的基于KV结构的作为Cache使用的NoSQL数据库 为什么使用NoSQL
关系型 数据库无法应对每秒上万次 的读写请求
表中的存储记录 数量有限
无法简单的通过增加硬件、服务节点来提高系统性能
关系型数据库大多是收费的对硬件要求较高软硬 件成本较高
NoSQL优势
大数据量高性能
灵活的数据模型无需事先为数据建立字段随时可以存储自定义的数据格式
高可用在不影响性能的情况下可以方便的实现高可用的框架能很好的解决关系型数据库扩展性差的问题
低成本
NoSQL劣势
无关系数据之间是无联系的
不支持标准的SQL没有公认的NoSQL标准
没有关系型数据库的约束大多数也没有索引的概念
没有事务不能依靠事务实现ACID
没有丰富的数据类型数值日期字符二进制大文本等
Redis安装和使用
官网Redis官网 中文版Redis中文版网址 下载
window版本
网址window版本网址 使用步骤
下载Redis-x64-3.2.100.zip 解压双击redis-server.exe如果启动失败需要手动配置redis.windows.conf 在当前目录下选择目录显示框输入cmd进入命令行 输入redis-server.exe redis.windows.conf 回车 出现上图的图形则证明该服务已启动 双击redis-cli.exe打开Redis自带客户端通过该客户端可以执行和Redis的数据交互 输入set自动弹出语法格式 将光标通过空格键移到key上输入key的值光标通过空格键移到value上输入value的值回车。 出现该结果代表值保存成功 通过get 方法取值 Linux版本
网址Redis官网 安装步骤
通过Xftp工具将下载在window上的压缩包上传到Linux上目录/home/soft 解压到Linux上目录usr/local目录 解压命令tar -zxvf 压缩包名 -C usr/local/ 编译Redis文件Redis是使用C语言编写的。会使用gcc编译器 在解压后的Redis安装目录执行make命令 注意事项 make命令执行过程中可能报错根据控制台输出的错误信息解决 错误一gcc命令找不到是由于没有安装gcc导致 解决方式安装gcc编译器后执行make命令 安装gcc编译器在src目录下使用yum命令yum -y install gcc 错误二errorjemalloc/jemalloc.h:No such file or directory 解决方式执行make MALLOClibc make命令之后执行make install该命令类似于windows系统中配置环境变量这样我们就可以在任何地方执行Redis的命令
Linux中的使用
开启Redis
Linux中的redis-server是服务窗口redis-cli是客户端窗口 在src目录下执行 打开服务器 前台启动./redis-server 后台启动./redis-server 常用后台启动方式如果修改了配置文件则每次启动都需要指向配置文件 打开客户端执行./redis-cli 开启命令行 关闭Redis
在客户端中执行shutdown
在src目录下执行./redis-cli shutdown如果有密码./redis-cli -a 密码 shutdown
Redis客户端
redis命令行客户端
直接连接redis默认ip:127.0.0.1端口6379./redis-cli
指定IP和端口号连接redis./redis-cli -h 127.0.0.1 -p 6379
-h redis主机IP可以指定任意redis服务器
-p 端口号不同的端口号表示不同的redis应用
远程客户端连接Linux上redis
网址远程客户端网址 国产客户端 Redis服务器有安全保护措施默认只有本机可以访问配置信息在Redis安装目录下的redis.conf文件。修改此文件的两个设置。 远程连接redis需要修改redis主目录下的redis.conf配置文件 bind ip 绑定ip此行注释
protected-mode yes 保护模式改为no
使用vi/vim命令修改redis.conf文件修改文件前备份此文件执行cp命令 步骤
在/usr/local/redis/目录下执行 cp redis.conf bak_redis.conf 使用vim/vi命令执行vim redis.conf 再执行GG 将光标移至最后一行再执行/bind 按回车查找执行n 往下查找找到 bind 127.0.0.1后将其注释掉 找到protected -mode yes将yes改成no 执行esc按键输入“:qw”完成保存退出 修改结束后每次启动redis时需要指定redis.conf 进入src目录下执行./redis-server ../redis.conf 查看 防火墙的状态执行systemctl status firewalld 关闭防火墙命令service firewalld stop 编程 客户端连接Linux的redis
Redis基本操作命令
1、沟通命令
命令行输入ping返回PONG表示服务端运行正常 2、查看当前数据库中key的数目dbsize
作用返回当前数据库的 key 的数量默认访问第0个库 3、Redis默认使用16个 库
可以在conf配置文件中修改databases的值 4、切换库命令select
执行select index 5、删除当前库的数据flushdb
删除当前库中的所有数据 6、redis自带的客户端退出当前redis连接exit或quit
客户端退出连接服务端继续运行 Redis的key的操作命令
keys查询自己需要的key
语法keys pattern 作用查找所有符合模式pattern的keypattern可以使用通配符 通配符 *表示0至多个字符例如keys * 查询所有的key
表示单个字符例如wo?d配置wordwold
注意Redis是单线程接收命令 exists查询key是否存在
语法exists key [key...] 作用判断key 是否存在 expire设置key的存活时间
语法expire key seconds 作用设置key的生存时间超过时间key自动删除。单位是秒 返回值设置成功返回数字1其他情况是0 ttl查询key的剩余存活时间
语法ttl key 作用以秒为单位返回 key的 剩余生存时间ttl:time to live) 返回值 -1没有设置key的生存时间key永不过期
-2key不存在
数字key的生存时间秒为单位
type
语法type key 作用查看key所存储值的数据类型 返回值字符串表示的数据类型 nonekey 不存在
string字符串
list列表
set集合
zset有序集
hash哈希表
del
语法del key[key...] 作用删除存在的key不存在的key忽略 返回值数字删除的key的数量 五中数据类型
字符串string
字符串类型是Redis中最基本的数据类型他能存储任何形式的字符串包括二进制序列化后的数据JSON化的对象甚至是一张图片最大512M 基本命令
set key