MySQL Connector/J实际上就是大家常用的Java的MySQL驱动Jar,除了简单的JDBC功能外还提供了连接切换功能,并且Fabric的功能也包含在MySQL Connector/J中。
Mysql Connector Jar支持FailOver主备模式,直接修改程序的MySQL连接字符串即可实现主备切换
jdbc:mysql://[primary host][:port],[secondary host 1][:port][,[secondary host 2][:port]]...[/[database]]»
[?propertyName1=propertyValue1[&propertyName2=propertyValue2]...]
示例:
jdbc:mysql://192.168.234.111:3306,192.168.234.112:3306/cgbt?failOverReadOnly=false&secondsBeforeRetryMaster=0&queriesBeforeRetryMaster=0
需要将数据库连接池的maxStatements=0设置为0,否则当主机宕机后,连接池将无法在备机上找到对应的Statement而报错。
Connector/J除了FailOver还支持Load Balancing(多主)和Master/Slave Replication(不支持Master宕机后,Slave读写)