知识点

相关文章

更多

最近更新

更多

redis从库只读设置-redis集群管理

2019-03-18 23:44|来源: 网路

默认情况下redis数据库充当slave角色时是只读的不能进行写操作,如果写入,会提示以下错误:READONLY You can't write against a read only slave.

127.0.0.1:6382> set k3 111

(error) READONLY You can't write against a read only slave.


如果你要开启从库也只能写操作,则修改配置文件的slave-read-only为no

# Since Redis 2.6 by default slaves are read-only.

#

# Note: read only slaves are not designed to be exposed to untrusted clients

# on the internet. It's just a protection layer against misuse of the instance.

# Still a read only slave exports by default all the administrative commands

# such as CONFIG, DEBUG, and so forth. To a limited extent you can improve

# security of read only slaves using 'rename-command' to shadow all the

# administrative / dangerous commands.

slave-read-only no


redis知识点

redis快速入门

reids常用命令

redis数据结构

java_API_客户端

Jedis

Tlcache

redis_持久化

AOF

RDB

发布订阅(pub/sub)

redis_事件

redis事务

redis通讯协议

RESP(Redis Serialization Protocol)

redis高可用

redis哨兵

监控(Monitoring) 提醒(Notification) 自动故障迁移(Automatic failover)

redis主从复制

  • 复制模式

    1. 主从复制
    2. 从从复制
  • 复制过程

    • slave向master发送sync命令;
    • master开启子进程执行bgsave写入rdb文件;
    • master发送缓存和RDB文件给slave;
    • master发送数据发送给slave完成复制;

redis集群(Redis_Cluster)

相关问答

更多
  • 用的是什么集群方式,JedisSentinelPool 还是ShardedJedisPool。 如果用的是前者,配置是需要连接sentinel端口的(默认26379),不是连接redis端口(6379)。 或者把spring相关配置文件贴出来一下。 127.0.0.1:26379 127.0.0.1:26380 127.0.0.1:26381
  • 用的是什么集群方式,JedisSentinelPool 还是ShardedJedisPool。 如果用的是前者,配置是需要连接sentinel端口的(默认26379),不是连接redis端口(6379)。 或者把spring相关配置文件贴出来一下。
    将src下的可执行命令全部移动到/usr/local/redis/bin/目录下,执行该命令:mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-dump redis-cli redis-sentinel redis-server /usr/local/redis/bin,然后将配置文件移动到/usr/local/redis/etc/目录下,执行该命令:mv redis.conf /usr/local/redis/etc/。
  • Python使用引用计数器机制来处理对象,因此在块的末尾,my_server对象将自动销毁并关闭连接。 你不需要明确地关闭它。 现在这不是你应该如何管理Redis连接。 每个操作的连接/断开过于昂贵,所以维护连接打开要好得多。 使用redis-py可以通过声明一个连接池来完成: import redis POOL = redis.ConnectionPool(host='10.0.0.1', port=6379, db=0) def getVariable(variable_name): my_ ...
  • 正如你在这里看到的,redis现在支持自动分区。 As you can see here, redis supports now automatic partitioning.
  • 您可以通过多种不同的方式使用Redis作为权威性商店: 打开AOF (仅追加文件存储) 请参阅AOF文档 。 这将保留对您的数据集实时执行的所有Redis命令的日志。 使用Master-Slave复制运行Redis, 请参阅复制文档 。 这将允许您提供高可用性,如果您的一个实例失败。 如果您运行在像EC2这样的东西上,您可以EBS返回您的Redis分区,以提供另一层防范实例故障。 Redis集群 - 在这里,这是专门设计为运行Redis的一种方式,可以帮助HA和可扩展性。 但是,至少还有六个月左右的时间。 ...
  • 正如您所说,您在Redis群集中使用了3个主节点,因此可以清楚地看到,如果其中一个节点将关闭,那么您将收到CLUSTERDOWN错误。 为了避免这些类型的错误并获得高可用性,最好将从属服务器附加到主节点(如此处的官方Redis群集教程中所示)。 有一个理由让奴隶与你的主人联系以获得更高的可用性。 为此,您可以阅读上面Redis群集教程链接中提到的这些行。 Redis集群中有16384个散列槽,为了计算给定密钥的散列槽,我们只需采用密钥模数16384的CRC16。 Redis群集中的每个节点都负责散列槽的子集 ...
  • JedisCluster没有实现Transaction和Pipeline,因为它很难实现。 Redis可以在群集模式下发送MOVED或ASK,这意味着我们应该在节点之间移动插槽。 我正在考虑JedisCluster的管道模式,但没有进行进一步的研究。 https://groups.google.com/d/msg/jedis_redis/u6j8slokO3E/Dh5Q94TRjJUJ 目前,Jedis团队正致力于为JedisCluster稳定/提供更多API。 JedisCluster didn't im ...
  • Redis Sentinel是额外的Redis进程,用于监视Redis主站/从站的运行状况,并在检测到主实例已关闭时负责执行自动故障转移。 Redis Config项目提供了一种快速设置流行的Redis Sentinel配置的方法。 ServiceStack.Redis客户端支持Redis Sentinel并实现推荐客户端策略 ,这使其能够在故障转移后通过向Sentinels中的一个要求连接下一个可用地址来自动恢复,从而恢复与其中一个可用实例的操作。 您可以在官方文档中了解有关Redis Sentinel的 ...