Redis-1-搭建
一、Redis简介
1.1 关系型数据库
1.2 解决思路
1.3 Nosql
大数据用的是Hbase,java方向redis用的是最多的
1.4 Redis
和nginx都是c语言写的,要安装c和c++的编译器gcc
1.5 特点
i++:保证原子操作;多线程会出现指令操作被打断,i加了但没有赋值,最后得出的结果较真实数据小。
redis6支持多线程指的是发送请求,执行指令还是单线程
1.6 数据类型
redis是以key-value方式存储的
redis的key都是String,value才有不同的数据类型
字符串类型 | String | 对比java | String |
---|---|---|---|
散列 | hash | HashMap | |
列表 | list | LinkedList | |
集合 | set | HashSet | |
有序集合类型 | sorted_set(Zset) | TreeSet | |
持久化支持。可以进行数据灾难恢复,内存数据库支持将内存中的数据存储到磁盘;多多少少会丢数据,真正持久保存还要存到关系型数据库。看业务重不重要,像业务调查丢一两条数据无所谓。
1.7 应用
分布式数据共享
分布式锁
二、Redis安装
2.1安装gcc-c++
2.2 解压
2.3 make
make编译完就可以用了,已经编译了生成了可执行文件,就在src源码目录下。
make install是为了配置环境变量,把可执行文件(绿色)单独放入指定路径,操作方便,后面可以接PREFIX参数。
不指定PREFIX,类似于安装到Windows的环境变量中,可以在任意目录启动命令,更方便。(但也看具体软件,如redis就需要配置PREFIX参数)
2.4 make install PREFIX=/usr/local/redis
这个命令会在这个目录下创建一个bin,将redis可执行文件都放进去,配合redis配置文件来使用
2.5 启动基本配置
2.5.1 前端启动
- ./bin/redis-server启动服务器,独占窗口,退出服务窗口关闭
- 进入客户端
./bin/redis-cli
- 关闭客户端(下图是错的,shutdown前面没有-)
- 关闭服务器
在客户端里打shutdown,直接全关
- 一个服务器模拟多个redis(不指定默认6379)
redis5窗口数量不限制,redis6只能开四个窗口,有限制
- 登录指定端口客户端(不指定默认6379)
- 关闭指定端口(不指定默认6379)
2.5.2 后端启动(用的最多)
2.5.2.1 修改配置文件
要结合配置文件
- 复制几分配置文件到conf文件夹,放到bin同级目录
-
修改配置文件
-
注释掉bind,127.0.0.1之能本机使用
真实项目部署到服务器,可以指定ip地址,-p前面加个-h ip地址(学习不方便)
不注释,只能redis使用,而程序都在windows系统里,windows无法访问redis里面
- 配置密码
默认没有密码
- 守护进程改成yes
默认no,前端启动,改成yes
-
2.5.2.2 启动
- 修改端口
- 进服务端,命令带对应端口的配置文件
- 进客户端后输入密码(默认6379,进其他端口加-p 端口号)
或者进客户端(6380端口)时加密码
2.6 桌面工具
- 配置远程工具要开端口,开完记得重启防火墙
默认有16个数据库
切换数据库
- 可以不注释bind,但要指定ip地址,否则访问不到redis
但登陆客户端的时候每次要带上ip地址,不方便
2.7 其他配置
- 日志文件
在每个config文件中配置每个端口对应的日志文件,否则用的是一个日志文件
- 修改日志存储位置
默认放到当前目录
修改存储位置
- 进程号存储文件
不改也不会影响运行
- 引用其他位置配置文件(下面引用的是自带的redis配置文件,在基础上进行修改)