redis数据库学习

Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件

redis数据库的安装

1.卸载通过yum安装的redis数据库

yum remove redis -y

2.通过源码编译安装
    1.下载redis的源代码
    wget http://download.redis.io/releases/redis-4.0.10.tar.gz
    2.解压缩源码
  tar -zxf redis-4.0.10.tar.gz
    3.进入redis源码目录,编译安装,生成可执行命令
  redis不需要执行configure,因为他已经有了makefile
 4.通过如下2个命令,生成redis的可执行文件
  make && make install

 5.此时已经可以启动redis服务端了
   redis-server


# redis -server #服务端
# redis -cli #客户端


#输入red 然后按Tab 键 就能收到 名字中包含red的文件夹


3.安全性能下的启动redis ,在redis.conf中,更改默认端口,添加密码,开启安全模式


#手动创建redis的配置文件
touch s17redis.conf
#s17redis.conf 内容如下
[root@master redis-4.0.10]# cat s17redis.conf
bind 0.0.0.0
protected-mode yes
port 6888
daemonize yes
requirepass alexdsb


4.启动redis服务端,指定配置文件

redis-server s17redis.conf # 启动服务端

netstat -tunlp|grep redis #查看进程 端口号
ps -ef|grep redis # 查看 端口号


5.测试访问redis服务端
redis-cli -p 6888 # 在redis-4.0.10]# 输入
进入之后,可以通过auth指令,进行redis密码验证
验证通过后,可以发送ping,得到pong代表redis正常

 

------------------------------------------------------
(PS:知识点补充)
过滤出 空白行,以及注释行意外的,有用信息
grep -v "^#" redis.conf | grep -v "^$"
grep -v "^#" redis.conf| grep -v "^$" # -v 是反转的意思 '^#'是匹配以#号开头的 -v "^#" 就是匹配不以#开头的
#二次过滤 grep "^$" 过滤出空白的 -v "^$" 就是过滤出不是空白的
---------------------------------------------------

 

学习redis常用命令

set key value #设置一个键值对
get key #获取key的值
keys * 查看所有key
type key 查看key类型
expire key seconds 过期时间 # rxpire addr 20
ttl key 查看key过期剩余时间 -2表示key已经不存在了
persist key 取消key的过期时间 -1表示key存在,没有过期时间

exists key 判断key存在 存在返回1 否则0
del keys 删除key 可以删除多个
dbsize 计算key的数量

mget 键1 键2 键3 #获取多个value

 

redis的哈希结构 ,如同python字典套字典

hmset new:2 title "tian qi yu bao" content "tian qi bu cuo" redian "jiaodain fangtan "

 


模拟电台 广播

需要开3个客户端 然后进行收发
redis-cli -a alexdsb -p 6888
redis-cli -a alexdsb -p 6888
redis-cli -a alexdsb -p 6888

SUBSCRIBE xiaolili 收 频道收 # xiaolili 是自定义频道名

PUBLISH xiaolili 发 电台发 # 发给xiaolili

原文地址:https://www.cnblogs.com/yuchen1301152/p/10549530.html