Redis复制
1、現(xiàn)在有兩個redis,172.16.2.16為master,10.65.200.202為salve
2、在slave端修改配置項 salveof,如下:slaveof 172.16.2.16 6379
3、在這種情況下,master端的修改,會同步到slave端。
4、但是slave端不能執(zhí)行寫操作,如下:127.0.0.1:6379> get name"andy"127.0.0.1:6379> set name bill(error) READONLY You can't write against a read only slave.原因是:如果slave可以寫操作,就會導(dǎo)致主從數(shù)據(jù)不一致。因此,默認(rèn)配置slave只能讀操作。
5、當(dāng)然,也可以配置寫操作,如下:slave-read-only no但是,slave端的修改,不會同步到master端。
6、mysql是支持主主復(fù)制的,也就是兩個設(shè)備互為主從。如果把兩個redis設(shè)置為互為主從,行不行?目前的redis版本不支持互為主從。如果兩個redis配置成互為主從,redis服務(wù)報錯,如下:Master does not support PSYNC or is in error state (reply: -ERR Can't SYNC while not connected with my master)
7、也就是說,redis要實現(xiàn)主主復(fù)制,需要應(yīng)用層管理。A僅僅作為master,B設(shè)置為A的salve。在某個條件下,B不再作為A的slave,僅僅設(shè)置為master,同時A設(shè)置為B的slave。注意:這里redis主主復(fù)制是指任一時刻只有一個方向的復(fù)制,并不是完全意義的主主復(fù)制,完全意義的主主復(fù)制是同時兩個方向。
總結(jié)
- 上一篇: ASP操作Excel技术总结
- 下一篇: ASP.NET 4.0 的新特性(2 在