Redis
- Redis 是什么
- 安装Redis
- Redis数据类型 重点
- Redis哪些应用
- Python操作Redis 重点
- Redis主从
Redis是什么
- NoSQL数据库 非关系型数据库
- 保存在内存中 速度超快
- Key Value
- 八种数据类型 常用的有五种数据类型
- 单个Key最大支持到512M
- Redis有 0~15号 库 也就是说 16个库 默认 0号库
- 端口号 6379
Linux 软件安装方式
- dpkg 安装 类似于 windows QQ安装 下载一个exe的软件 下一步 下一步即可 缺点:有依赖关系 必须严格安装顺序来安装
- apt-get -y install 自动安装 非常的方便 需要什么自己去下载 完全不用管 -y表示不用确认 直接安装
- 编译安装 源码安装 麻烦 但是性能优于 apt-get安装 用c 和 c++ 开发
安装 Redis
pwd 查看当前目录
wget -c http://download.redis.io/releases/redis-5.0.5.tar.gz #下载到当前目录
tar -zxvf redis-5.0.5.tar.gz
sudo mv redis-5.0.5 /usr/local/redis #将redis 放到指定的目录下面
cd /usr/local/redis/
make install #安装
windows 安装 Redis
1.将 redis软件\redis\redis-windows-master\src\msopentech 里边的 redis 文件夹 拷贝到 纯英文目录不能出现中文 以后安装任何软件 路径中 都不有中文
2. 进入上面的目录 修改redis.windows.conf
503行 maxmemory 209715200
3.windows +r 键 打开 cmd窗口命令
4. 切换到 redis-server.exe 所在的目录
5.redis-server.exe redis.windows.conf 启动 #这种方式 不是后台启动 因为 windows 不支持 daemonize 所以我们要进行 第6步 通过windows服务的形式 启动停止 这就是后台启动
6.redis-server.exe --service-install redis.windows.conf #将redis安装到redis的服务中
windows+R 然后输入 services.exe 进入windows服务
然后找到 Redis 右键 开始或者停止 这样就实现了 后台启动了
文件释义
cd /usr/local/redis/src
文件名 | 说明 |
---|---|
redis-server | redis服务器启动脚本 |
redis-cli | redis客户端脚本 |
redis-sentinel | 哨兵服务器 redis 2.0以后才有的 |
redis-check-aof | aof修复工具 redis持久化 |
redis-check-rdb | rdb修复工具 redis持久化 |
redis-benchmark | 性能测试工具 |
Linux Redis启动
/usr/local/redis/src/redis-server #不能关闭窗口
#后台启动
sudo vim /usr/local/redis/redis.conf
进入底部命令模式 : set nu 显示行号
69 bind 127.0.0.1 按住i进入编辑模式 改为 bind 0.0.0.0
136 daemonize no 改为 yes
再次进入底部命令模式 :wq!
/usr/local/redis/src/redis-server /usr/local/redis/redis.conf
ps -auf | grep redis #查看 redis是否启动
shutdown # 停止服务
exit 然后 redis-server redis.conf # 停止后重启服务
连接 Redis
redis-cli -h ip地址 -p 端口号
ping
返回 PONG 说明连接成功了
设置密码
root@iZ2zeaajjrxs9amly3mbatZ:~# redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379> config set requirepass 123456
OK
keys * 提示没有权限
auth 123456
keys * 就可以看到所有的键了
数据类型
- string 字符类型 最基本的数据类型
- hash 哈希 缓存常用的
- list 列表
- set 无序集合
- zset 有序集合
string 键值对
set key value
127.0.0.1:6379> set username kangbazi #存入
OK
127.0.0.1:6379> get username #获取
"kangbazi"
127.0.0.1:6379> keys * #查看所有的key
1) "username"
2) "name"
127.0.0.1:6379> del name #删除指定的key
(integer) 1
127.0.0.1:6379> keys *
1) "username"
127.0.0.1:6379> type username #查看 key的类型
string
set num 1
127.0.0.1:6379> get num
"1"
127.0.0.1:6379> incr num #累加1
(integer) 2
127.0.0.1:6379> incr num
(integer) 3
127.0.0.1:6379> incrbyfloat num 12.34 #增加指定的值
"16.34"
127.0.0.1:6379> ttl num #查看key的过期时间 -1 用户过期
(integer) -1
127.0.0.1:6379> setex name 20 haha #设置的时候直接指定过期时间
OK
127.0.0.1:6379> STRLEN key #查看指定key对应的 value值的长度
(integer) 8
expire key 时间 # 指定key的过期时间