实验环境
- 主库:192.168.2.108:3306/kyg
- 从库1:192.168.2.113:3306/kyg
- 从库2:192.168.2.103:3306/kyg
实验目的
- 写数据时使用主库
- 读数据时使用从库
实现方案
使用MySQL自身提供的一个驱动com.mysql.jdbc.ReplicationDriver
来实现读写分离。
如果一个方法是只读的,那么ReplicationDriver就会为你选择从库读取数据,反之就会选择主库进行读写。
可以结合SpringAop配置事物的读写:
1 | <tx:advice id="transactionAdvice" transaction-manager="transactionManager"> |
jdbc的配置:
1 | blog.jdbc.driver = com.mysql.jdbc.Driver |