1月 2021

mariadb基于GTID 主从复制搭建

Mariadb Myql 基于GTID的同步很好地解决了主从切换时的日志定位问题,使我们无需再通过master_log_file和master_log_pos去定位复制起点。GTID即Global Transaction ID,全局事务ID,它是MySQL5.6版本出现的一种由特定标识组成的字符串。

EF Core如何实现读写分离

EF Core如何通过代码实现读写分离,我们可以搜索到很多案例。总结起来一种方法是注册一个DbContextFactory,读操作注入ReadDcontext,写操作注入WriteDbcontext;另外一种是动态修改数据库连接串。以上无论哪种方法,实现简单粗暴的读写分离功能也不复杂。但是如果需要实现从库状态监测(从库宕机)、主备自动切换(主库宕机)、从库灵活的负载均衡配置、耗时查询的SQL路由到指定的从库、指定一些表不需要读写分离(如:基础数据表)等等……