如何在故障转移方案中使用jdbc:mysql:loadbalance?

时间:2019-02-07 04:31:32

标签: mysql

我在Java程序中使用下面的jdbc网址,并尝试连接到master进行插入:

Connection con=DriverManager.getConnection("jdbc:mysql:loadbalance://a:3306,b:3306,c:3306/mydb","user1","password1");

Statement stmt=con.createStatement();

stmt.executeUpdate("insert into repl_test values ('Ram');");

在这里,a和b是InnoDB集群中的从属设备,而c是主设备。我收到以下错误:

  

java.sql.SQLException:MySQL服务器正在使用--read-only选项运行,因此它无法执行此语句

但是在添加?loadBalanceConnectionGroup=first之后,它会间歇性地进入主服务器:

连接con=DriverManager.getConnection("jdbc:mysql:loadbalance://a:3306,b:3306,c:3306/mydb?loadBalanceConnectionGroup=first","user1","password1");

为什么写入请求不会自动发送到主服务器?我该如何实现?

0 个答案:

没有答案