redis简介

一、NoSQL

学名(not only sql)
特点:存储结构与mysql这一种关系型数据库完全不同,nosql存储的是KV形式,nosql有很多产品,都有自己的api和语法,以及业务场景

产品种类:

  • Mongodb
  • redis
  • Hbase
  • hadoop

二、Nosql和sql的区别

应用场景不同,sql支持关系复杂的数据查询,nosql反之
sql支持事务性,nosql不支持

三、redis特性

Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件
redis是c语言编写的,支持数据持久化,是key-value类型数据库。
应用在缓存,队列系统中
redis支持数据备份,也就是master-slave模式

四、redis优势

性能高,读取速度10万次每秒
写入速度8万次每秒
所有操作支持原子性

用作缓存数据库,数据放在内存中
替代某些场景下的mysql,如社交类app
大型系统中,可以存储session信息,购物车订单

五、yum安装redis

1.yum安装:

#前提得配置好阿里云yum源,epel源
#查看是否有redis包
yum list redis

#安装redis
yum install redis -y

#安装好,启动redis
systemctl start redis

2.检测redis是否工作:

redis-cli    #redis 客户端工具
#进入交互式环境后,执行ping,返回pong表示安装成功
127.0.0.1:6379> ping
PONG

六、源码安装redis,编译安装

编译安装的优势是:

  • 编译安装时可以指定扩展的module(模块),php、apache、nginx都是一样有很多第三方扩展模块,如mysql,编译安装时候,如果需要就定制存储引擎(innodb,还是MyIASM)
  • 编译安装可以统一安装路径,linux软件约定安装目录在/opt/下面
  • 软件仓库版本一般比较低,编译源码安装可以根据需求,安装最新的版本
1.下载redis源码
wget http://download.redis.io/releases/redis-4.0.10.tar.gz

2.解压缩
tar -zxf redis-4.0.10.tar.gz

3.切换redis源码目录
cd redis-4.0.10.tar.gz

4.编译源文件
make 
5.编译好后,src/目录下有编译好的redis指令

6.安装到指定目录,默认在/usr/local/bin
make install 

redis可执行文件:

./redis-benchmark //用于进行redis性能测试的工具
./redis-check-dump //用于修复出问题的dump.rdb文件
./redis-cli //redis的客户端
./redis-server //redis的服务端
./redis-check-aof //用于修复出问题的AOF文件
./redis-sentinel //用于集群管理

七、redis配置文件

redis配置文件名为:redis.conf, 这个文件名可以自定义

#绑定ip,如需要远程访问,需要填写服务器ip
bind 127.0.0.1  

#端口,redis启动端口,默认是6379
port 6397

#守护进程方式运行,允许redis-server在后台运行
daemonize yes

#rdb数据文件,记录数据备份的记录
dbfilename dump.rdb

#指定数据文件存放路径
dir /var/lib/redis/

#日志文件
logfile /var/log/redis/redis-server.log

#主从复制,指定主机地址及端口
slaveof  127.0.0.1 6379

#开启redis的安全模式,必须输入密码才可以远程登录
protected-mode yes

#日志运行等级 
loglevel notice

#设置redis的密码
requirepass 123

八、启动redis服务端

#方式一:默认情况下启动方式,redis-server会以非daemon的方式来运行,且默认服务端口为6379。
redis-server

#方式二:通过加载配置文件,启动
./redis-server ../redis.conf

九、启动redis客户端

#执行客户端命令即可进入
./redis-cli  

#测试是否连接上redis
127.0.0.1:6379 > ping
返回pong代表连接上了

//用set来设置key、value
127.0.0.1:6379 > set name "chaoge"
OK
//get获取name的值
127.0.0.1:6379 > get name
"chaoge"

十、redis数据结构

redis是一种高级的key:value存储系统,其中value支持五种数据类型
* String: 字符串
* Hash: 散列
* List: 列表
* Set: 集合
* Sorted Set: 有序集合

相关资源

Redis 官网:https://redis.io/

源码地址:https://github.com/redis/redis

Redis 在线测试:http://try.redis.io/

Redis 命令参考:http://doc.redisfans.com/

posted @ 2022-11-12 20:46  三省吾身~  阅读(191)  评论(0)    收藏  举报