redis-cli

玩转Redis-生产环境如何导入、导出及删除大量数据

十年热恋 提交于 2020-11-09 14:03:17
  《玩转Redis》系列文章主要讲述Redis的基础及中高级应用。本文是《玩转Redis》系列第【13】篇,最新系列文章请前往 公众号“zxiaofan”(点我点我) 查看,或 百度搜索“玩转Redis zxiaofan” 即可。 本文关键字: 玩转Redis、Redis数据导入、Redis大量插入、Redis数据导出、Redis导出指定通配符、Redis数据删除、Redis批量删除、Redis删除指定前缀key、Redis删除指定通配符key; 往期精选: 《玩转Redis-删除了两百万key,为什么内存依旧未释放?》 大纲 Redis生产环境安全高效导入大量数据 使用shell脚本构造测试数据 Redis非集群模式导入大量数据 Redis集群模式导入大量数据 Redis生产环境安全高效导出大量数据 Redis导入导出所有数据 Redis导出指定前缀(指定通配符)数据 Redis生产环境安全高效删除数据 Redis删除已知的指定key Redis删除指定前缀(指定通配符)数据 实用小技巧 Redis统计指定通配符key的数量 免输密码连接Redis脚本 思考题:Linux可以设置脚本可执行但不可读吗 概述:   本文将模拟生产环境,构造大量测试数据,并完成高效安全的数据导入、数据导出、数据删除。   众所周知,Redis是单线程的,一旦一个命令发生长时间阻塞

手写一个 Redis 客户端,So easy~

天大地大妈咪最大 提交于 2020-11-09 09:54:55
前言 这篇文章很简单,就是写一个 Java 版本的 Redis Client,而且不是一个生产级别的项目,只是一个验证类型的 demo。用于了解 “ 实现一个 Redis Client ” 需要注意哪些事情。 思考 首先,Redis 是一个服务器,有 ip,有端口,那么,我们就可以用 Java 的 Socket 来和他交互,也可以用 telnet 来交互。说白了,就是一个 TCP 服务器,只要打开了 TCP 通道,然后进行一次连接 3 次握手,建立起全双工通道,就能够互相发送数据。 从我们之前的编程经验中,我知道,和一个服务器交互,通常是需要协议的,例如 HTTP 服务器,你需要 HTTP 协议,和 Dubbo 交互,你需要了解 Dubbo 协议,当然,这些都是建立在 TCP 协议之上的。那么,Redis 大概也是有协议的,我们后面再看。 动手 思考了上面的两点,我们可以尝试动手。 我们可以先用 telnet 访问以下本地的 Redis Server,例如 : telnet 127.0.0.1 6379 ,如下: ➜ master telnet 127.0.0.1 6379 Trying 127.0.0.1... Connected to localhost. Escape character is '^\]'. set baby hello +OK get baby $5

Redis进阶实践之十六 Redis大批量增加数据

佐手、 提交于 2020-11-08 18:22:15
一、介绍 有时候,Redis实例需要在很短的时间内加载大量先前存在或用户生成的数据,以便尽可能快地创建数百万个键。这就是所谓的批量插入,本文档的目标是提供有关如何以尽可能快的速度向Redis提供数据的信息。如果想查看英文原文,地址如下: https://redis.io/topics/mass-insert 二、操作详解 话不多说,直接进入主题了。 1、使用协议,卢克(Use the protocol, Luke) 使用普通Redis客户端的方式执行批量插入的操作并不是一个很好的办法,原因如下:发送一个命令的方式很慢,因为您必须为每个命令都会有往返的时间消耗。虽然可以使用管道模式来操作,但为了批量插入多条记录,您需要在读取回复的同时编写新命令,以确保尽可能快地插入。 另外,只有一小部分客户端支持非阻塞 I/O 操作,而且并不是所有的客户端都能够以最大化吞吐量这种有效的方式来解析这些回复。 由于以上这些原因,将大量数据导入Redis的首选方式是生成包含Redis协议的文本文件(原始格式),以便调用插入所需数据所需的命令。 例如,如果我需要生成一个大型数据集,其中包含数十亿个键:“keyN - > ValueN”,我将创建一个包含如下Redis协议格式的命令的文件: SET Key0 Value0 SET Key1 Value1 ... SET KeyN ValueN 一旦创建了该文件

redis(十七):Redis 安装,部署(WINDOWS环境下)

社会主义新天地 提交于 2020-11-08 18:21:48
1、下载Redis安装文件, 我选择的是 3.0.504 版本,有zip或msi可供下载。 2.解压缩后,打开安装目录 双击redis-server.exe启动redis服务器,双击redis-cli.exe打开redis客户端。或者执行命令行redis-server redis.windows.conf。 redis的常用命令,使用命令进行安装和注册redis到window服务。 安装命令:redis-server.exe --service-install redis.windows.conf --loglevel verbose 启动服务命令:redis-server.exe --service-start 关闭服务命令:redis-server.exe --service-stop 注册redis到window服务命令:redis-server --service-install redis.windows-service.conf --loglevel verbose 3、看到上图就表示redis服务启动成功。接下来将redis添加到windows服务,避免关闭命令行窗口服务停止。执行添加命令:redis-server --service-install redis.windows-service.conf --loglevel verbose。输入命令没有报错

Redis入门指南(附网盘下载链接)

若如初见. 提交于 2020-11-07 15:39:47
https://pan.baidu.com/s/1SMHpPN6YdGHoxpArUd0f7Q#list/path=%2F 提取码:4lcx Redis如今已经成为Web开发社区中最火热的内存数据库之一,而它的诞生距现在不过才4年。随着Web 2.0的蓬勃发展,网站数据快速增长,对高性能读写的需求也越来越多,再加上半结构化的数据比重逐渐变大,人们对早已被铺天盖地地运用着的关系数据库能否适应现今的存储需求产生了疑问。而Redis的迅猛发展,为这个领域注入了全新的思维。 Redis 凭借其全面的功能得到越来越多的公司的青睐,从初创企业到新浪微博这样拥有着几百台Redis服务器的大公司,都能看到Redis的身影。Redis也是一个名副其实的多面手,无论是存储、队列还是缓存系统,都有它的用武之地。 本书将从Redis的历史讲起,结合基础与实践,带领读者一步步进入Redis的世界。 目标读者 本书假定读者是Redis的新手,甚至可能连Redis是什么都没听说过。本书将会详细地介绍Redis是什么以及为什么要使用Redis,旨在能够让读者从零开始逐步晋升为一个优秀的Redis开发者。 本书还包含了很多Redis实践方面的知识,对于有经验的Redis开发者,大可以直接跳过已经掌握的内容,只阅读感兴趣的部分。每章的引言都简要介绍了本章要讲解的内容,供读者参考。

redis主从+keepalived实现高可用技术

懵懂的女人 提交于 2020-11-03 16:24:01
Redis是我们当下比较流行使用的非关系数据库,可支持多样化的数据类型,多线程高并发支持,redis运行在内存拥有更快的读写。因为redis的表现如此出色,如何能保障redis在运行中能够应对宕机故障, 所以今天总结了下redis主从高可用的搭建,参考了网上一些大神的博客文章,发现很多都是有坑的,所以本人在此分享一次,希望能帮助到大家。 Redis特点 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。 Redis 与其他 key - value 缓存产品有以下三个特点: Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。 Redis不仅仅支持简单的key-value类型的数据,同时还提供如:字符串(String), 哈希(Map), 列表(list), 集合(sets) 和有序集合(sorted sets)等数据结构的存储。 Redis支持数据的备份,即master-slave模式的数据备份。 Redis 优势 性能极高 – Redis能读的速度是100K+次/s,写的速度是80K+次/s 。 丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。 原子 – Redis的所有操作都是原子性的

Redis主从+KeepAlived实现高可用

做~自己de王妃 提交于 2020-11-03 15:51:21
Redis是我们当下比较流行使用的非关系数据库,可支持多样化的数据类型,多线程高并发支持,redis运行在内存拥有更快的读写。因为redis的表现如此出色,如何能保障redis在运行中能够应对宕机故障, 所以今天总结了下redis主从高可用的搭建,参考了网上一些大神的博客文章,发现很多都是有坑的,所以本人在此分享一次,希望能帮助到大家。 Redis特点 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。 Redis 与其他 key - value 缓存产品有以下三个特点: Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。 Redis不仅仅支持简单的key-value类型的数据,同时还提供如:字符串(String), 哈希(Map), 列表(list), 集合(sets) 和有序集合(sorted sets)等数据结构的存储。 Redis支持数据的备份,即master-slave模式的数据备份。 Redis 优势 性能极高 – Redis能读的速度是100K+次/s,写的速度是80K+次/s 。 丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。 原子 – Redis的所有操作都是原子性的

Redis集群教程

瘦欲@ 提交于 2020-10-29 16:57:12
Redis集群教程 本文档是对Redis Cluster的简要介绍,其中没有使用难以理解的分布式系统概念。 它提供了有关如何设置集群,测试和操作集群的说明,而没有涉及Redis集群规范中涵盖的细节,而只是从用户的角度描述了系统的行为。 但是,本教程尝试从最终用户的角度提供有关Redis Cluster的可用性和一致性特征的信息,并以一种易于理解的方式进行陈述。 请注意,本教程需要Redis 3.0或更高版本。 如果您打算运行认真的Redis Cluster部署,则建议您阅读更为正式的规范,即使并非严格要求也是如此。 但是,最好从本文档开始,与Redis Cluster一起玩一些时间,然后再阅读规范。 Redis集群101 Redis Cluster提供了一种运行Redis安装的方法,在该安装中,数据会在多个Redis节点之间自动分片。 Redis Cluster在分区期间还提供了一定程度的可用性,这实际上就是在某些节点出现故障或无法通信时继续操作的能力。 但是,如果发生较大故障(例如,大多数主服务器不可用时),群集将停止运行。 因此,实际上,Redis Cluster能带来什么? 自动在多个节点之间拆分数据集的能力。 当一部分节点出现故障或无法与其余群集通信时,可以继续操作。 Redis群集TCP端口 每个Redis群集节点都需要打开两个TCP连接。用于服务客户端的常规Redis

CentOS7 linux安装redis

自古美人都是妖i 提交于 2020-10-29 13:30:31
解压命令:tar zxvf redis-4.0.8.tar.gz 进入目录: cd redis-4.0.8 在redis-4.0.8 目录中执行:make命令。 执行命令:yum install gcc-c++ 安装gcc 安装成功后执行 make命令 如果报错 先执行 make distclean命令 再执行make命令 ,成功之后显示如下界面 查看 gcc 版本 执行命令:make install 进入bin目录:cd /usr/local/bin 在主系统下执行命令:mkdir myredis ,创建文件夹:myredis 复制redis-4.0.8 目录下的redis.conf到myredis目录下。 执行命令:cp redis.conf /myredis/ 编辑redis.conf文本 把no换成yes,delete 删除, s 插入, esc 退出插入 ,保存修改内容 :wq 切换到bin目录下,启动redis服务:redis-server /myredis/redis.conf 成功启动 关闭终端再启动终端 输入下面命令,开放6379端口 firewall-cmd --zone=public --add-port=6379/tcp --permanent firewall-cmd --reload 设置端口号:redis-cli -p 6379

docker镜像创建redis5.0.3容器集群

僤鯓⒐⒋嵵緔 提交于 2020-10-28 06:33:28
拉取redis5.0.3镜像 # docker pull daocloud.io/library/redis:5.0.3 [root@localhost ~]# docker pull daocloud.io/library/redis: 5.0 . 3 5.0 . 3 : Pulling from library/ redis 5e6ec7f28fb7: Pull complete 7fdf7fb3ec49: Pull complete 4bd5dbe7bfa7: Pull complete 71f540684935: Pull complete 8c6dbecedd0f: Pull complete 9d190b6684fc: Pull complete Digest: sha256:e1dc07bf1465661b90b18c1c766c00f733254bf64fcf2ad7a335b2fc1fa31870 Status: Downloaded newer image for daocloud.io/library/redis: 5.0 . 3 [root@localhost ~ ]# [root@localhost ~ ]# docker images centos latest 9f38484d220f 2 weeks ago 202MB daocloud.io