Redis
2019-05-14 本文已影响0人
hgzzz
- NoSQL: not only sql
- 为什么有NOSql: 互联网项目:特点: 数据库高并发读写,海量数据高效率存储,可扩展
- NOSQL主流:键值对(redis),列式存储,文档类型,图形数据库
- NoSql特点: 特点: 数据库高并发读写,海量数据高效率存储,可扩展
- Redis:由C语言实现的直接操作内存的开源的高性能的数据库软件,应用:
- 缓存(数据查询,短连接,新闻内容,商品内容)
- 在线好友列表
- 任务队列(秒杀,抢购)
- 网站统计访问
- Linux 安装 Redis
- 在 redis 官网中下载压缩文件
- 解压文件
- 安装 gcc:
yum install gcc
yum install gcc-c++
- 在解压好的文件路径下编译文件
make MALLOC=libc
- 安装到指定目录
make PREFIX=/usr/local/src/redis install
- 将配置文件复制到安装目录下
cp ./redis.conf /usr/local/src/redis
- 修改配置文件,以后端模式启动 将 配置项
daemonize no
改成yes
- 启动服务
redis-server ./redis.conf
- 打开客户端
redis-cli
- redis特性
- 一个redis服务可以新建16个数据库,数据库是由一个整数索引标识,而不是由一个数据库名称。默认情况下,一个客户端连接到数据库0。使用
select 2
来切换数据库 - 一个服务器上可以安装多个 redis服务,只要保证端口不冲突即可
- 消息的订阅与发布
- 订阅频道
subscribe chanbel;
- 批量订阅频道
psubscribe chanbel*;
- 发布消息
publish channel content;
- 订阅频道
- 事务
- 在redis中,事务中所以命令都会被串行化的顺序执行,而且当事务执行时,redis 不会再为其他客户端请求提供服务
- 在事务中一条命令执行失败,依然会执行后续命令
- 开启事务
MULTI
,提交EXEC
,回滚DISCARD
- redis 持久化
- RDB:在指定的时间间隔内把数据快照写入磁盘,备份起来很方便,但是可能发生还没来得及写入磁盘就发生宕机的情况。
- AOF:将改变数据库的命令写入日志文件中去,发生宕机问题可以恢复数据,但是对于相同数据量的数据集,这种方式产生更大的数据集
- 一个redis服务可以新建16个数据库,数据库是由一个整数索引标识,而不是由一个数据库名称。默认情况下,一个客户端连接到数据库0。使用