redis是一种数据库,是存储数据、管理数据的软件 nosql数据库 非关系型数据库,采用聚合数据结构存储数据 //聚合结构:k-v
根据数据不同的特点选不同的数据库
MySQL是关系型数据库, 采用关系数据模型:维护表与表的关系
BSON:数据保存在键值对中,数据与数据采用逗号隔开,{ }表对象 [ ]表数组
{
"student":{
"id":1001,
"name":"zhangsan",
"addresses":{"province":"beijing","city":"daxingqu","street":"liangshuihe"},
"courses":[
{
"id":01,
"name":"java"
},
{
"id":02,
"name":"mybatis"
},
{
"id":03,
"name":"spring"
}
]
}
}
redis基于内存并支持持久化,其中的数据大部分时间存储在内存,所以访问很快,适合存储访问频繁,数据量小的数据 //所以又叫缓存数据库
Redis的特点
- 支持数据持久化:Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。
- 支持多种数据结构:Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
- 支持数据备份:Redis支持数据的备份,即master-slave模式的数据备份。
安装:
下载Linux安装包。传输过去,解压到opt下
在redis根目录下,编译redis,进入解压目录,并且执行make命令:make
报错:gcc命令未找到:安装gcc yum -y install gcc //查看查看Linux内核版本:gcc –v
清理上次make产生的文件:make distclean //然后再make命令
执行make install安装redis 并且把redis的命令放到环境变量中
后台启动redis服务:redis-server &
端口号
启动redis服务时,指定配置文件: //可以控制redis服务运行中的一些参数,如端口号等,没有使用配置文件使用默认参数
redis-server redis.conf &
关闭redis服务:redis-cli shutdown
使用redis:redis的客户端:用来连接redis服务,向redis服务端发送命令,并且显示redis服务处理结果。
redis-cli:是redis自带客户端,使用命令redis-cli就可以启动redis的客户端程序。 //默认连接127.0.0.1本机的6379端口上的redis服务
1)连接客户端: redis-cli
redis-cli -p 端口号 //连接127.0.0.1本机的指定端口号上的redis服务
redis-cli –h IP地址 -p 端口号 //连接指定主机的指定端口号上的redis服务
2)退出客户端:quit
基本知识:
redis-benchmark:命令,测试redis性能 //启动redis后可以测试
连接客户端之后使用 :
Redis沟通命令,查看状态://redis给我们返回PONG,表示redis服务运行正常
查看redis服务器的统计信息:info 、 info 信息段 //查看指定信息段的信息
redis的数据库实例:作用类似于mysql的数据库实例
不同:redis中的数据库实例只能由redis服务来创建和维护,开发人员不能修改和自行创建数据库实例;
默认情况下,redis会自动创建16个数据库实例,并且给这些数据库实例进行编号,从0~15,使用时通过编号来使用数据库;
可以通过配置文件,指定redis自动创建的数据库个数;redis的每一个数据库实例本身占用的存储空间是很少的,所以也不造成存储空间的太多浪费。
默认情况下,redis客户端连接的是编号是0的数据库实例;
切换数据库实例:select 编号查看当前数据库实例中所有key的数量:dbsize
查看当前数据库实例中所有的key:keys *
清空数据库实例:flushdb
清空所有的数据库实例:flushall
查看redis中的配置信息:config get * //查看所有的 //就是那个配置文件redis.conf
config get 字段 //查看指定的配置信息 //字段就是配置文件对应的字段
redis的5中数据结构