草庐IT

Telegram-master

全部标签

redis - 如何在sentinel配置中切换redis master

我有一个redis哨兵配置,其中有一个主站、两个从站和3个哨兵正在运行。我注意到,在某些时候,哨兵可能会切换主人,选择其中一个奴隶作为主人。这导致作为独立客户端连接到主节点的应用程序出现问题(我正在努力更改代码以使用哨兵)。我想知道是否可以通过连接到哨兵客户端来切换主服务器,即通过“redis-cli”有人可以告诉我是否有可以用来切换主IP的命令吗? 最佳答案 客户端应用程序应该使用支持sentinel的客户端库,以防redismaster宕机并且sentinel选择新的master。如果您的客户端应用程序没有利用它,不确定设置哨兵

Redis master 在 docker 环境中成为另一个 master 的奴隶

我已经配置了一主两从的redis-sentinel让我们将这三台机器的设置称为一个集群。我有很多集群在很多docker容器上运行。在运行时,我在redis.conf文件和sentinal.conf文件中管理IP。我的问题是;cluster-1上的主节点以某种方式成为cluster-2主节点的从节点。在Cluster-1主节点上,我终止了redis和哨兵服务,删除了slaveof6379然后使用编辑后的​​conf文件重新启动redis服务。当我启动redis服务的那一刻,它再次成为cluster-2masterredis的slave。我在redis-cli中尝试了slaveofnoon

redis - 如何暂停redis slave暂时从master更新?

我想进行一个需要快照隔离(无更新)的查询(多次调用)。有没有办法暂时暂停一个奴隶从主人那里更新自己,这样我就可以运行查询了? 最佳答案 您可以使用SLAVEOFNOONE命令关闭复制。完成快照后,使用SLAVEOFmaster-hostmaster-port从主服务器重新同步。 关于redis-如何暂停redisslave暂时从master更新?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/que

redis - 了解 SLAVEOF 命令以将 redis slave 更改为 master

我想将我的redisslave更改为master,所以我阅读了SLAVEOF.但我不明白这一行:“SLAVEOFNOONE的形式将停止复制,将服务器变成一个MASTER,但不会丢弃复制" 最佳答案 相信下面的编辑会帮助你理解:TheformSLAVEOFNOONEwillstopreplication,turningtheserverintoaMASTER,butwillnotdiscardthereplicateddata 关于redis-了解SLAVEOF命令以将redisslave

redis - 在 Redis 中选出新的 master 之前数据会发生什么变化?

在redis主从架构中,当一个master出现故障时,一个slave会被提升为master。由于只有master可以进行写操作,所以在slave提升为master的窗口期数据会发生什么变化。我的系统是否仍然没有响应? 最佳答案 定义“数据”:)与主服务器的客户端连接将在失败时关闭,因此您的系统将收到通知。因此,在故障发生之前未写入主服务器和副本的任何数据仍将驻留在您的应用程序/系统中。一旦您的系统尝试使用一个副本,它将能够读取其中的数据,直到它在失败之前被同步。一旦副本被提升为masterhood,您的系统将能够继续写入数据。注意R

redis - [REDIS] : How to Delete All Keys on Master and Slave(s)?

我正在尝试删除redis主服务器和从服务器上的所有键,但是当我执行flushall时或flushdb来自redis-cli在master上,它只删除master上的key,反之亦然,如果我在slave上删除key,它只删除slave上的key。我应该使用什么命令来删除主从上的所有key?我需要为此启用集群支持吗?因为现在它在我的设置中被禁用了。还有一个问题,为什么在使用flushall的情况下没有复制?或flushdb来自redis-cli? 最佳答案 你只需要在每个master上调用FLUSHALL或FLUSHDB来删除所有key

redis - 在 redis sentinel 客户端中复活 master 的问题

我开始在设置了主从设置的Redis上工作。master和slave设置在同一台机器上,但端口不同。为了处理主/从故障转移,redis似乎有哨兵。我正在尝试实现哨兵。我的Master的redis.conf:bind127.0.0.1(localMachine)Port6379我的Slave的redis1.conf:bind127.0.0.1port6380slaveof127.0.0.16379我的sentinel.conf有:sentinelmonitormymaster127.0.0.163791sentineldown-after-millisecondsmymaster30000

Redis 集群 : Replace failing master that has no slave without downtime

我正在研究使用RedisCluster(Redis4.0)。我有一个包含5个主节点的集群,每个节点都有一个副本。我们可以分别调用每个主机A、B、C、D、E,每个从机A1、B1、C1、D1、E1。举例来说,一个节点填满了它的内存并导致主节点B和从节点B1都失败。有什么方法可以从这种状态中恢复吗?理想情况下,我希望能够启动一个新节点,用B的RDB备份加载它,将其加入集群,然后将B的插槽重新分配给替换节点,而无需将其余的集群宕机。我似乎无法弄清楚如何完成此任务。可能吗? 最佳答案 您可以做的一件事是在不同节点上创建比主节点更多的副本。在上

mongodb - 引发"AutoReconnect: master has changed"但所有最近的replset日志都正常

我的mongoDB版本是2.2.0,pymongo版本是2.3我使用以下APIconn=Connection('mongodb://xxxx:yyyy@aaa.bbb.ccc.ddd:27017,eee.fff.ggg.hhh:27017,iii.jjj.kkk.lll:27017',replicaSet='myset',max_pool_size=20,auto_start_request=False)按如下方式连接并获取集合collection=conn["myDB"]["myCollection"]但是当我迭代一些查询结果时cursor=collection.find({"key

mysql - rails : How to split write/read query across master/slave database

我的网站有非常大的阅读流量。比写流量重很多。为了提高我网站的性能,我考虑过使用ma​​ster/slave数据库配置。octupusgem似乎提供了我想要的东西,但由于我的应用程序很大,我无法通过数百万行源代码来更改查询分布(将读取查询发送到从属服务器并将查询写入主服务器)。MySQLProxy似乎是解决此问题的好方法,但由于它处于alpha版本,我不想使用它。所以我的问题是跨主/从服务器拆分读/写查询的最佳方法是什么?是否可以在不使用rails中的任何gem的情况下拆分读/写查询? 最佳答案 我刺出了2颗gem,Octopus和玛