redis

redis

redis 单进程单线程 非阻塞IO

端口:memcache 11211 redis 6379

Redis安装报错解决办法 原因GCC版本太低

https://blog.csdn.net/qq_40310224/article/details/109706990

安装步骤

https://www.cnblogs.com/heqiuyong/p/10463334.html

redis可以有远程客户端图形化连接

连接不上原因 可能原因是 防火墙 需要安全组打开相应端口

redis五种数据类型
字符串
  1. keys * 查看所有键

  2. exists [key] 键是否存在

  3. dbsize 查看键个数

  4. flushdb 清除数据库 flushall 清除全部 慎用

  5. select [num] 选择第几个数据库

  6. set key value ex/px nx/xx 存值 过期时间 存在不增加/存在替换

  7. ttl key 查看是否有过期时间

  8. type key 查看类型

  9. 加m mset mget…一次获取多个

  10. incr key 自增 decr key 自减 incrby key 10 decrby key 10 多个

  11. append key value 追加值

  12. getset key value 获取旧的设置新的

列表–队列
  1. lpush/rpop key 左进右出
  2. llen key 查看列表长度
  3. lrange key startIndex endIndex
  4. rpush/lpop key 右进左出
  5. ltrim key sindex eindex 截取区间内的元素
  6. rpoplpush oldlist newlist 把一个列表的右边弹出元素存到另一个列表的左边进去
哈希–关联数组

关联数组 存储数据表的一条记录

命名规范 表名:主键字段名:值

  1. hset key field value 设置 hget key fidld 获取
  2. hmset key f1 v1 f2 v2 设置多个
  3. del key 删除/hdel key field 删除单个字段
  4. hmget key f1 f2获取多个/ hgetall key获取全部值
  5. hlen key 获取个数
  6. hexists key field 获取单个字段是否存在
  7. hincrby key field 1 自增1
  8. hkeys key 获取字段名
  9. hvals key 获取值
集合
无序

redis的set是无序集合,不允许重复元素,最大放2的32次方-1个元素

场景:存放用户ID 不重复信息 抽奖 好友关系

  1. sadd key value1 value2 向集合key中添加元素
  2. smembers key 返回所有元素
  3. srem key value 删除指定元素
  4. spop key value 随机删除一个元素
  5. sismember k v 判断是否存在
  6. smove a b v a移动元素到b
  7. sinter/sunion/sdiff 交集/并集/差集 差集是以k1为主 k2的不会出现
有序

相比无序多了一个分值排序

  1. zadd k score v s1 v1 添加多个元素
  2. zrem k v 删除指定元素
  3. zrange/zrevrange k sindex eindex withscores 按正倒序取出区间元素并显示分值
  4. zremrangebyscore k sindex eindex 按分值删除元素
  5. zcard key 返回元素个数
  6. zcount k sindex eindex 统计区间个数
  7. zscore k v 查询分值
  8. zincrby k s v 分值自增1
发布与订阅
  1. subscribe name 订阅频道
  2. publish name 发布频道
  3. psubscribe name* 订阅以name开头发布频道时只要name开头均可收到
持久化操作

保存的2种方式

  1. 快照rdb 自动 在配置文件342行 修改保存路径

    默认有三种快照

  2. aof日志 手动 搜索 appendonly 开关

    有三种保存机制 推荐一秒钟存一次

服务挂掉后 启动时优先读取aof在rdb

事务

支持简单事务 当同一个操作多个命令要么都成功要么都失败

  1. multi 开始事务 将把接下来的命令放到队列中
  2. discard 回滚
  3. exec 提交 命令没错,逻辑错了会提交成功 不足之处
  4. watch 监听key是否有改变 有改变的话事务就不执行
验证
  1. 在redis配置文件中进行IP限制
  2. 启用密码 auth pwd – 配置文件搜索requirepassword
redis主从设置

1主服务器 开启rdb和aof日志、密码认证登录

2.修改 从服务器 的配置文件

主从同机的话修改1-6,不同机修改5-6即可

  1. 修改端口号
  2. 关闭aof日志
  3. 修改pid
  4. 修改rdb名称
  5. replicaof ip port 从服务器连接主服务器ip和端口
  6. masterauth password 从服务器连接主服务器密码
扩展安装
windows下安装扩展

官方扩展库: https://pecl.php.net/package/redis

phpredis 对应原生

predis 对应框架

1.通过phpinfo 查看PHP版本、TS/NTS 
2.点击DLL下载对应的扩展并解压
3.放在PHP安装目录下的ext文件夹 
4.在php.ini 加上 extension=php_redis.dll
5.重启web或php-fpm
Linux下安装扩展

yum安装

1.查询支持的扩展 yum search redis|grep ^php
2.安装指定的扩展 yum install -y php72w-pecl-redis.x86_64

源码安装

1.下载 wget http://pecl.php.net/get/redis-5.0.2.tgz
2.解压 tar zxf redis-5.0.2.tgz

phpredis扩展: https://blog.51cto.com/leezhxing/1316930
php安装拓展之phpize方式安装: https://blog.csdn.net/diyiday/article/details/85049702

php操作redis

在线手册: https://github.com/phpredis/phpredis/#readme

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值