草庐IT

java - redis如何dump到多个文件而不是一个文件?

您好,请教您两个问题。(我用的是java和jedis)我想写2G的数据到redis,怎样才能写的更快?redis是否将数据转储到多个文件,而不仅仅是dump.rdb?比如数据太大,4G,会转储到dump.rdb和dump2.rdb中吗? 最佳答案 您可以通过使用可变参数命令(例如MSET)和/或使用流水线(由Jedis支持)聚合到Redis实例的往返,从而更快地将数据导入Redis。往返次数越少,导入速度越快。另一个好的做法是在导入操作期间停用AOF(如果它被激活)和后台RDB转储(如果它被激活)(并在之后重新激活它们)。Redis

从 dump.rdb 加载后删除所有键的 Redis 服务器

我在本地有我的redis服务器,当我使用dump.rdbbgsave复制这些内容并将其放入我的另一台机器时。一切正常,但在一些不活动之后,我的key不断被删除,我最终得到了433KB的转储文件和我的转储文件被替换。我做错了什么?我在本地有3.0.3,在我的另一台机器上有2.8.4。我正在按照此[链接][1]中的步骤操作。我无法弄清楚这个问题。我检查了服务器日志,没有错误,只有每900,300秒的那些bgsaves。请帮助我 最佳答案 最常见的原因可能是您的Redis实例对公共(public)网络开放,并且未使用密码身份验证-破解者可

ruby-on-rails - Redis在/tmp中创建dump.rdb

使用redis和sidekiq进行后台处理,并从不同的服务器而不是运行sidekiq的地方在sidekiq上创建作业。dir用于redis数据设置为/var/lib/redis,redis最初指向该目录。但不知何故,dir被设置为/tmp。现在,dump.rdb正在/tmp中创建,它会随时重置并且数据会丢失。redis.conf的一些配置如下:daemonizeyespidfile/var/run/redis/redis-server.pidport6379logfile/var/log/redis/redis-server.logdatabases16save30010dir/var

python Redis : DUMP payload version or checksum are wrong

我正在尝试将所有key从一个redis数据库复制到我的本地计算机。在建立两个连接并在本地副本上调用flushdb以清除所有key后,我运行以下命令:forkeyinsrc.keys('*'):ttl=src.ttl(key)#HandleTTLcommandreturning-1(noexpire)or-2(nokey)ifttl一些key已正确恢复,但在某些时候我遇到了redis.exceptions.ResponseError:DUMPpayloadversionorchecksumarewrong知道如何解决这个问题吗? 最佳答案

linux - 尝试使用 dump.rdb 文件启动 redis 时出现问题

我试图在Linux上使用dump.rdb文件启动Redis,但出现核心错误。但是,当我使用相同的文件在Windows上启动时,它运行完美。此外,如果我尝试使用较小的文件在这台Linux机器上启动,它似乎可以启动。会不会是内存问题?谢谢!保护 最佳答案 我之前遇到过类似的问题,原因是用户“redis”在“dump.rdb”文件夹中没有写权限。bgsave是redis中默认的数据备份到磁盘的方式。所以我在redis.cli中运行代码“configsetstop-writes-on-bgsave-errorno”,问题得到解决。此外,您还

ruby-on-rails - 打开 dump.rdb 时 Redis 权限被拒绝

我在dockers上使用带有sidekiq的官方redis图像。redis图片的yml配置如下:redis:build:.dockerfile:Dockerfile-redisports:-'6379:6379'volumes:-'redis:/var/lib/redis'sidekiq:build:.command:bundleexecsidekiqlinks:-db-redisvolumes:-.:/appenv_file:-.env以下是我的Dockerfile-redis的代码:FROMredisCOPYredis.conf/usr/local/etc/redis/redis.

postgresql 对外部表 pg_redis_fdw 的权限被拒绝

我正在使用来自postgres的pg_rdeis_fdw。当我尝试从postgres帐户向现有模式插入记录时,一切正常。但是,当我尝试从另一个用户那里做同样的事情时,我得到“关系被拒绝的权限”,虽然我给了用户以下权限:grantallonFOREIGNDATAWRAPPERredis_fdwtoami;grantallonFOREIGNSERVERredis_servertoami;grantallonALLTABLESINSCHEMApublictoami;GRANTALLPRIVILEGESONTABLEuser_redis_hashtoami;定义如下(正如我所说,用户postg

redis - 两台redis-server共享同一个dump.rdb文件的陷阱

我需要澄清一个概念。我有两个在单个VM上运行的Redis服务器。服务器#1通过TCP连接,服务器#2通过UNIX套接字连接。我也正处于将TCP服务器转换为UNIX的风口浪尖。第一个实例的conf文件指定以下位置来保存DB转储:/var/lib/redis/dump.rdb。第二个实例的conf文件也指定了完全相同的位置和文件。这是否意味着保存的数据库文件包含两个redis服务器的数据?我需要确保这种特殊情况不会让我在重新启动服务器时丢失数据。作为初学者,我真的很想听听专家的意见。提前致谢。 最佳答案 不是,这意味着一台服务器覆盖了另

kubernetes - Redis 似乎在启动时删除了 dump.rdb。使用 Kubernetes PVC 和 KubeDB。为什么会这样?

我们正在使用KubeDB在我们的集群中管理我们的数据库。所以Redis是通过KubeDBRedisobject部署的KubeDB将PVC附加到Redispod。不幸的是,KubeDB不支持Redis转储的任何恢复或备份(目前)。对于备份,我们的解决方案是运行一个CronJob,它将dump.rdb从Redispod复制到作业pod,然后将其上传到S3。为了恢复转储,我想做同样的事情,只是反过来。有一个临时pod下载S3备份,然后将其复制到Redispod到dump.rdb位置。redis.conf如下所示:....#ThefilenamewheretodumptheDBdbfilena

Redis 不再更新 dump.rdb

过去10个月我一直在Windows服务器上使用Redis,没有任何问题,但今天早上我检查了我的网站,发现它完全是空的!!!经过几分钟的调查,我意识到Redis数据库是空的???幸运的是,我使用Redis作为缓存解决方案,所以我仍然拥有MSSQL数据库中的所有数据,并且我已经设法恢复了我网站的内容。但是我发现redis已经停止保存数据到dump.rdb中了。上次文件更新时间为2015年11月11日11:35。Redis配置文件已设置save9001save30010save6010000并且通过今天早上从MSSQL重新加载所有内容,我有超过15.000次写入。所以应该更新文件,对吧?我运