1. Home
  2. Docs
  3. redis

redis

基础

REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。

Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

Redis 与其他 key – value 缓存产品有以下三个特点:

  • Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
  • Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
  • Redis支持数据的备份,即master-slave模式的数据备份。

更多>>reids中文简介

数据类型

类型 描述 类型 描述
string 字符串 hash 哈希
list 列表 set 集合
zset sorted set 有序列表

命令操作

自增: INCR [key]

read

获取自增值: get [key]获取所有的key: keys <em></em> eg: keys imf:模式: ? * [] 更多>>取出值: get [key_name]值类型: type [key_name]hash取值字段值: hget [key] [字段] eg:hget imf:1 uid

create

update

更新值: set [key_name] [val]

delete

删除值: del [key_name]清空数据: flushall

更多>> 常用 | 官方全部 | laravel

cmd 中用 set zz 中文 get 会出现乱码

如何在get时取到它的中文呢?只需要在redis-cli 后面加上 –raw

redis配置密码

通过配置文件进行配置: yum方式安装的redis配置文件通常在/etc/redis.conf中,打开配置文件找到

#requirepass foobared

去掉行前的注释,并修改密码为所需的密码,保存文件

requirepass myRedis

重启redis: sudo service redis restart

或者

sudo service redis stop sudo redis-server /etc/redis.conf 这个时候尝试登录redis,发现可以登上,但是执行具体命令是提示操作不允许

redis-cli -h 127.0.0.1 -p 6379
redis 127.0.0.1:6379>
redis 127.0.0.1:6379> keys *
(error) ERR operation not permitted
redis 127.0.0.1:6379> select 1
(error) ERR operation not permitted
redis 127.0.0.1:6379[1]>

尝试用密码登录并执行具体的命令看到可以成功执行

redis-cli -h 127.0.0.1 -p 6379 -a myRedis
redis 127.0.0.1:6379> keys *
1) “myset”
2) “mysortset”
redis 127.0.0.1:6379> select 1
OK
redis 127.0.0.1:6379[1]> config get requirepass
1) “requirepass”
2) “myRedis”

更多>>>redis配置认证密码

如何在windows下开机自启

将CMD运行启用的命令,写到BAT文件中, 然后把这个BAT文件放到系统“启动”的文件夹中。

查阅资料

redis官网菜鸟教程-中文redis手册laravel-redis方法 概要: src/ClientInterface.phpphp-redis做mysql的缓存,怎么异步redis同步到mysql数据库 概要: 讨论里的思路不错. Redis缓存数据提高访问性能并同步到mysql永久保存 概要: Linux的contrab定时任务机制. 已有同步基本概念. Redis可以用来做数据库吗怎么将关系型数据库转移到kv数据库-表设计 概要: redis中对应关系数据库中增加数据 redis实现关系型数据库表设计 概要: redis中的自增

FAQ

一个网站有1亿个用户, 现在要统计一周内连续登录的用户?

使用位图法实现简单统计

思维导图 by google

Articles

Was this article helpful to you? Yes No

How can we help?