日期:2014-05-16  浏览次数:20764 次

mysql replication driver 在jdk1.6下失效问题解决

mysql diver包里有relication driver,可以在jdbc层进行读写分离,主写从读?
默认的配置方式是指定driver为ReplicationDriver,并改写jdbc url?

Java代码??收藏代码
  1. jdbc.driverClassName=com.mysql.jdbc.ReplicationDriver??
  2. jdbc.url=jdbc:mysql://192.168.1.23:3306,192.168.1.252:3306/my_db?useUnicode=true??
ref.mysql doc?
但是在jdk1.6(win)下,这个配置不生效。升级driver jar依旧如此,最后只好debug connect过程,发现datasource的driver加载过程并不是直接用定义的driverClass去forName加载直接建立连接,而是分两个步骤:?
Java代码??收藏代码
  1. ensureDriverLoaded();?//确认是否加载driver,否则forName加载??
  2. nnection?out?=?driver().connect(?jdbcUrl,?overrideProps(username,?password)?);?//从已加载的drivers列表中取得能parseUrl的driver,并建立连接???